Subject Re: [firebird-support] DB on network share
Author Helen Borrie
At 08:03 PM 10/04/2008, you wrote:
>Hi All,
>Can anyone explain me why it is not advised (or forbidden) to place a DB
>file on a network share?
>Is this because of the risk of the NAS (network share) not being available
>all the time ?

If that were the reason, then Firebird wouldn't support cross-server transactions (but it does!)

>Or why is it not advised to do so or even forbidden ?

A Firebird database is built up by the engine requesting blocks of storage space a "page at a time". (Actually, Fb 2.1 can request multiple pages at a time...) When it receives the space, the engine does all the internal management itself. Different versions of records 'move about', page-hopping when needed. Pages containing data from a particular table are not contiguous, except right after a restore. This need-request-supply relationship doesn't work if the storage isn't physically under the same host control as the engine.

There is a config parameter allowing a database to be on a network device. It is then *possible* to access a database on a network device but the database will shortly self-destruct once record versions get mobile and more storage is wanted.

However, Firebird has a feature that lets you set a database to be read-only. A read-only database never moves records around and never needs more disk space - hence it is safe for this purpose: but ONLY this purpose.