[performance] Removing collection with many docs/subcollections results in huge recovery log, because the list of freed collection/doc IDs is updated continuously and written to disk. Solution: keep list of unused collection/doc IDs in memory only to reduce IO. The downside is that those lists will get lost if the db is restarted, so some spare IDs might not be reused. This trade off seems acceptable though. Having some gaps in the assigned IDs is ok.