File locking supported on all platforms?
Jonas Konrad
me at yawk.at
Sat Jul 11 10:10:05 UTC 2020
I think it should just fail silently / without error, that's what fcntl
does at least. I'm not sure if there's a good way to determine whether
locking will actually work.
- Jonas
On 7/11/20 11:47 AM, Stefan Reich wrote:
> Hi Jonas,
>
> what would happen if I try to lock a file on these platforms? Can I
> reliably detect this case? That would already help a lot.
>
> The use case is ensuring a database's consistency which I now do over a
> socket protocol, but file locks would be faster and more reliable.
>
> Stefan
>
> On Sat, 11 Jul 2020 at 11:45, Jonas Konrad <me at yawk.at
> <mailto:me at yawk.at>> wrote:
>
> Hey,
>
> Some file systems on Linux, eg old NFS, do not support locking at all.
>
> - Jonas
>
> On 7/11/20 11:36 AM, Stefan Reich wrote:
> > Hi,
> >
> > a quick question regarding file locks in Java. I seem to remember
> > reading somewhere that this feature isn't guaranteed to work on all
> > platforms. However, I can now find no mention of that e.g. here
> >
> <https://docs.oracle.com/javase/7/docs/api/java/nio/channels/FileLock.html>.
> >
> > The page does list that numerous special assumptions may fail, for
> > example that programs which /don't/ lock a file are prevented from
> > changing it when it is locked by another program.
> >
> > However, I only care about the basic feature, namely that one
> local file
> > cannot be locked by two Java programs at once and will cause one
> of them
> > to throw an exception.
> >
> > Is this guaranteed to work everywhere?
> >
> > Many greetings
> > Stefan
> >
> > --
> > Stefan Reich
> > BotCompany.de // Java-based operating systems
>
>
>
> --
> Stefan Reich
> BotCompany.de // Java-based operating systems
More information about the nio-dev
mailing list