Hi, Related to this: My app doesn't need exclusive mode, but there are still a few typical places where it is used: pack and reindex (and structure change) operations. If POSIX doesn't support exclusive access, what is the recommended way to open a table for above operations if I want to avoid issues in multiuser scenarios?
Brgds, Viktor On 2010 Feb 1, at 14:48, David Arturo Macias Corona wrote: > Przemek: > > Something has changed for this case since Aug 2007 ? > > "It mean that (in Linux) Harbour and xHarbour can not share dbf files ?" > > Your last message included below > > I do not found some reference for this difference between Harbour-xHarbour in > doc\xhb-diff.txt > > David Macias > > > On Thu, 02 Aug 2007, David Arturo Macias Corona wrote: > > >The application which was working in background keeping dbf file open > > >was compiled by Harbour and blocked only other Harbour processes because > > >Harbour and xHarbour use different methods to emulate DOS/Windows DENY > > >flags in POSIX systems. > > It mean that (in Linux) Harbour and xHarbour can not share dbf files ? > > Now. It means that POSIX systems do not have EXCLUSIVE mode. > Everything is open in SHARED mode. I added emulation for DENY > flags but it's only emulation and I created two versions for > such emulation. Harbour has both - xHarbour only one. > But if user needs real portability then he has to create code > working in SHARED mode only or sooner or later he will make > sth what breaks POSIX locks semantic, f.e. he open and close > already open file what clears all FCNTL locks set on this > file by the same process using different file handle because > kernel recognize them as pair: PID+INODE and both will be the > same. > I do not have time now for detail POSIX locks description and > what are the differences between DOS/Windows and rest of normal ;-) > world. Few years ago I sent such description to xHarbour.news > and it should be in some archive. > Probably sooner or later someone will add DOS DENY flag emulation > directly to Linux kernels for easier implementation things like SAMBA > server and in such case I'll also add it core code. Maybe it's already > happened - I haven't time to trace kernel modification in last two > years. > > best regards, > Przemek > > > > _______________________________________________ > Harbour mailing list (attachment size limit: 40KB) > [email protected] > http://lists.harbour-project.org/mailman/listinfo/harbour _______________________________________________ Harbour mailing list (attachment size limit: 40KB) [email protected] http://lists.harbour-project.org/mailman/listinfo/harbour
