Hello everybody. I would like to know if there would be any interest of including a "disk-backed map" into the commons-collections? The problem statement for it would be:
- while we are moving to 64bit, it will still take a couple of years until all hardware is 64 bit and more importantly, all software (or at least the OS + JVM running on it) are 64 bit. In the meantime you can easily run out of memory space, even though you physically would have enough memory and you would accept some swapping (rather than the process dying with OOM). I had such an issue with running PMD CPD on a larger codebase (2+ million LOC). The solution: - a Map which keeps its keys in memory but writes the values to disk (to a temporary file, marked deleteOnExit). It also keeps WeakRefs to the values. When a request comes in for a value, it tries to satisfy it using the weakref, and if it fails, it reads it back from the temporary file. This would be efficient for a mostly read-intensive application (it does not try to efficiently handle the situations when there are many removes/updates to the file). Would you be interested in including this solution in the framework? Best regards (and happy holidays), Attila