Linux default ulimit -n is 1024 which is not enough.
Note that this is not the case for https://github.com/romanz/electrs, see https://github.com/Blockstream/electrs/blob/new-index/src%2Fnew_index%2Fdb.rs#L88C69-L88C76
I'm running it with systemd and adding LimitNOFILE=4096 to [SERVICE] section of systemd service file seem to help, based on the link above 100000 will be more reliable.
Alternatively user needs to execute ulimit -n 100000 before start