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

request synchronization error when build expression index [CORE4759] #5062

Closed
firebird-issue-importer opened this issue Apr 20, 2015 · 12 comments
Closed

Comments

@firebird-issue-importer

Submitted by: Alexander Muylaert-Gelein (gonline)

Attachments:
FAST.7z

Hi

I'm getting request synchronization error when I'm trying to place an unique index on a database.
I have it reproducible in a database, but I need to attach a zipped fbk of 15mb.

I have it during following ddl statement

CREATE UNIQUE INDEX UNQ_PRC_PR_PRLN_ID ON T_PRICE COMPUTED BY(cast(F_DPK_ID as varchar(20)) || cast(F_PRC_KIND as char(1)) || '|' || coalesce(cast(F_PR_ID as varchar(20)), '$') || '|' || coalesce(cast(F_PRLN_ID as varchar(20)), '$'));

Commits: 12d08e7 ac7194a FirebirdSQL/fbt-repository@d1423cc FirebirdSQL/fbt-repository@6728532

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

Could not reproduce on:
1) official 2.5.3, WI-V2.5.3.26780, issued 03-dec-2014;
2) official 2.5.4, WI-V2.5.4.26856, issued 27-mar-2015.

Both attempts look like this:

isql.exe localhost/3254:C:\FBTESTING\qa\fbt-repo\tmp\FAST\C4759.FDB -ch utf8 -nod
Database: localhost/3254:C:\FBTESTING\qa\fbt-repo\tmp\FAST\C4759.FDB
SQL> show version;
ISQL Version: WI-V2.5.4.26856 Firebird 2.5
Server version:
Firebird/x86/Windows NT (access method), version "WI-V2.5.4.26856 Firebird 2.5"
. . .
SQL> CREATE UNIQUE INDEX UNQ_PRC_PR_PRLN_ID ON T_PRICE COMPUTED BY(cast(F_DPK_ID as varchar(20)) || cast(F_PRC_KIND as char(1)) || '|' || coalesce(cast(F_PR_ID as varchar(20)), '$') || '|' || coalesce(cast(F_PRLN_ID as varchar(20)), '$'));
SQL> -- no error here --
SQL> commit;
SQL> show index UNQ_PRC_PR_PRLN_ID;
UNQ_PRC_PR_PRLN_ID UNIQUE INDEX ON T_PRICE COMPUTED BY (cast(F_DPK_ID as varchar(20)) || cast(F_PRC_KIND as char(1)) || '|' || coalesce(cast(F_PR_ID as varchar(20)), '$') || '|' || coalesce(cast(F_PRLN_ID as varchar(20)), '$'))

According to http://sourceforge.net/p/firebird/code/60824, patch to CORE4671 was committed 2015-mar-04 10:37, so one need to have some 'intermediate' build of FB for reproducing.

BTW: some UDf missing ? Restore finishes with:

gbak: ERROR:function CLEAN_NUMBER is not defined

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Apr 20, 2015

Commented by: Alexander Muylaert-Gelein (gonline)

Restore under 2.5.4, I have a 32-bit under an Windows 7-64 bit machine

Following statement results in an request synchronization error.

CREATE UNIQUE INDEX UNQ_PRC_PR_PRLN_ID ON T_PRICE COMPUTED BY(cast(F_DPK_ID as varchar(20)) || cast(F_PRC_KIND as char(1)) || '|' || coalesce(cast(F_PR_ID as varchar(20)), '$') || '|' || coalesce(cast(F_PRLN_ID as varchar(20)), '$'));

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Apr 20, 2015

Modified by: Alexander Muylaert-Gelein (gonline)

Attachment: FAST.7z [ 12712 ]

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Apr 20, 2015

Commented by: @asfernandes

Isn't due to DBSTARTTRANSACTION trigger?

I tried with isql -nod and it worked.

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Apr 20, 2015

Commented by: @dyemanov

I could not reproduce the error with an embedded connect (CS on Linux).

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Apr 21, 2015

Modified by: @hvlad

assignee: Vlad Khorsun [ hvlad ]

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Apr 21, 2015

Commented by: @hvlad

The bug was introduced with additional patch for CORE4671

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Apr 21, 2015

Modified by: @hvlad

summary: request synchronization error. => request synchronization error when build expression index

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Apr 21, 2015

Modified by: @hvlad

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

resolution: Fixed [ 1 ]

Fix Version: 3.0 Beta 2 [ 10586 ]

Fix Version: 2.5.5 [ 10670 ]

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Apr 21, 2015

Commented by: Alexander Muylaert-Gelein (gonline)

Hi

To summarize, this is a know issue that is resolved in 2.5.5.
I can spend more time on making it reproducable if desired, but if it is already solved, no point in doing that.

thanks

Alexander

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Apr 21, 2015

Commented by: @hvlad

Alexander,

it is 100% reproducible using your database, isql -nod -ch utf8, current fb 2.5.5 (before patch of course).

I guess Dmitry and Adriano tried fb3 which is affected but not throws isc_req_sync error due to a bit different code path.

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented May 30, 2015

Modified by: @pavel-zotov

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

QA Status: Cannot be tested

Test Details: Could not reproduce on:
1) official 2.5.3, WI-V2.5.3.26780, issued 03-dec-2014;
2) official 2.5.4, WI-V2.5.4.26856, issued 27-mar-2015.

Both attempts look like this:

isql.exe localhost/3254:C:\FBTESTING\qa\fbt-repo\tmp\FAST\C4759.FDB -ch utf8 -nod
Database: localhost/3254:C:\FBTESTING\qa\fbt-repo\tmp\FAST\C4759.FDB
SQL> show version;
ISQL Version: WI-V2.5.4.26856 Firebird 2.5
Server version:
Firebird/x86/Windows NT (access method), version "WI-V2.5.4.26856 Firebird 2.5"
. . .
SQL> CREATE UNIQUE INDEX UNQ_PRC_PR_PRLN_ID ON T_PRICE COMPUTED BY(cast(F_DPK_ID as varchar(20)) || cast(F_PRC_KIND as char(1)) || '|' || coalesce(cast(F_PR_ID as varchar(20)), '$') || '|' || coalesce(cast(F_PRLN_ID as varchar(20)), '$'));
SQL> -- no error here --
SQL> commit;
SQL> show index UNQ_PRC_PR_PRLN_ID;
UNQ_PRC_PR_PRLN_ID UNIQUE INDEX ON T_PRICE COMPUTED BY (cast(F_DPK_ID as varchar(20)) || cast(F_PRC_KIND as char(1)) || '|' || coalesce(cast(F_PR_ID as varchar(20)), '$') || '|' || coalesce(cast(F_PRLN_ID as varchar(20)), '$'))

According to http://sourceforge.net/p/firebird/code/60824, patch to CORE4671 was committed 2015-mar-04 10:37, so one need to have some 'intermediate' build of FB for reproducing.

BTW: some UDf missing ? Restore finishes with:

gbak: ERROR:function CLEAN_NUMBER is not defined

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Sep 23, 2015

Modified by: @pcisar

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
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
2 participants