-
Notifications
You must be signed in to change notification settings - Fork 64
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Huge leaks #4
Comments
The code is too complicated for me to see an obvious flaw, and is missing enough that I can't run it, and missing enough detail in the comments to reconstruct the missing parts, which makes it difficult to be of much help. If you can reproduce the problem with simpler code, it would make it a lot simpler. I will see if I can reproduce a memory leak with similar operations. |
How big is the database, on disk, when this runs out of memory? |
Well, that's the weird part, it's kinda.. random to me. Or i just can't find the pattern here. Sometimes it have 260 MB and sometimes it stops on like 90 MB. The same database takes like 4 GB when i try to build it on LMDB! I will try to create small project to reproduce this. |
I wasn't able to create small project since this whole thing is just POC and project structure is kinda big mess. You can get whole solution and build RocksDbBuilder to reproduce this problem. Links: Solution: https://mega.nz/#!pYMgiB6b!-3me6SnpTWTthmhLpZX14EFCbAlofoPAxzOz6ct6gmw |
@NekroMancer Have you looked at memory usage wiki page? |
@chester89 I looked - honestly RocksDB is pretty overwhelming for me with its all configuration options. And i tried to find answer to the one question that really interests me - is it even possible to setup something like "max heap" for RocksDB instance. But without any luck.. @warrenfalk Sorry, my bad. I updated links |
Indeed there was a memory leak in the .Net wrapper when doing reads (writes were not affected). This has been corrected, now. Sorry it took a while without enough to reproduce, I had tried myself but focused on the puts when the problem was the gets. I agree, RocksDB is overwhelming. It's awesome but the documentation has some catching up to do. |
Awesome news - I wanted to try out rocksdb, but didn't have enough time. 2016-08-24 15:28 GMT+03:00 Warren Falk notifications@github.com:
Yours faithfully, |
I'm not sure if it's C# wrappers fault or RocksDB issue itself.
I started a huge bulk seed for our production database. After running for about 5 hours RocksDB was taking 7,5 GB of RAM. ANTS 8 shows that this memory is
unmanaged memory taken by librocksdb.dll
. Same thing when i leave application working in backgroud. We are doing a lot of random access on database with about 550M keys. Application slowly but progressively is taking all ram on computer. I tried releasing database - helps little bit, but still memory gets "eaten".Seems like sth isn't closing up, i can't really find out what ;/
My (simplified) code of the bulk seed is here:
RocksDBSerializer is here:
I tried this code with WriteBatch, performance is better but leak is still there :(
The text was updated successfully, but these errors were encountered: