NAME
MogileFS::Plugin::FileRefs - MogileFS extension
DESCRIPTION
This module provides MogileFS with additional functionality to keep track of multiple uses of an individual dkey. This may be useful for implementing de-duplication in your application.
Mogile commands
- add_file_ref
-
Takes domain id, dkey, and your reference as arguments.
Creates an association from a key to your reference.
- del_file_ref
-
Takes domain id, dkey, and your reference as arguments.
Deletes an association from a key to your reference.
- rename_if_no_refs
-
Takes domain id, old dkey and new dkey.
Atomically renames a dkey provided there are no references to it.
- list_refs_for_dkey
-
Takes domain id, dkey.
Lists all the references against a dkey.
Locking behaviour
Care has been taken to ensure that it is possible to remove a file, without the danger of a reference being added to it during the deletion process. add_file_ref take a lock, keyed to the domain and key of the reference added. rename_if_no_refs
also takes a lock which it holds between checking the reference count and actually doing the renaming, ensuring a reference cannot sneak in.
If a lock cannot be obtained within the timeout period, a get_key_lock_fail
error is returned.
SEE ALSO
AUTHOR
Dave Lambley, <davel@state51.co.uk>
COPYRIGHT AND LICENSE
Copyright (C) 2012 Oscar Music and Media
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.10.1 or, at your option, any later version of Perl 5 you may have available.