Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
all
-
Linux
Description
While attempting to do an svn merge URL URL over ra_local, the process ran out of memory. The machine in question has 1GB RAM & 1GB of swap. I added on an additional 2GB of swap to extend the total memory to 4GB, and reran the svn merge. It still died after using 2GB, but it got further in the process. My guess is that I need to recompile with HIGHMEM in order to allow a process access to more than 2GB of memory? Watching the memory footprint and strace as the merge was occuring, I noticed that there are some slow leaks in the merge code (maybe 100KB per file, but nothing substantial). But everytime I saw an add operation (i.e. A dir1/dir2/file.ext), another connection to DB was opened consuming an additional 100MB of ram and the connection wasn't closed. After maybe 50 add operations, the footprint was at 2GB of space and svn exitied with the following error. svn: Couldn't open a repository. svn: Unable to open an ra_local session to URL svn: Unable to open repository file:///svnroot/uw/branch/uw2110/IpDrv/Classes/MasterServerGameStats.uc svn: Berkeley DB error svn: Berkeley DB error while opening environment for filesystem /svnroot/uw/db: Cannot allocate memory
Original issue reported by azverkan