I'm finishing up my migration to Postgres, and i noticed some odd behavior

I was hoping that someone could point me in the right direction:

a - i often lose a connection to the server for an apache child. i can't seem to trace when where or why this happens i just get this in the log "DBD::Pg::st execute failed: no connection to the server" the other children are unaffected. i'm wondering if this is a ping error, postgres shutting things down from too many invalid queries (i'm still on my dev box) , or something else

b- several times a handle seems to have been corrupted. usually it seems to happen with a failed sequence operation ( adding a new record or retreiving a value ) when this happens, the handle seems to not be reset by the cleanup handler ( ie - the automagic Apache::DBI issued rollback ). i have to restart the server to clean the handle
        has this happened to anyone else?

c- i was getting a bunch of "message type 0x49 arrived from server while idle" -> "message type 0x53 arrived from server while idle" looking on the net, i wasn't able to find much about it. a lot of people had the issue on the perl DB lists, the Postgres lists, but there was no mention of what caused it.
        Then I finally came across somethig from the bricolage changelog:
                http://bricolage.sourceforge.net/docs/Bric/Changes.html
Removed queries added in 1.7.2 that were running at Bricolage startup time. They could cause DBI to cache a database handle and return it after Apache forks, leading to strange errors such as ``message type 0x49 arrived from server while idle'', and occaisionally a frozen server. [David]

It turns out that I had a handle that was cached by accident ( i hadn't made a config only user yet, and the config handle was connecting with the same params as my writing handle). Chances are , thats probably the issue. But does anyone know if there is a definitive cause for this?

Thanks.
Jonathan

Reply via email to