> LPP> What can I do about it with the new Postmodern code? > > hmm, iirc this error was addressed in executor-exec-prepared in pm-sql.lisp, > but you moved it into pm-transaction.lisp to restart txn in case of this > error, right?
Yes. > and then i've removed it when merging, sorry.. > > if so, add it into into pm-transaction.lisp: > > (defmacro with-concurrency-errors-handler > ... > (when (or (string= err-code "40001") ; SERIALIZATION FAILURE > (string= err-code "40P01")); DEADLOCK DETECTED > > and add "42P05" there. Ah yeah, got it. > but are you sure that restarting txn in this case is right, and when such > stuff happens at all? Heh, if you ask me the best solution would be if Postgres just shut up about it without affecting the txn. But alas, this isn't the case. I have also tried deallocating the statement in question before invoking the restart but it seems that any execution of SQL at this time will hang indefinitely. Do you have any idea why this would happen? > because it didn't happen frequently for me, and i don't have good > understanding what's happening with these prepareds, honestly. Me neither. Unfortunately this also seems to be one of the famous errors that occur every once in a while and don't show their cause. For example, it's now gone again here... Leslie _______________________________________________ elephant-devel site list elephant-devel@common-lisp.net http://common-lisp.net/mailman/listinfo/elephant-devel