FirebirdSQL / firebird

Firebird server, client and tools
https://www.firebirdsql.org/
1.23k stars 212 forks source link

Slow updates after first UPDATE [CORE381] #724

Open firebird-automations opened 20 years ago

firebird-automations commented 20 years ago

Submitted by: adnanoncevarlik (adnanoncevarlik)

Relate to CORE1575

SFID: 965580#⁠ Submitted By: adnanoncevarlik

Hi,

I think there is an Update problem FireBird Server v1.5 on Windows.

I want to explain what I did.

1. Insert 500,000 Record to Table. 2. Add new fields to table. 3. Update values to new fields from old fields. 4. After Updates, Re-Run Update Query.

The 4. step is very slow process. The step 3 has been done 50 sec. but step 4. has been done 12 Minutes. (some times 8 minutes, some times 18 minutes.) Very interesting.

Here is the structure and queries and other informatin.

FB Version Firebird-1.5.0.4306 (Win32)

OS Version Windows 2000 Server (5.00.2195 SP 4)

Hardware Inter Celeron 1.7 512 MB DDR RAM

Table Structure (Before The 2. Step) CREATE TABLE TEST1 ( NAME VARCHAR( 20) COLLATE PXW_TURK, SURNAME VARCHAR( 20) COLLATE PXW_TURK, EMAIL VARCHAR( 50) COLLATE PXW_TURK, WEB VARCHAR( 50) COLLATE PXW_TURK, ADDRESS1 VARCHAR( 50) COLLATE PXW_TURK, ADDRESS2 VARCHAR( 50) COLLATE PXW_TURK, CITY VARCHAR( 20) COLLATE PXW_TURK, COUNTRY VARCHAR( 20) COLLATE PXW_TURK, DESCRIPTION BLOB SUB_TYPE 1 SEGMENT SIZE 80);

Table Structure (Before The 2. Step) CREATE TABLE TEST1 ( NAME VARCHAR( 20) COLLATE PXW_TURK, SURNAME VARCHAR( 20) COLLATE PXW_TURK, EMAIL VARCHAR( 50) COLLATE PXW_TURK, WEB VARCHAR( 50) COLLATE PXW_TURK, ADDRESS1 VARCHAR( 50) COLLATE PXW_TURK, ADDRESS2 VARCHAR( 50) COLLATE PXW_TURK, CITY VARCHAR( 20) COLLATE PXW_TURK, COUNTRY VARCHAR( 20) COLLATE PXW_TURK, DESCRIPTION BLOB SUB_TYPE 1 SEGMENT SIZE 80, NEWNAME VARCHAR( 15) COLLATE PXW_TURK, NEWSURNAME VARCHAR( 15) COLLATE PXW_TURK, UNITEDNAMES VARCHAR( 30) COLLATE PXW_TURK);

Theres in no PrimaryKey, Index, Trigger other constraints in the DB.

Update Query

UPDATE TEST1 SET NEWNAME=NAME, NEWSURNAME=SURNAME, UNITEDNAMES = NAME || SURNAME

This query runs after first run is too slow.

Best Regards Adnan ONCEVARLIK Istanbul/TURKEY

firebird-automations commented 18 years ago

Commented by: Alice F. Bird (firebirds)

Date: 2005-01-07 12:59 Sender: adnanoncevarlik Logged In: YES user_id=1046258

Thank you. I wish Firebird Developers will solve this problem in FB 2.0 :)

We are waiting.

Best regards

firebird-automations commented 18 years ago

Commented by: Alice F. Bird (firebirds)

Date: 2004-11-17 20:53 Sender: dimitr Logged In: YES user_id=61270

In fact, it's a design pitfall, but perhaps it could be improved in the future.

firebird-automations commented 16 years ago
Modified by: @dyemanov Link: This issue relate to [CORE1575](https://github.com/FirebirdSQL/firebird/issues?q=CORE1575+in%3Atitle) \[ [CORE1575](https://github.com/FirebirdSQL/firebird/issues?q=CORE1575+in%3Atitle) \]
firebird-automations commented 16 years ago
Modified by: @dyemanov assignee: Dmitry Yemanov \[ dimitr \]
firebird-automations commented 16 years ago
Modified by: @pcisar Workflow: jira \[ 10405 \] =\> Firebird \[ 14670 \]