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

While executing more than 2 queries in single transaction giving MSG: internal SAVEPOINT failed #31

Open
ajayn249 opened this issue Jul 8, 2024 · 2 comments

Comments

@ajayn249
Copy link

ajayn249 commented Jul 8, 2024

1865:[7f750f6af500]statement.[ParseAndDescribeWithLibpq]2948: entering plan_name=_PLAN0x243f340 query=SAVEPOINT PIPECMD
1868:[7f750f6af500]statement.[ParseWithLibpq]2809: entering plan_name=_PLAN0x243f340 query=SAVEPOINT PIPECMD
1912:[7f750f6af500]connection[CC_send_query_append]1809: conn=0x24253d0, query='DEALLOCATE "_PLAN0x243f340"'
1969:[7f750f6af500]connection[CC_send_query_append]1809: conn=0x24253d0, query='SAVEPOINT _EXEC_SVP_0x24253d0'
1995:[7f750f6af500]statement.[ParseAndDescribeWithLibpq]2948: entering plan_name=_PLAN0x243f340 query=select count() from carrier
1998:[7f750f6af500]statement.[ParseWithLibpq]2809: entering plan_name=_PLAN0x243f340 query=select count() from carrier
2051:[7f750f6af500]connection[CC_send_query_append]1809: conn=0x24253d0, query='DEALLOCATE "_PLAN0x243f340"'
2118:[7f750f6af500]statement.[ParseAndDescribeWithLibpq]2948: entering plan_name=_PLAN0x243f340 query=ROLLBACK TO PIPECMD
2121:[7f750f6af500]statement.[ParseWithLibpq]2809: entering plan_name=_PLAN0x243f340 query=ROLLBACK TO PIPECMD
2165:[7f750f6af500]connection[CC_send_query_append]1809: conn=0x24253d0, query='DEALLOCATE "_PLAN0x243f340"'
2231:[7f750f6af500]statement.[ParseAndDescribeWithLibpq]2948: entering plan_name=_PLAN0x243f340 query=RELEASE SAVEPOINT PIPECMD
2234:[7f750f6af500]statement.[ParseWithLibpq]2809: entering plan_name=_PLAN0x243f340 query=RELEASE SAVEPOINT PIPECMD
2278:[7f750f6af500]connection[CC_send_query_append]1809: conn=0x24253d0, query='DEALLOCATE "_PLAN0x243f340"'
2343:[7f750f6af500]statement.[ParseAndDescribeWithLibpq]2948: entering plan_name=_PLAN0x243f340 query=SAVEPOINT PIPECMD
2346:[7f750f6af500]statement.[ParseWithLibpq]2809: entering plan_name=_PLAN0x243f340 query=SAVEPOINT PIPECMD
2390:[7f750f6af500]connection[CC_send_query_append]1809: conn=0x24253d0, query='DEALLOCATE "_PLAN0x243f340"'
2447:[7f750f6af500]connection[CC_send_query_append]1809: conn=0x24253d0, query='RELEASE _EXEC_SVP_0x24253d0;SAVEPOINT _EXEC_SVP_0x24253d0'
2467:[7f750f6af500]connection[CC_send_query_append]1809: conn=0x24253d0, query='ROLLBACK'
2548:[7f750f6af500]connection[CC_send_query_append]1809: conn=0x24253d0, query='BEGIN
2572:[7f750f6af500]statement.[ParseAndDescribeWithLibpq]2948: entering plan_name=_PLAN0x243f340 query=ROLLBACK TO PIPECMD
2575:[7f750f6af500]statement.[ParseWithLibpq]2809: entering plan_name=_PLAN0x243f340 query=ROLLBACK TO PIPECMD

While executing 3rd query 'RELEASE _EXEC_SVP_0x24253d0;SAVEPOINT _EXEC_SVP_0x24253d0' is coming and letting it to ROLLBACK and because of this SAVEPOINT _EXEC_SVP_0x24253d0 is giving error for MSG: internal SAVEPOINT failed.

In code i have observed in file execute.c #ifdef _RELEASE_INTERNAL_SAVEPOINT is defined which is actually responsible for
RELEASE _EXEC_SVP_0x24253d0 command to execute. Macro is defined in connection.h file. If i dont want to use RELEASE query or undefined that macro how i can do that.????
Is there any alternative way i can avoid this.

@davecramer
Copy link
Contributor

What is the code you are trying to execute ?

@ajayn249
Copy link
Author

ajayn249 commented Jul 10, 2024

TestBaseMain.txt

This is the code where we are simply creating
savepoint
executing query
rolling back

savepoint
executing query
rolling back

savepoint
executing query
rolling back

Also find the attached logs
mylog_TestBaseMain_ssuser1668331.log
This is odbc logs

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

No branches or pull requests

2 participants