Hi, I'm currently working with a system where dot-file is the only applicable SQLITE_ENABLE_LOCKING_STYLE and I'm trying to understand how this is implemented exactly. So I've read through the implementation of this locking strategy and a few questions came to mind:
First, dot-file actually uses a directory, however, the comments don't seem to give a reason for this. Why is a directory created, instead of a more (arguably) traditional lock file (see e.g. git)? dotlockLock creates the directory with permissions set to 777. As far as I can tell, this could create a situation where the temporary locking directory is more accessible than the database file or the db parent directory. Is there a reason the existing permissions aren't inherited? I suspect this is done to prevent any issues while deleting the lock directory. Lastly, it seems that all lock types are promoted to EXCLUSIVE with this strategy. I wonder if that can be changed to allow all previous lock types, maybe using lock *files* and judging the lock type by content or file name? In my mind, this would create a completely portable, file-based locking strategy that doesn't depend on OS-provided locking mechanisms. But I'm probably overlooking something here, so please correct me if I'm wrong. Thanks, -- *Pierre Tempel* _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users