...
The actual binary looks something like this when opened up in a text editor:
Code Block |
---|
87a0a8c7505d64/7org.infinispan.schematic.internal.SchematicEntryLiteral6org.infinispan.marshall.jboss.JBossExternalizerAdapterq externalizer$org.infinispan.marshall.ExternalizerDorg.infinispan.schematic.internal.SchematicEntryLiteral$Externalizer7 org.infinispan.schematic.internal.SchematicExternalizer8org.infinispan.schematic.internal.document.BasicDocument;? org.infinispan.schematic.internal.document.DocumentExternalizer;23metadata?id87a0a8c7505d64/ contentTypeapplication/jsoncontent>propertiesghttp://www.jcp.org/jcr/1.0FprimaryType$namemode:rootuuid 87a0a8c7505d64/children0<key87a0a8c317f1e7jcr:systemnamejcr:system1Skey387a0a8c7505d64 53f49a07-8e14-41a1-bab3-abc59d86846enamechandni |
...
File |
---|
87a0a8c7505d641/7org.infinispan.schematic.internal.SchematicEntryLiteral6org.infinispan.marshall.jboss.JBossExternalizerAdapterq externalizer$org.infinispan.marshall.ExternalizerDorg.infinispan.schematic.internal.SchematicEntryLiteral$Externalizer7org.infinispan.schematic.internal.SchematicExternalizer8org.infinispan.schematic.internal.document.BasicDocument;?org.infinispan.schematic.internal.document.DocumentExternalizer2;23metadata?id87a0a8c7505d64/contentTypeapplication/ |
...
jsoncontent>propertiesghttp://www.jcp.org/jcr/1.0FprimaryType$namemode:rootuuid 87a0a8c7505d64/ |
...
children03<key87a0a8c317f1e7jcr:systemnamejcr: |
...
system1Skey387a0a8c7505d64 53f49a07-8e14-41a1-bab3- |
...
abc59d86846enamechandni4 |
After some editing for readability, the object and datastream text is highlighted in bold to show data of interest.
Some of these elements are:
87a0a8c7505d64 refers to root node UUID
The grayed out text refers to Modeshape classes responsible for data representation and serialization
...
- The file contains binary data for specifying different internal attributes, so the file might show garbage characters or numbers in strings. /children0<key87a0a8c317f1e7jcr:systemnamejcr:system1Skey387a0a8c7505d64 . Similarly, if object 'chandni' had siblings, the array would appear in the binary as:
- Name/string (53f49a07-8e14-41a1-bab3-abc59d86846enamechandni)
87a0a8c7505d64 refers to root node UUID
Similary, for the datastream:
87a0a8c7505d64 8e6504dd-1fb8-4011-8d38-4fcd2e46c0f77org.infinispan.schematic.internal.SchematicEntryLiteral6org.infinispan.marshall.jboss.JBossExternalizerAdapterq externalizer$org.infinispan.marshall.ExternalizerDorg.infinispan.schematic.internal.SchematicEntryLiteral$Externalizer7org.infinispan.schematic.internal.SchematicExternalizer8org.infinispan.schematic.internal.document.BasicDocument; ?org.infinispan.schematic.internal.document.DocumentExternalizer;23metadatabid387a0a8c7505d64 8e6504dd-1fb8-4011-8d38-4fcd2e46c0f7 contentTypeapplication/jsoncontentkey 87a0a8c7505d64 8e6504dd-1fb8-4011-8d38-4fcd2e46c0f7 parent387a0a8c7505d64 46c11a1e-b2d9-496c-a950-5bd8cf7f2096 propertieshttp://www.jcp.org/jcr/1.0+primaryType$name nt:resourcedatachandni o meri chandni lastModified.$date2013-12-05T18:52:00.714-05:00 mixinTypesL0D$name4{http://fedora.info/definitions/v4/rest-api#}binarylastModifiedBy bypassAdminmimeTypeapplication/octet-streamhttp://fedora.info/definitions/v4/rest-api |
...
Using the Infinispan 6.x deprecated FileCacheStore (specified via file/infinispan.xml, currently our ModeShape is on 5.x) results in creation of hundreds of binary files (compared to LevelDB). A hashing algorithm is used to map keys to buckets. The value files contain serialized ModeShape nodes. The key files can be read using org.infinispan.schematic.internal.document.BsonReader. (It does not seem possible to read these files using existing bson tools, like mongoDB bsondump, but further inspection is needed.)