Search code examples
jackrabbitjackrabbit-oak

Jackrabbit Oak disable versioning


I want to setup document archive for my application. Documents will be added only once and won't be updated. I am using mongoDb as document storage. I also defined custom node type with various properties using code:

Workspace workspace = jackrabbitSession.getWorkspace();
NodeTypeManager ntManager = workspace.getNodeTypeManager();
PropertyDefinitionTemplate property = ntManager.createPropertyDefinitionTemplate();
property.setName("filename");
property.setRequiredType(PropertyType.STRING);

When I archive document, every string, boolean, and int properties are stored as Objects in mongoDB.

enter image description here

I suspect that this r191f49bcd8c-0-1 is some kind of version identifier. Is there a way to turn it off as this node will never be updated. Ideally, I would like to see the values of attributes directly and be able to query them in mongoDb easily.


Solution

  • No, this is an implementation detail based on Oak's internal architecture.

    You are not supposed to interact with MongoDB directly. Well, maybe except for debugging.