Subject | Firebird terminates abnormally (1), part 2 |
---|---|
Author | precari0 |
Post date | 2005-05-23T15:41:16Z |
Hello!
I finally managed to capture my server's network traffic at the
moment firebird crashes.
Now I'm having a real hard time figuring it out. Maybe you can help
me.
btw, is there any document explaining FB's wire protocol?
Using Ethereal, I captured traffic on ports 3050 and 3051.
Here are my findings so far:
The very last packet before the crash is (acording to Ethereal)
a "free statement (opcode 67)".
Ethereal has an Interbase dissector that shows every packet as Opcode
+ Data.
Can I trust it? I mean, for example, is there an opcode 67 and does
it really mean "free statement"?
Is Opcode really 4 bytes long?
I assume yes.
This packet's Data is:
00 00 00 03 00 00 00 01
What does this data mean?
How can I link it to earlier packets?
Before this packet, there are a lot of "execute", "set
cursor", "fetch" and some other "free statement" and "que event".
I am not really sure where to look at.
Do you have any idea how can I put all this information together?
How could a "free statement" crash the server?
If you'd like to have a look at all this I can post the capture file
and point you to the crash moment.
Thanks in advance,
Douglas Heron Tosi
CTVoicer Soluções para CallCenter
douglas em ctvoicer com br
41 21039300
41 99219950
I finally managed to capture my server's network traffic at the
moment firebird crashes.
Now I'm having a real hard time figuring it out. Maybe you can help
me.
btw, is there any document explaining FB's wire protocol?
Using Ethereal, I captured traffic on ports 3050 and 3051.
Here are my findings so far:
The very last packet before the crash is (acording to Ethereal)
a "free statement (opcode 67)".
Ethereal has an Interbase dissector that shows every packet as Opcode
+ Data.
Can I trust it? I mean, for example, is there an opcode 67 and does
it really mean "free statement"?
Is Opcode really 4 bytes long?
I assume yes.
This packet's Data is:
00 00 00 03 00 00 00 01
What does this data mean?
How can I link it to earlier packets?
Before this packet, there are a lot of "execute", "set
cursor", "fetch" and some other "free statement" and "que event".
I am not really sure where to look at.
Do you have any idea how can I put all this information together?
How could a "free statement" crash the server?
If you'd like to have a look at all this I can post the capture file
and point you to the crash moment.
Thanks in advance,
Douglas Heron Tosi
CTVoicer Soluções para CallCenter
douglas em ctvoicer com br
41 21039300
41 99219950