VDataBase_IsOpen( gDBRef ) fails

Ruslan Zasukhin ruslan_zasukhin at valentina-db.com
Mon Dec 14 14:09:44 CST 2009


On 12/14/09 7:01 PM, "Tiemo Hollmann TB" <toolbook at kestner.de> wrote:

Hi Tiemo,

> 2. With the first version of my App I got on some Mac machines an index error.
> So I added a VDataBase_SQLExecute( gDBRef, "REINDEX DATABASE" ) after having
> opened the database and the problem was gone.

> Because my database has no write or update actions on it (it is only read by
> my App), the database file resides in a subfolder of my program dir, what was
> no problem concerning any user rights for write action. Now I got unsure, what
> actually is happening with the reindex database. Is this a write performance
> on the database file or does the reindex only happens in the memory? If it is
> a write performance on the file I think it should not resides in the prog dir,
> but 1. I can¹t change the whole design of my App at all customers out there
> and 2. If this could get a problem, why is it running at all (most) customers?
> 3. Could problem #1 has anything to do with this, though the reindex happens a
> dozens statement later as the test of being open and no error is thrown on
> this statement.

REINDEX means that existed indexes are destroyed and new index is built.

Actually this is heavy operqtion, so the bigger db is the longer indexing
takes. For Valentina reindex usually is very fast operation although...
But if your users can have huge dbs this can kick them.

** REINDEX do write to disk of course.


** Actually you can do diagnose db, this is faster.
And only if troubles found do reindex.
You can do this automatically, or provide in your app
    file menu -> Db Managing submenu


** may be it is good idea upgrade to 4.x?
    


-- 
Best regards,

Ruslan Zasukhin
VP Engineering and New Technology
Paradigma Software, Inc

Valentina - Joining Worlds of Information
http://www.paradigmasoft.com

[I feel the need: the need for speed]




More information about the Valentina mailing list