Remove LACOUNT and LACCESSOR and migrate the records immediately.
authorRonnie Sahlberg <ronniesahlberg@gmail.com>
Mon, 29 Nov 2010 02:07:59 +0000 (13:07 +1100)
committerRonnie Sahlberg <ronniesahlberg@gmail.com>
Thu, 17 Feb 2011 23:08:32 +0000 (10:08 +1100)
commitb57bd0f896423e577937a3e5f3b3c8c99f011053
treed34cd1c67c643d26d0aea393a0835c28b00dc127
parent0aa2282c9c26c87e55db6f9df435d5d932f2cbd1
Remove LACOUNT and LACCESSOR and migrate the records immediately.

This concept didnt work out and it is really just as expensive as a full migration
anyway, without the benefit of caching the data for subsequence accesses.

Now, migrate the records immediately on first access.
This will be combined with a "cheap vacuum-lite" for special empty records to
prevent growth of databases.

Later extensions to mimic read-only behaviour of records will include proper shared read-only locking of database records, making the laccessor/lacount read-only access to the data obsolete anyway.

By removing this special case and handling of lacount laccessor makes the codapath where shared read-only locking will be be implemented simpler, and frees up space in the ctdb_ltdb header for use by vacuuming flags as well as read-only locking flags.

(This used to be ctdb commit 155dd1f4885fe142c6f8bd09430f65daf8a17e51)
ctdb/client/ctdb_client.c
ctdb/common/ctdb_ltdb.c
ctdb/include/ctdb_client.h
ctdb/include/ctdb_private.h
ctdb/include/ctdb_protocol.h
ctdb/server/ctdb_call.c
ctdb/server/ctdb_tunables.c