By default, every time a resource is updated in Fedora a new memento is automatically created. In most circumstances, this is likely the desired behavior. However, every time a memento is created, a new OCFL version in the underlying OCFL object is also created. OCFL is not designed to performantly handle objects with a large number of versions. If you anticipate that you may generate hundreds or thousands of versions on an object, then you may want to disable Fedora's auto-versioning feature.
Auto-versioning is disabled by setting the fcrepo.autoversioning.enabled
property to false
. When auto-versioning is disabled mementos are only created when Fedora is instructed to create them.
Fedora supports manual version using the Mutable HEAD OCFL Extension. This extension allows Fedora to create a special version within the OCFL object that it is able to update without creating a new immutable OCFL version. It is important to understand that if you use manual versioning, any changes that you make to a resource will not be in an immutable OCFL version until you create a new memento for the resource. Additionally, OCFL clients that do not implement the Mutable HEAD Extension will not be able to see any of the content that is not in an immutable OCFL version.
Therefore, it is recommended that if you use manual versioning that you create mementos for your resources regularly so that you do not leave content isolated in the Mutable HEAD Extension.