[OpenAFS] Shared r/w access to numerous sqlite databases: an
appropriate application for AFS?
Brandon Simmons
brandon.m.simmons@gmail.com
Thu, 8 Apr 2010 16:06:18 -0400
On Thu, Apr 8, 2010 at 2:18 PM, Matt W. Benjamin <matt@linuxbox.com> wrote:
> Hi,
>
> Simon is correct. =A0A byte-range locking implementation for OpenAFS is b=
eing funded by Your File System, Inc., under its DOE SBIR Phase II grant. =
=A0As stated elsewhere by Jeff, there are (or will be) structures for makin=
g completed available to the community during the course of the work.
>
> However, my understanding that shared r/w access to sqlite through AFS pr=
obably does work, provided you ensure sqlite uses the correct locking style=
(cf. sqlite's os_unix.c):
>
> #define SQLITE_WHOLE_FILE_LOCKING =A00x0001 =A0 /* Use whole-file locking=
*/
>
> This feature is apparently due to Adam Megacz, who posted briefly about i=
t in 2006. =A0See http://marc.info/?l=3Dsqlite-users&m=3D116742195016159&w=
=3D2 .
>
> Regards,
>
> Matt
>
Thanks for the response. It seems like whole-file locking in sqlite
would be a good choice for me in any case, and I can't imagine needing
that kind of writing concurrency.
Doing a little more research, this message describes a few more issues
with sqlite over NFS which I suppose might apply to AFS:
http://old.nabble.com/SQLite-on-NFS-cache-coherency-td15655701.html
In a situation where the whole-file locking scheme is used, would AFS
be an acceptable choice? Would it be better than NFS?
For instance I envision a handful of clients on different machines
each writing to a single sqlite DB every few seconds; would this
defeat AFS's caching scheme?
Thanks for the thoughtful responses.
> ----- "Simon Wilkinson" <sxw@inf.ed.ac.uk> wrote:
>
>> On 8 Apr 2010, at 12:22, Todd Lewis wrote:
>>
>
>>
>> Someone (Matt, IIRC) was working on server support for byte range
>> locking, but I don't think we've seen any code yet.
>>
>> Cheers,
>>
>> Simon.
>
> --
>
> Matt Benjamin
>
> The Linux Box
> 206 South Fifth Ave. Suite 150
> Ann Arbor, MI =A048104
>
> http://linuxbox.com
>
> tel. 734-761-4689
> fax. 734-769-8938
> cel. 734-216-5309
>