1Mail::Box::Locker::NFS(U3s)er Contributed Perl DocumentatMiaoinl::Box::Locker::NFS(3)
2
3
4

NAME

6       Mail::Box::Locker::NFS - lock a folder with a separate file, NFS-safe
7

INHERITANCE

9        Mail::Box::Locker::NFS
10          is a Mail::Box::Locker
11          is a Mail::Reporter
12

SYNOPSIS

14        See Mail::Box::Locker
15

DESCRIPTION

17       Like the "::DotLock" locker, but then in an NFS-safe fashion.  Over
18       NFS, the creation of a file is not atomic.  The "::DotLock" locker
19       depends on an atomic "open" system call, hence in not usable to lock a
20       folder which accessed over NFS.  The "::NFS" locker is therefore more
21       complicated (so therefore slower), but will work for NFS --and for
22       local disks as well.
23
24       Extends "DESCRIPTION" in Mail::Box::Locker.
25

METHODS

27       Extends "METHODS" in Mail::Box::Locker.
28
29   Constructors
30       Extends "Constructors" in Mail::Box::Locker.
31
32       Mail::Box::Locker::NFS->new(%options)
33            -Option --Defined in       --Default
34             expires  Mail::Box::Locker  1 hour
35             file     Mail::Box::Locker  undef
36             folder   Mail::Box::Locker  <undef>
37             log      Mail::Reporter     'WARNINGS'
38             method   Mail::Box::Locker  'NFS'
39             timeout  Mail::Box::Locker  10
40             trace    Mail::Reporter     'WARNINGS'
41
42           expires => SECONDS
43           file => FILENAME
44           folder => FOLDER
45           log => LEVEL
46           method => STRING|CLASS|ARRAY
47           timeout => SECONDS|'NOTIMEOUT'
48           trace => LEVEL
49
50   Attributes
51       Extends "Attributes" in Mail::Box::Locker.
52
53       $obj->expires( [SECONDS] )
54           Inherited, see "Attributes" in Mail::Box::Locker
55
56       $obj->timeout( [SECONDS] )
57           Inherited, see "Attributes" in Mail::Box::Locker
58
59   The Locker
60       Extends "The Locker" in Mail::Box::Locker.
61
62       $obj->filename( [$filename] )
63           Inherited, see "The Locker" in Mail::Box::Locker
64
65       $obj->folder( [$folder] )
66           Inherited, see "The Locker" in Mail::Box::Locker
67
68       $obj->name()
69           Inherited, see "The Locker" in Mail::Box::Locker
70
71   Locking
72       Extends "Locking" in Mail::Box::Locker.
73
74       $obj->hasLock()
75           Inherited, see "Locking" in Mail::Box::Locker
76
77       $obj->isLocked()
78           Inherited, see "Locking" in Mail::Box::Locker
79
80       $obj->lock()
81       $obj->unlock()
82           Inherited, see "Locking" in Mail::Box::Locker
83
84   Error handling
85       Extends "Error handling" in Mail::Box::Locker.
86
87       $obj->AUTOLOAD()
88           Inherited, see "Error handling" in Mail::Reporter
89
90       $obj->addReport($object)
91           Inherited, see "Error handling" in Mail::Reporter
92
93       $obj->defaultTrace( [$level]|[$loglevel, $tracelevel]|[$level,
94       $callback] )
95       Mail::Box::Locker::NFS->defaultTrace( [$level]|[$loglevel,
96       $tracelevel]|[$level, $callback] )
97           Inherited, see "Error handling" in Mail::Reporter
98
99       $obj->errors()
100           Inherited, see "Error handling" in Mail::Reporter
101
102       $obj->log( [$level, [$strings]] )
103       Mail::Box::Locker::NFS->log( [$level, [$strings]] )
104           Inherited, see "Error handling" in Mail::Reporter
105
106       $obj->logPriority($level)
107       Mail::Box::Locker::NFS->logPriority($level)
108           Inherited, see "Error handling" in Mail::Reporter
109
110       $obj->logSettings()
111           Inherited, see "Error handling" in Mail::Reporter
112
113       $obj->notImplemented()
114           Inherited, see "Error handling" in Mail::Reporter
115
116       $obj->report( [$level] )
117           Inherited, see "Error handling" in Mail::Reporter
118
119       $obj->reportAll( [$level] )
120           Inherited, see "Error handling" in Mail::Reporter
121
122       $obj->trace( [$level] )
123           Inherited, see "Error handling" in Mail::Reporter
124
125       $obj->warnings()
126           Inherited, see "Error handling" in Mail::Reporter
127
128   Cleanup
129       Extends "Cleanup" in Mail::Box::Locker.
130
131       $obj->DESTROY()
132           Inherited, see "Cleanup" in Mail::Box::Locker
133

DIAGNOSTICS

135       Warning: Folder $folder already locked over nfs
136           Do not try to lock the folder when the application already has the
137           lock: it will give you dead-locks.
138
139       Error: Package $package does not implement $method.
140           Fatal error: the specific package (or one of its superclasses) does
141           not implement this method where it should. This message means that
142           some other related classes do implement this method however the
143           class at hand does not.  Probably you should investigate this and
144           probably inform the author of the package.
145
146       Warning: Removed expired lockfile $filename.
147           A lock file was found which was older than the expiration period as
148           specified with new(timeout).  The lock file was successfully
149           removed.
150
151       Error: Unable to remove expired lockfile $lockfile: $!
152           A lock file was found which was older than the expiration period as
153           specified with the new(timeout) option.  It is impossible to remove
154           that lock file, so we need to wait until it vanishes by some
155           external cause.
156

SEE ALSO

158       This module is part of Mail-Box distribution version 3.009, built on
159       August 18, 2020. Website: http://perl.overmeer.net/CPAN/
160

LICENSE

162       Copyrights 2001-2020 by [Mark Overmeer]. For other contributors see
163       ChangeLog.
164
165       This program is free software; you can redistribute it and/or modify it
166       under the same terms as Perl itself.  See http://dev.perl.org/licenses/
167
168
169
170perl v5.36.0                      2023-01-20         Mail::Box::Locker::NFS(3)
Impressum