Hi, I don't see why they need to be held as fields on the TarReader or cached at all, as they're only used in debugging and such. And they're pretty fast to compute too.
- Andrei On Tue, Apr 7, 2015 at 2:17 PM Michael Dürig <[email protected]> wrote: > > Thanks for reporting, good find! Without looking at the patch, we should > probably just cache those pre computed tar graphs as long as there is > enough memory. > > Michael > > On 7.4.15 2:12 , Andrei Dulvac wrote: > > Hi guys, > > > > I created OAK-2723 to track an issue regarding FileStore. > > > > I tried running the tar compaction via oak-run, but I had a HeapSpace > > exception immediately when trying to instantiate the object, with 6GB of > > allocated memory: > > > > FileStore store = new FileStore(directory, 256, > TAR_STORAGE_MEMORY_MAPPED); > > > > There's an unnecessary reference to all the precomputed "tar graphs" in > > TarReader, which causes this issue, for what I consider "a realistic" > repo > > size - 350GB. > > > > Can somebody pick this up and review? I tested it only in the context of > > oak-run compaction. > > > > Thank you! > > - Andrei > > >
