17.01.2017 8:16, Dmitry Yemanov wrote:
> Transaction creates a new format, stores some records using this new
> format, then the server dies. After restart, changes in
> RDB$FORMATS/RDB$RELATIONS are occasionally backed out. Then it could be
> impossible to garbage collect the new record versions due to their
> format being unknown.

   Yep. That's unpleasant case. I see two ways to solve it:
1) Put some flag "never GC except sweep" on RDB$FORMATS and make sweep to sweep 
system 
tables after user ones;
2) As Jim suggested several times, make record format self-describing and get 
rid of 
RDB$FORMATS completely.


-- 
   WBR, SD.

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to