Ok, I already realized WAL in GiST and tested with online backup. It works.
Now I need test it on recovery after crash (power loss etc) and there is a
problem in GiST with incompleted inserts, I hope, I resolved it, but this
problem, I think, has the same nature as incompleted splits in btree code. For
solving, btree xlog code uses stack of incompleted splits and if they leaves
incompleted, btree_xlog_cleanup function completes them. I make use similar
idea, but I can't reproduce situation when xlog_cleanup makes some useful work
except just looks at void stack. So question: how is it possible to reproduce
desired behaviour?
I tried to kill(getpid(), SIGKILL) in a middle of insertion (inside gist.c), but
postgres doesn't try ro restore aborted transaction....
Thank you.
--
Teodor Sigaev E-mail: [EMAIL PROTECTED]
WWW: http://www.sigaev.ru/
---------------------------(end of broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]