v2.0, Dreams aloud

Ruslan Zasukhin sunshine at public.kherson.ua
Tue Jan 21 00:53:05 CST 2003


Hi Guys,

I think now about implementing for 2.0 so called LAZY Create() and Open()
methods for files of tables and fields.

Assume we do 

    db.Create()
        -- this create 4 empty disk files as always.

Now we Create e.g. 10 tables with fields.
But this just stored in vdb file as description.
Nothing more for now.
    
    In 1.x Valentina immediately allocate at least one segment for
    each file of table.


We can now close db. Nothing more.
We can open db, only info from vdb files is read. Nothing more. Very fast.

And ONLY when happens access to a table,
    
    -- IF no file of table on volume, it is created
    -- If it exists, it is opened.

But again, if we open db with 30 fields, and some records,
Files of fields are NOT opened yet.
ONLY when we access them first time they are opened.

Good ?

I think yes, because it improves speed of create, open.
In fact it made speed of open constant even if we have 1000 tables.

Also this may increase robustness of engine.
Assume we have some totally corrupted field file.
But if we do not touch it, rest system still can work fine.

-- 
Best regards,
Ruslan Zasukhin      [ I feel the need...the need for speed ]
-------------------------------------------------------------
e-mail: ruslan at paradigmasoft.com
web: http://www.paradigmasoft.com

To subscribe to the Valentina mail list go to:
http://listserv.macserve.net/mailman/listinfo/valentina
-------------------------------------------------------------



More information about the Valentina mailing list