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

Message "Incorrect parameters provided to internal function INF_transaction_info Invalid token" is reported when trying to commit 2PC transaction [CORE4951] #5242

Closed
firebird-automations opened this issue Oct 3, 2015 · 12 comments

Comments

@firebird-automations
Copy link
Collaborator

Submitted by: @pavel-zotov

This message can`t be obtained on ISQL, I've got it when attempted to start 'master-slave' replication from 3.0 to 2.5.
Software = IBPhoenix Replicator, both hosts have Windows 64 bit.
Both databases (source and target) have property 'use 2 phase commit' = True.
Attempt to start replication lead to:

10/02/15 20:05:14: ******************* Start Replication ********************
Replicate repl_temp30_temp25, source.30.temp -> target.25.temp
10/02/15 20:05:14: Connected to DB: < source database on FB 3.0 >
10/02/15 20:05:14: Connected to DB: < target database on FB 2.5.4 >
ERROR !!! Firebird commit failed - databases are out of sync
10/02/15 20:05:14: Error (id "TFBDB::CT") happen during execution of schema repl_temp30_temp25 (source.30.temp -> target.25.temp)
Incorrect parameters provided to internal function INF_transaction_info
Invalid token
10/02/15 20:05:14: Disconnected from DB: < target database on FB 2.5.4 >
10/02/15 20:05:14: Disconnected from DB: < source database on FB 3.0 >
TOTAL STATISTICS:
0 Hours, 0 Minutes, 0.000 Seconds
Errors : 1
10/02/15 20:05:14: ***************** Replication Finished *******************

Trace (with log_errors = true) does not show any exception in its log.

Commits: 530e5e9 FirebirdSQL/fbt-repository@39b9b16

====== Test Details ======

Can`t making connect at the same time to 2.5 and 3.0 instances using current test engine.

@firebird-automations
Copy link
Collaborator Author

Commented by: @dyemanov

fb_info_tra_dbpath parameter for isc_transaction_info() is a new v3 feature, it's not supported in prior FB versions. So this is expected and not a bug.

@firebird-automations
Copy link
Collaborator Author

Commented by: @pavel-zotov

Am I correct that 2pc is gone when we talk about transactions between servers 3.0<--->2.5 (or 3.0 <--- 3.0) ?

@firebird-automations
Copy link
Collaborator Author

Commented by: @dyemanov

Ask Dimitry Sibiryakov about that.

@firebird-automations
Copy link
Collaborator Author

Commented by: @aafemt

What he should ask me? I do nothing but call isc_commit_transaction() and I have no idea why you call isc_transaction_info() with fb_info_tra_dbpath inside of it.

@firebird-automations
Copy link
Collaborator Author

Modified by: @aafemt

summary: Message "Incorrect parameters provided to internal function INF_transaction_info Invalid token" is reported when trying to run 2PC transaction => Message "Incorrect parameters provided to internal function INF_transaction_info Invalid token" is reported when trying to commit 2PC transaction

@firebird-automations
Copy link
Collaborator Author

Commented by: @dyemanov

It really seems that v3 fbclient cannot work with older FB servers using 2PC. Sigh. Maybe Alex or Vlad (whoever did that change) will comment.

@firebird-automations
Copy link
Collaborator Author

Modified by: @AlexPeshkoff

assignee: Alexander Peshkov [ alexpeshkoff ]

@firebird-automations
Copy link
Collaborator Author

Modified by: @AlexPeshkoff

status: Open [ 1 ] => Open [ 1 ]

Fix Version: 3.0.0 [ 10048 ]

@firebird-automations
Copy link
Collaborator Author

Commented by: @AlexPeshkoff

fb_info_tra_dbpath has nothing to do with this problem. It (as designed) does not get out of FB3 yvalve or remote provider. The reason was too big buffer (2.5 is using SSHORT for it's length) and missing isc_info_end in the end of info items.

@firebird-automations
Copy link
Collaborator Author

Modified by: @AlexPeshkoff

status: Open [ 1 ] => Resolved [ 5 ]

resolution: Fixed [ 1 ]

Fix Version: 3.0 RC 1 [ 10584 ]

Fix Version: 3.0.0 [ 10048 ] =>

@firebird-automations
Copy link
Collaborator Author

Modified by: @pavel-zotov

status: Resolved [ 5 ] => Resolved [ 5 ]

QA Status: No test => Cannot be tested

Test Details: Can`t making connect at the same time to 2.5 and 3.0 instances using current test engine.

@firebird-automations
Copy link
Collaborator Author

Modified by: @pavel-zotov

status: Resolved [ 5 ] => Closed [ 6 ]

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

2 participants