Looks like we're getting new project - CC for GiST. For a long time we planned to implement Concurrency Control for GiST, but real life is rather complex life. GiST with CC support will move all our GiST based modules to commercial level !

I have some conception what we need for CC and already found papers by Marcel Kornacker, Kaushik Chakrabarti and, of course, Lehman and Yao.

We'd need:

  • extend GiST interface (see papers of Aoki, Kornacker)
  • choose CC model (locking, granular locking, predicate locking, or may be optimistic ?)
  • implementing Recovery (WAL ? Ask Vadim about that)
  • writing test bed (does postgres already has something for testing concurrency (b-tree) ?
  • writing documentation :)