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

Server hangs eating CPU and performs huge I/O copying different codepage fields [CORE1063] #1484

Closed
firebird-automations opened this issue Dec 21, 2006 · 18 comments

Comments

@firebird-automations
Copy link
Collaborator

Submitted by: Andrew (coder2)

Is related to QA35

Attachments:
database.zip

Restore the small database from attached backup and run the following script on it:

alter table cms_wiki
add u_name varchar(100) character set UTF8,
add u_title varchar(100) character set UTF8,
add u_description blob sub_type 1 character set UTF8,
add u_text blob sub_type 1 character set UTF8;

commit;

update cms_wiki set
u_name = name, u_title = title, u_text = text, u_description = description;

commit;

drop index uq_cms_wiki;

alter table cms_wiki drop name, drop description, drop text, drop title;

commit;

alter table cms_wiki
alter u_name to name,
alter u_title to title,
alter u_description to description,
alter u_text to text;

commit;

CREATE UNIQUE INDEX UQ_CMS_WIKI ON CMS_WIKI (NAME, SITE_ID);

Commits: 1b6650c 480f934 a130b48

@firebird-automations
Copy link
Collaborator Author

Commented by: Andrew (coder2)

This is a database backup. Restore it before performing tests.

@firebird-automations
Copy link
Collaborator Author

Modified by: Andrew (coder2)

Attachment: database.zip [ 10200 ]

@firebird-automations
Copy link
Collaborator Author

Commented by: @hvlad

I reproduced it and can confirm.
FB 2.1 returns transliteration error (instead of endless loop) but this is also bug.
I see several bugs in the code unfortunately :

filter_transliterate_text in filters.cpp can't deal with blob segments more than 16K-1 bytes
16K segment expanded twice upto 64K (win1251 -> UTF16, UTF16 -> UTF8 in your case)
we have a lot of USHORT variables there
when we assign value of 65536 into USHORT variable we have truncation
copy_blob in blb.cpp don't expect segment of length 0 and run into endless loop storing empty blob pages on each iteration

very sad :(

@firebird-automations
Copy link
Collaborator Author

Modified by: @hvlad

assignee: Vlad Horsun [ hvlad ]

@firebird-automations
Copy link
Collaborator Author

Modified by: @hvlad

timespent: 7200 [ 7200 ]

timeestimate: 0 [ 0 ]

@firebird-automations
Copy link
Collaborator Author

Modified by: @hvlad

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

resolution: Fixed [ 1 ]

Fix Version: 2.1 [ 10041 ]

@firebird-automations
Copy link
Collaborator Author

Commented by: @hvlad

Fix committed into 2.0.1 tree

@firebird-automations
Copy link
Collaborator Author

Modified by: @hvlad

Fix Version: 2.0.1 [ 10090 ]

@firebird-automations
Copy link
Collaborator Author

Commented by: @pmakowski

Q/A test ok

@firebird-automations
Copy link
Collaborator Author

Modified by: @pmakowski

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

@firebird-automations
Copy link
Collaborator Author

Commented by: @pcisar

Reopened to update ticket information.

@firebird-automations
Copy link
Collaborator Author

Modified by: @pcisar

status: Closed [ 6 ] => Reopened [ 4 ]

resolution: Fixed [ 1 ] =>

@firebird-automations
Copy link
Collaborator Author

Modified by: @pcisar

Fix Version: 2.1 Alpha 1 [ 10150 ]

Fix Version: 2.1.0 [ 10041 ] =>

@firebird-automations
Copy link
Collaborator Author

Modified by: @pcisar

status: Reopened [ 4 ] => Closed [ 6 ]

resolution: Fixed [ 1 ]

@firebird-automations
Copy link
Collaborator Author

Modified by: @pcisar

Link: This issue is related to QA35 [ QA35 ]

@firebird-automations
Copy link
Collaborator Author

Modified by: @pcisar

Workflow: jira [ 11423 ] => Firebird [ 15450 ]

@firebird-automations
Copy link
Collaborator Author

Modified by: @pavel-zotov

QA Status: No test

@firebird-automations
Copy link
Collaborator Author

Modified by: @pavel-zotov

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

QA Status: No test => Done successfully

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