I’m sure there is a physical limit but I have no idea what it is. From my perspective, it doesn’t matter what that limit might be because humans typically suffer from some degree of choice paralysis when the options exceed seven items.
Whenever you have hundreds or thousands of anything, you are describing a list that is best managed in a database. The better approach would be to use a linking process where you simply allow the user to chose which of the 10,000 records to link to a given record. Building a “multi-select” list in a separate table would be considered a usual and customary approach to your solution.