Re: Re: [Fwd: Bug #20858 [Dup->Bgs]: dba_open create always a lockfile]
| From: | (Marcus Börger) | Date: | Wed, 11 Dec 2002 10:21:34 +0000 |
| Subject: | Re: Re: [Fwd: Bug #20858 [Dup->Bgs]: dba_open create always a lockfile] | ||
| References: | 1 2 | Groups: | php.dev |
| Request: | Send a blank email to php-dev+get-92334@lists.php.net to get a copy of this message | ||
At 00:02 11.12.2002, Marcus Börger wrote:
At 15:22 10.12.2002, Christophe Sollet wrote:I forgot to tell about one motivation for the default: GDBM does locking on the file always. So now all handlers behave the same way when no further modifier is used. marcusMarcus Börger wrote:At 14:04 10.12.2002, Christophe Sollet wrote:Please let me disagree : 20828 is about a bug of new locking scheme with nfs 20858 is not bogus nor a duplicate : letting dba_open managing lock by default BREAK current scripts : If db was meant to be opened read only (by all httpd process) and filesystem have appropiate rights for that (read only), automatic locking will fail (and dba_open too by the way) I have undestand that by adding the new "-" flag, it will behave as previous release. But why breaking BC ?? By enabling it you may fix existing bugged php script but you may also break working ones. I think it would be better to fix bugged scripts by adding a "l" or "d" and keep BC. Christophe.I decided to have locking as default to force users to think aboutlocking. Ok, valuable whish. But what's about users that have already think about it and have implement their own locking system or don't need it (see below) ?Even when you can access a db file only in read mode by php locking is required if any other process may access that file in write mode.Yes, but in our case, the db file is updated by another mean from time to time with a restart of the server : never opened read-write by any process (php or others). Again, the problem can be avoided using "-" and having php able to manage locking is great but i can't understand why it's better to break things in first place.Further more dba is a superset of db and db was considered to always lock a db file (even though this is done wrong). And i will look at the NFS part later today or tomorrow.Great.marcusChristophe.When i open a db file on a read only nfs directory 'd' works. The modifier 'l' fails when in read mode. After last changes it succeeds even with 'l' when the .lck file already exists. The default is now locking on the database file. If you think you cannot or will not live with this defaul i guess i make it a RFC on php-dev. marcus