Claude Schneegans wrote:
>> Because if they don't overwrite on updates, the position of the
>> record changes. That requires a change in the index too.
>
> I see.
> But are there such databases systems?

Yes.

> I mean, since all records are the same size, what's the big idea not overwriting it on an update?

Better concurrency, writes don't block reads.

Apart from that, are all records the same size? Even CHAR(1) is
not necessarily always the same size in a variable-byte encoding.
Not to mention VARCHAR and TEXT.
And how do you handle a rollback if you have overwritten the
original and then an error occurs? You would have to write the
original to some place else, tag it with the transaction ID of
the updating transaction, and then remove it some time later.
There is overhead in that too.

Jochem
[Todays Threads] [This Message] [Subscription] [Fast Unsubscribe] [User Settings] [Donations and Support]

Reply via email to