Alvaro Herrera wrote:
I'm not 100% sure what you are saying here, but if it is what I believe, then you didn't copy the newly compiled executable into the production machine; that won't work. You need to use a debug-enabled executable both to produce the core file, and to pass to GDB for inspection.
This is correct, I did not copy the executable to the production machine. I suspect I'll be copying the binary over to the production system.
I moved the core file to the development machine where I built the new binaries. Ran gdb against this core file and the postgres binary on this machine. The core was not generated on the development machine.
On the other hand, if you can reproduce the failure on the development machine, that core file would serve just fine. (You'd only need to copy the tables and relevant data from production to said machine).
I have not had any success in duplicating the failure on my development environment. I suspect it's because I can't generate the volume of users. The production system could well have 150-200 users at one time and we get a core file generated about 3-4 times a week, generally on the busiest days.
-- Until later, Geoffrey Those who would give up essential Liberty, to purchase a little temporary Safety, deserve neither Liberty nor Safety. - Benjamin Franklin