Teodor Sigaev <[EMAIL PROTECTED]> writes: > While I'm running test with concurrent > select/insert/update/delete/vacuum/vacuum full I found, that sometimes > postgres crashes in index_beginscan_internal on FunctionCall3, because > structure 'procedure' becomes zeroed. As I understand, LockRelation > can invalidate part of Relation structure. So, I moved > GET_REL_PROCEDURE after LockRelation.
Oooh, good catch. > It seems to me, this patch > should be backpatched or it's needed another fixing. No, it's not an issue in the back branches, because until recently GET_REL_PROCEDURE only fetched the function OID. > And there is one more problem: it caused approximatly one time per 2-4 > million > statements, I got traps: > TRAP: FailedAssertion("!((*curpage)->offsets_used == num_tuples)", File: > "vacuum.c", Line: 2766) > LOG: server process (PID 15847) was terminated by signal 6 Odd. Will look at it later (after feature freeze), if you don't find the cause beforehand. regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 9: In versions below 8.0, the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match