db.log
Lock table is out of available locker entries
This error is because each wallet.dat file is opened in the same BDB environment. The entire environment has a limited number of database locks, and it seems like 333 wallets hits that number of database locks. Of course, if you are actually receiving transactions, I think you will run into more problems even with 332 wallets since database locks are required in order to write data to the wallets.
Any way to workaround this?

In the Bitcoin Core data directory, create a file named
DB_CONFIG. Put the following lines in that file:
set_lk_max_locks 400000
set_lk_max_objects 400000
That will increase the number of available locks by tenfold (was 40000, no 400000) which will let you open 10 times more wallets (assuming you have enough memory), in theory. Once you run out of locks again, just keep increasing those two numbers.