dbTalk Databases Forums  

[BUGS] BUG #2033: Assertion Failure: File: "procarray.c", Line: 492

mailing.database.pgsql-bugs mailing.database.pgsql-bugs


Discuss [BUGS] BUG #2033: Assertion Failure: File: "procarray.c", Line: 492 in the mailing.database.pgsql-bugs forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
Joel Stevenson
 
Posts: n/a

Default [BUGS] BUG #2033: Assertion Failure: File: "procarray.c", Line: 492 - 11-09-2005 , 09:20 AM







The following bug has been logged online:

Bug reference: 2033
Logged by: Joel Stevenson
Email address: joelstevenson (AT) mac (DOT) com
PostgreSQL version: 8.1.0
Operating system: RHEL 3 update 6
Description: Assertion Failure: File: "procarray.c", Line: 492
Details:

Hi,

I'm running into an Assertion failure this morning w/8.1.0. I believe it is
related to using the NOWAIT flag. Here is the log message:

TRAP: FailedAssertion("!(serializable ? !((MyProc->xmin) != ((TransactionId)
0))
: ((MyProc->xmin) != ((TransactionId) 0)))", File: "procarray.c", Line:
492)


Postgres was configured using both --enable-debug and --enable-cassert.
Full config options were:

../configure CFLAGS=-O2 -pipe --with-perl --with-openssl
--enable-thread-safety --enable-debug --enable-cassert
--with-includes=/usr/kerberos/include

Some non-default postgresql.conf params:
max_connections = 150
ssl = on
shared_buffers = 4000
work_mem = 102400
maintenance_work_mem = 131072
max_stack_depth = 4096
commit_delay = 100
checkpoint_segments = 5
effective_cache_size = 173015
stats_start_collector = on
stats_command_string = on
stats_block_level = on
stats_row_level = on
stats_reset_on_server_start = on
autovacuum = on
autovacuum_analyze_scale_factor = 0.1

I've removed the 'NOWAIT' for the time being, but thought I should mention
the issue.

Thanks,
Joel

---------------------------(end of broadcast)---------------------------
TIP 4: Have you searched our list archives?

http://archives.postgresql.org

Reply With Quote
  #2  
Old   
Tom Lane
 
Posts: n/a

Default Re: [BUGS] BUG #2033: Assertion Failure: File: "procarray.c", Line: 492 - 11-09-2005 , 10:04 AM






"Joel Stevenson" <joelstevenson (AT) mac (DOT) com> writes:
Quote:
I'm running into an Assertion failure this morning w/8.1.0. I believe it is
related to using the NOWAIT flag. Here is the log message:

TRAP: FailedAssertion("!(serializable ? !((MyProc->xmin) != ((TransactionId)
0))
: ((MyProc->xmin) != ((TransactionId) 0)))", File: "procarray.c", Line:
492)
With no stack trace, and no information about how to reproduce the
error, I'm afraid this report is just about useless :-(

regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 1: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to majordomo (AT) postgresql (DOT) org so that your
message can get through to the mailing list cleanly


Reply With Quote
  #3  
Old   
Tom Lane
 
Posts: n/a

Default Re: [BUGS] BUG #2033: Assertion Failure: File: "procarray.c", Line: 492 - 11-09-2005 , 01:32 PM



Joel Stevenson <joelstevenson (AT) mac (DOT) com> writes:
Quote:
This produced a bunch of core files that show the following backtrace:

#0 0x001ea038 in ?? ()
#1 0xbfffa4d8 in ?? ()
#2 0xbfffa5e0 in ?? ()
#3 0xbfffa560 in ?? ()
#4 0x08180844 in ?? ()
#5 0x00000005 in ?? ()
#6 0xbfffa4e0 in ?? ()
#7 0x00000000 in ?? ()

I'm at a loss as to what to do about it, really; is there a hidden
configure flag or something that could be in my environment that's
causing the executable to be stripped?
Nondefault LDFLAGS maybe? Look at the commands that link all the
SUBSYS.o files to produce the postgres executable.

Also, on most Unixen "file /path/to/postgres" will tell the difference
between a stripped and nonstripped executable.

If "file" says that the executable isn't stripped, then the problem is
either with gdb itself or with the way you're invoking it. Could we see
a cut-and-paste of the whole terminal session with gdb, rather than just
the result of the bt part?

regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?

http://www.postgresql.org/docs/faq


Reply With Quote
  #4  
Old   
Tom Lane
 
Posts: n/a

Default Re: [BUGS] BUG #2033: Assertion Failure: File: "procarray.c", Line: 492 - 11-09-2005 , 02:25 PM



Joel Stevenson <joelstevenson (AT) mac (DOT) com> writes:
Quote:
Thanks Tom, and apologies for the confusion; not having worked w/gdb
before I was invoking it incorrectly. Here's what the core file
produced from the assertion failure has for a backtrace:
OK, now that that's straightened out, there are some more things to
look at in the core file. Please try these gdb commands:

p *MyProc
p *SerializableSnapshot
p *CurrentTransactionState

regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 4: Have you searched our list archives?

http://archives.postgresql.org


Reply With Quote
  #5  
Old   
Tom Lane
 
Posts: n/a

Default Re: [BUGS] BUG #2033: Assertion Failure: File: "procarray.c", Line: 492 - 11-09-2005 , 02:55 PM



Joel Stevenson <joelstevenson (AT) mac (DOT) com> writes:
Quote:
(gdb) p *CurrentTransactionState
$3 = {transactionId = 1068154, subTransactionId = 1, name = 0x0,
savepointLevel = 0,
state = TRANS_ABORT, blockState = TBLOCK_ABORT, nestingLevel = 1,
curTransactionContext = 0x9b06a9c, curTransactionOwner = 0x9ab0294,
childXids = 0x0, currentUser = 0, prevXactReadOnly = 0 '\0', parent = 0x0}
Ah-hah, that tells the tale: you're in an already-failed transaction,
and so there are large parts of the backend that Just Won't Work.

What is missing here, I think, is a test in exec_bind_message()
similar to what's in exec_execute_message(): bail out early if the
transaction is aborted and the command in the portal is anything but
ROLLBACK/COMMIT/PREPARE. In this case you are trying to bind to a
portal containing a SELECT statement (the line number in pquery.c proves
this), and since you couldn't Execute that, there seems little need to
let you Bind it.

Kinda surprising this hasn't been reported before; the bug or something
close to it doubtless exists in 7.4 as well.

regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster


Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.