Hi Dan, with respect to version management in MVStore, there are significant differences between 1.4.197 release and trunk, that’s why I would recommend to check out latest code. Number of versions kept in a file-based store is determined by usage. In absense of registerVersionUsage() / deregisterVersionUsage() calls, only latest version will be kept. This is only safe to do in a single-threaded scenario without auto-commit. Once you have more than one thread (including background auto-commit one), “current” version may be not what you think it is, and your operation, i.e. map iteration via cursor, may fail due to the fact that version it was iterating on, has been removed. That is why interest in specific version (and coincidentally all subsequent ones) should be expressed via registerVersionUsage(). In addition, time-based policy may be used with setRetentionTime(), but it never be 100% reliable, and mainly exists for usage simplicity and backward compatibility. You may call compactMoveChunks() if you want, but that not strictly necessary, because space occupied by unused versions will be eventually re-used.
-- You received this message because you are subscribed to the Google Groups "H2 Database" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/h2-database. For more options, visit https://groups.google.com/d/optout.
