Anthony (et al),

Please take this as constructive criticism!....


Your understanding  of dynamic files is, unfortunately, incorrect.
Split/merge is driven by load percentage and is hence dependent on the size
of the file.

As I said, I have never seen any of the UV source code but experiment shows
that UV follows the same general principles adopted by other implementations
of dynamic files (except Udt which does its own thing!).  I have personally
been responsible for one implementation and therefore like to think that I
know what I am talking about here.  Obviously, any hidden tricks inside UV
are beyond my knowledge, I can only comment on the general theory.

There is no "overflow area of roughly 10% of the main space at the end of
the file" in UV's implementation.  The over.30 file is used for all overflow
blocks including large records.  One reason for not using overflow space in
the primary portion of the file is that doing this makes it almost
impossible to restructure the file dynamically without locking the entire
file across splits.

A record lock does not suppress splits and merges.  This is easily
demonstrated and the whole issue of moving locks in the lock table was
something I uncovered by the simple process of locking a record, listing the
locks, adding new records to force a split, and listing the locks again.  As
far as I am aware, the only thing that holds off splits and merges is a
Basic program SELECT operation.

Incidentally, I just tried my experiment of causing a merge when there is a
record lock that will need to be moved to a row of the lock table that is
full.  It all falls over but not in the way exhibited by the original
posting that started this thread.


Martin Phillips
Ladybridge Systems
17b Coldstream Lane, Hardingstone, Northampton NN4 6DB
+44-(0)1604-709200
-------
u2-users mailing list
[EMAIL PROTECTED]
To unsubscribe please visit http://listserver.u2ug.org/

Reply via email to