AEM MongoDB upgrade to 6.3 fails with document size error

Issue

When upgrading a MongoMK based AEM installation to AEM 6.3, the error below "Document size of 27544148 is larger than maximum of 16777216" causes the upgrade to fail.

04.10.2017 18:45:54.104 *INFO* [oak-lucene-1] org.apache.jackrabbit.oak.plugins.index.lucene.directory.IndexSanityChecker Local index directory content found to be valid for index [/oak:index/ntBaseLucene]. Stats Local: 0 files (0 B), Remote: 67 files (176.9 MB)
04.10.2017 18:50:03.503 *WARN* [DocumentNodeStore lease update thread (1)] org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore BackgroundLeaseUpdate.execute: time since last renewClusterIdLease() call longer than expected: 6202ms
04.10.2017 19:28:47.394 *INFO* [Apache Sling Repository Startup Thread] org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore Pushing journal entry at r15ee8b55e90-0-1 as number of changes (1199767) have reached 100000
04.10.2017 19:28:48.602 *ERROR* [Apache Sling Repository Startup Thread] com.adobe.granite.repository.impl.SlingRepositoryManager start: Uncaught Throwable trying to access Repository, calling stopRepository()
java.lang.RuntimeException: org.apache.jackrabbit.oak.api.CommitFailedException: OakOak0001: Failed to merge changes to the underlying store
at org.apache.jackrabbit.oak.spi.lifecycle.OakInitializer.initialize(OakInitializer.java:54)
at org.apache.jackrabbit.oak.Oak.createNewContentRepository(Oak.java:636)
at org.apache.jackrabbit.oak.Oak.createContentRepository(Oak.java:624)
at org.apache.jackrabbit.oak.jcr.Jcr.createContentRepository(Jcr.java:386)
...
at org.apache.sling.jcr.base.AbstractSlingRepositoryManager$4.run(AbstractSlingRepositoryManager.java:455)
Caused by: org.apache.jackrabbit.oak.api.CommitFailedException: OakOak0001: Failed to merge changes to the underlying store
at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch$InMemory.merge(DocumentNodeStoreBranch.java:522)
at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.merge0(DocumentNodeStoreBranch.java:185)
at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.merge(DocumentNodeStoreBranch.java:119)
at org.apache.jackrabbit.oak.plugins.document.DocumentRootBuilder.merge(DocumentRootBuilder.java:167)
at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore.merge(DocumentNodeStore.java:1694)
at org.apache.jackrabbit.oak.spi.lifecycle.OakInitializer.initialize(OakInitializer.java:52)
... 8 common frames omitted
Caused by: org.bson.BsonSerializationException: Document size of 27544148 is larger than maximum of 16777216.
at org.bson.BsonBinaryWriter.backpatchSize(BsonBinaryWriter.java:376)
at org.bson.BsonBinaryWriter.doWriteEndDocument(BsonBinaryWriter.java:123)
at org.bson.AbstractBsonWriter.writeEndDocument(AbstractBsonWriter.java:302)
at com.mongodb.DBObjectCodec.encode(DBObjectCodec.java:132)
at com.mongodb.DBObjectCodec.encode(DBObjectCodec.java:61)
...
at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch$InMemory.merge(DocumentNodeStoreBranch.java:513)
... 13 common frames omitted

Environment

AEM + MongoMK upgrade from prior version to AEM 6.3

Resolution

Before upgrading AEM, first upgrade MongoDB to 3.2 + Wired Tiger.  See here for supported platform details for 6.3.

 Adobe

Get help faster and easier

New user?

Adobe MAX 2024

Adobe MAX
The Creativity Conference

Oct 14–16 Miami Beach and online

Adobe MAX

The Creativity Conference

Oct 14–16 Miami Beach and online

Adobe MAX 2024

Adobe MAX
The Creativity Conference

Oct 14–16 Miami Beach and online

Adobe MAX

The Creativity Conference

Oct 14–16 Miami Beach and online