Optional Store Features

Last modified by Eleni Cojocariu on 2026/09/16 09:36

Reference

Two of the things the store keeps can be switched off, and where it keeps them can be changed: the history of documents and attachments, and the recycle bins they go to when deleted. All of the properties below live in xwiki/WEB-INF/xwiki.cfg, all of them ship commented out at the default shown, and all of them are read at startup, so a change takes effect on the next restart.

Keeping the full history is what lets a reader revert vandalism or read what a page said last month, and on an active wiki that history grows to be far larger than the current content. Switching it off is a trade of that safety for that space.

Features that can be switched off

PropertyDefaultSwitching it off means
xwiki.store.versioning1Documents no longer keep a history.
xwiki.store.attachment.versioning1Attachments no longer keep their versions. Setting xwiki.store.attachment.versioning.hint to void has the same effect.
xwiki.recyclebin1A deleted page is removed instead of going to the recycle bin.
storage.attachment.recyclebin1A deleted attachment is removed instead of going to the attachment recycle bin.
xwiki.store.rollbackattachmentwithdocuments1Reverting a document to an older version leaves its attachments as they are.

Two traps in that table:

  • Only the exact value 0 switches off the first four. They are read as "anything that is not 0", so false, no or off leave the feature on.
  • The last one is the other way round: only the exact value 1 keeps it on, so any other value switches it off.

And note that storage.attachment.recyclebin is the one property here without the xwiki. prefix.

Warning

With the document recycle bin switched off, a deleted page cannot be brought back at all: neither Restore a Page nor Restore Entire Batches has anything to restore from, and only a database backup is left. The same goes for Restore a Deleted Attachment once the attachment recycle bin is off.

Where each of them is stored

Each store has a hint that selects its implementation. The metadata stores default to the database, the content stores to the permanent directory, the latter since XWiki 10.5.

PropertyDefaultWhat it stores
xwiki.store.versioning.hinthibernateThe history of documents.
xwiki.store.recyclebin.hinthibernateThe metadata of deleted pages.
xwiki.store.recyclebin.content.hintfileThe content of deleted pages.
xwiki.store.attachment.recyclebin.hinthibernateThe metadata of deleted attachments.
xwiki.store.attachment.recyclebin.content.hintfileThe content of deleted attachments.
xwiki.store.attachment.versioning.hintfileThe versions of attachments, or nothing at all with the value void.

The two content hints apply to what is deleted after the change: they are read when a page or an attachment is deleted, so what is already in a recycle bin stays where it was written. Where the current documents and attachments are stored is a separate matter. See Blob Store.

FAQ

Can these be set per wiki?

No. They are xwiki.cfg properties of the instance, and no wiki-level field overrides them.

Does switching versioning off remove the history already stored?

No. Nothing deletes what was written; new versions simply stop being added, so the history a page already has stays readable.

Related

Get Connected