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