If a tdb_modify store is attempted. The database first
attempts to replace the original record, this fails if
the new record is too big. And the database should then
try a delete/create of the old/new record.
However modify will not do this second step if there
is ERR_NOEXIST, as modify does not create new entries,
only modifies old ones. All ok so far.
But the database doesnt clear the error flag before
the update attempt. If it is set to ERR_NOEXIST from
beforehand, and you do a modify call that fails the
update, it will not attempt the delete/create method of
storing, as it erroneously thinks the record doesnt
exist (thanks to our spurious left over ERR_NOEXIST).
Hope this is clear, the patch should be clearer.
Its a one line fix. Thank by the way, for you excellant