Uploaded image for project: 'Jackrabbit Oak'
  1. Jackrabbit Oak
  2. OAK-926

MongoMK: split documents when they are too large

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 0.10
    • mongomk
    • None

    Description

      Currently, the MongoMK stores all revisions of a node in the same document. Once there are many revisions, the document gets very large.

      The plan is to split the document when it gets big.

      It looks like this isn't just a "nice to have", but also a problem for some use cases. Example stack trace:

      21.07.2013 12:35:47.554 *ERROR* ...
      Caused by: java.lang.IllegalArgumentException: 'ok' should never be null...
      	at com.mongodb.CommandResult.ok(CommandResult.java:48)
      	at com.mongodb.DBCollection.findAndModify(DBCollection.java:375)
      	at org.apache.jackrabbit.oak.plugins.mongomk.MongoDocumentStore.findAndModify(MongoDocumentStore.java:302)
      	... 32 more
      

      at the same time in the MongoDB log:

      Sun Jul 21 12:35:47.334 [conn7] warning: log line attempted (159k) over max size(10k), 
      printing beginning and end ... 
      Assertion: 10334:BSONObj size: 16795219 (0x53460001) is invalid. 
      Size must be between 0 and 16793600(16MB) 
      First element: :childOrder: { r1400279f22d-0-1: "[]", ...
      

      Attachments

        Activity

          People

            mreutegg Marcel Reutegger
            thomasm Thomas Mueller
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: