Olivier Galibert <galibert(a)pobox.com> writes:
> BTW, I notice that the hash-tables are "reorganized"
after the
> undumping. Why is that?
Because the default method for computing hashes for lrecords is
using the pointer itself. Since the pointers change, the hash
values change and the position of the objects in the hash table has
to change. Otherwise reads in the hash table fail randomly.
Then why store the hash-tables at all? You could just store a
hash-table's properties (weakness, hash function, etc.) and a list of
key-value pairs. After dumping, it is trivial to re-create the
hash-table -- see e.g. hash_table_instantiate().
Or, am I mistaken in thinking that creating a new hash-table from
scratch is healthier and faster than "reorganizing" an existing one?