Execute and PortalSuspended needs explicit transaction to work?
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi all,
I'm playing with Execute messages with a non-zero max number of rows so
that I can get some PortalSuspended messages on Npgsql.
After some testing, I could send an Execute message with 2 as the manx
number of rows. After the second execute I get the following:
portal "" does not exist
Severity: ERROR
Code: 34000
I noticed that I could only get it working if I explicitly create a
transaction.
I thought it could be some Sync() messages I was sending after the first
execute, but when I removed them, I still get the problems.
Is this by design? I mean, do I need to have an explicit transaction to
get multiple executes work when getting portalsuspended messages? Or am
I missing something?
Thanks in advance.
- --
Regards,
Francisco Figueiredo Jr.
Membro Fundador do Projeto MonoBrasil - MonoBrasil Project Founder Member
http://monobrasil.softwarelivre.org
- -------------
"Science without religion is lame;
religion without science is blind."
~ ~ Albert Einstein
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
iQEVAwUBQiPOIP7iFmsNzeXfAQKGEAgAgCoF0BhPXXaS/T2Wa97T1SD90N1hWs6j
DEfcfS2poXp+lLB64oLi1Q9gZAtzpHqDpYYsM5UA1JBtIE4X5ljOgtyKDdXhQVbM
hn0rtRGYE7TLFSowVvODsu7qrchbAQVcE+rlKd91QmO9S7ibXxXaE//xAjGKvSng
h4au7Id+dhZhjTJATFHBURV8IzJg3xK2/Kxg4BwY5p0yyUlBp+cHEv5ANBdvO1ms
QVQt5QnUHobeIFfAVZvh466n36I8UhvMVaFfCxnzgPiGv2t9fnKBUEcGJrwMghm0
emx0O3Xni6xWBdW3R/aHo+XoARfwdNiW89fm2YKxWPjGzqTZHjfjng==
=C5uE
-----END PGP SIGNATURE-----
Francisco Figueiredo Jr. wrote:
After some testing, I could send an Execute message with 2 as the manx
number of rows. After the second execute I get the following:portal "" does not exist
Severity: ERROR
Code: 34000I noticed that I could only get it working if I explicitly create a
transaction.I thought it could be some Sync() messages I was sending after the first
execute, but when I removed them, I still get the problems.
If you're sending any Sync messages at all between the two Executes, it
will indeed cause problems as Sync causes any implicitly-opened
transaction to be closed, which will in turn invalidate any non-holdable
portals.
Do you have a trace of all the messages sent?
-O
--- Oliver Jowett <oliver@opencloud.com> escreveu:
Francisco Figueiredo Jr. wrote:
After some testing, I could send an Execute message with 2 as the manx
number of rows. After the second execute I get the following:portal "" does not exist
Severity: ERROR
Code: 34000I noticed that I could only get it working if I explicitly create a
transaction.I thought it could be some Sync() messages I was sending after the first
execute, but when I removed them, I still get the problems.If you're sending any Sync messages at all between the two Executes, it
will indeed cause problems as Sync causes any implicitly-opened
transaction to be closed, which will in turn invalidate any non-holdable
portals.
Ok.
The strange part to me is that even after removing the sync calls, I still got
the problem :(
Do you have a trace of all the messages sent?
I'm not at my devel box right now, but when I get home I will send you.
Thanks in advance, Oliver.
Regards,
Francisco Figueiredo Jr.
_______________________________________________________
Yahoo! Acesso Gr�tis - Instale o discador do Yahoo! agora. http://br.acesso.yahoo.com/ - Internet r�pida e gr�tis
Oliver Jowett wrote:
Francisco Figueiredo Jr. wrote:
After some testing, I could send an Execute message with 2 as the manx
number of rows. After the second execute I get the following:portal "" does not exist
Severity: ERROR
Code: 34000I noticed that I could only get it working if I explicitly create a
transaction.I thought it could be some Sync() messages I was sending after the first
execute, but when I removed them, I still get the problems.If you're sending any Sync messages at all between the two Executes, it
will indeed cause problems as Sync causes any implicitly-opened
transaction to be closed, which will in turn invalidate any non-holdable
portals.Do you have a trace of all the messages sent?
-O
Hi Oliver.
Sorry for late response.
I have this sequence of calls from my client app:
Parse
Bind
Execute passing 2 as max rows.
And later a second Execute passing 2 as max rows.
Is there some flag or opt I can pass to postmaster so that it could log
the messages received?
On this second execute I get the error I told you. If I use an explicit
transaction, it works.
Thanks in advance.
--
Regards,
Francisco Figueiredo Jr.
Membro Fundador do Projeto MonoBrasil - MonoBrasil Project Founder Member
http://monobrasil.softwarelivre.org
-------------
"Science without religion is lame;
religion without science is blind."
~ Albert Einstein