Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

isc_dsql_allocate_statement and isc_start_transaction crash when server doesn't exist anymore [CORE974] #1378

Open
firebird-automations opened this issue Oct 24, 2006 · 1 comment

Comments

@firebird-automations
Copy link
Collaborator

Submitted by: Anders Larsen (alarsen)

When I shut down my server while my application is running, calls to isc_dsql_allocate_statement or isc_start_transaction crash (see backtrace below). I gdb'ed through isql and saw that isc_dsql_prepare returns a propper error instead. Could the functions mentioned above handle server disconnects more gracefully?

Program received signal SIGPIPE, Broken pipe.
[Switching to Thread -1224230720 (LWP 27610)]
0xffffe410 in __kernel_vsyscall ()
Current language: auto; currently c
(gdb) bt
#⁠0 0xffffe410 in __kernel_vsyscall ()
#⁠1 0xb72d8781 in send () from /lib/libpthread.so.0
#⁠2 0xb6bfd013 in packet_send (port=0x81dad1c, buffer=0x81dcdf4 "", buffer_length=8)
at /home/harald/src/firebird/firebird2/src/remote/inet.cpp:3651
#⁠3 0xb6bfcc85 in inet_write (xdrs=0x81dadac, end_flag=1)
at /home/harald/src/firebird/firebird2/src/remote/inet.cpp:3343
#⁠4 0xb6bfc22e in xdrinet_endofrecord (xdrs=0x81dadac, flushnow=1)
at /home/harald/src/firebird/firebird2/src/remote/inet.cpp:2834
#⁠5 0xb6bfc162 in send_full (port=0x81dad1c, packet=0x81d9d74)
at /home/harald/src/firebird/firebird2/src/remote/inet.cpp:2763
#⁠6 0xb6b17f1b in port::send (this=0x81dad1c, pckt=0x81d9d74)
at /home/harald/src/firebird/firebird2/src/remote/remote.cpp:817
#⁠7 0xb6b16403 in send_packet (port=0x81dad1c, packet=0x81d9d74, user_status=0x8108618)
at /home/harald/src/firebird/firebird2/src/remote/interface.cpp:6999
#⁠8 0xb6b16188 in send_and_receive (rdb=0x81d9d50, packet=0x81d9d74, user_status=0x8108618)
at /home/harald/src/firebird/firebird2/src/remote/interface.cpp:6846
#⁠9 0xb6b0d6f5 in REM_allocate_statement (user_status=0x8108618, db_handle=0x81d9af4,
stmt_handle=0x8108670) at /home/harald/src/firebird/firebird2/src/remote/interface.cpp:1281
#⁠10 0xb6a7e997 in isc_dsql_allocate_statement (user_status=0x8108618, db_handle=0x8108674,
stmt_handle=0x8108670) at /home/harald/src/firebird/firebird2/src/jrd/why.cpp:1911
#⁠11 0xb6a7e88b in isc_dsql_alloc_statement2 (user_status=0x8108618, db_handle=0x8108674,
stmt_handle=0x8108670) at /home/harald/src/firebird/firebird2/src/jrd/why.cpp:1867

@firebird-automations
Copy link
Collaborator Author

Modified by: @pcisar

Workflow: jira [ 11279 ] => Firebird [ 15363 ]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant