Subject | slow connection to db |
---|---|
Author | Gerhard Knapp |
Post date | 2016-04-30T09:52:08Z |
Hello,
since firebird 2.5 and the latest IBObject version (5.7.7 2340) i have folling issue:
Before:
I never set before the TIB_Connection.SchemaCacheDir, and connections was very fast.
no problem also on slow networks.
The reason is, this is a multiuser software with a lot of dynamic table and field alterings.
Now:
case a) no SchemaCacheDir:
Each connection is very slow (local on a fast i7 computer, with very fast SSD (NVME):
1.7 seconds.
If over slow network this can take 10 seconds or more, if there is a big database with
1000ts tables in it.
case b) SchemaCacheDir set to e.g. : p:\SCHEMA
connection time is around 300 ms.
My question is:
Why it's necessary to get the whole database schema to the client?
there are many clients, that only use some tables fo the database.
And if i use only TIB_Connection and TIB_Cursor, preparing and so on, why i ned this
full Schema?
Is there a way to stop getting database schema for the connection?
maybe schemacache was not default true before.
best regards
Gerhard
since firebird 2.5 and the latest IBObject version (5.7.7 2340) i have folling issue:
Before:
I never set before the TIB_Connection.SchemaCacheDir, and connections was very fast.
no problem also on slow networks.
The reason is, this is a multiuser software with a lot of dynamic table and field alterings.
Now:
case a) no SchemaCacheDir:
Each connection is very slow (local on a fast i7 computer, with very fast SSD (NVME):
1.7 seconds.
If over slow network this can take 10 seconds or more, if there is a big database with
1000ts tables in it.
case b) SchemaCacheDir set to e.g. : p:\SCHEMA
connection time is around 300 ms.
My question is:
Why it's necessary to get the whole database schema to the client?
there are many clients, that only use some tables fo the database.
And if i use only TIB_Connection and TIB_Cursor, preparing and so on, why i ned this
full Schema?
Is there a way to stop getting database schema for the connection?
maybe schemacache was not default true before.
best regards
Gerhard