XDMP-RIDXTOOBIG error during a merge
17 February 2015 04:49 PM
It is possible to encounter an XDMP-RIDXTOOBIG error during a database merge - for example, you may see an error that looks similar to:
XDMP-FORESTNOT: Forest ... not available: XDMP-FORESTERR: Error in merge of forest ...: XDMP-RIDXTOOBIG: Too many entries in range index.
Encountering this error may result in the forest going offline.
The error XDMP-RIDXTOOBIG means that there are too many entries in the range index. Range indexes in MarkLogic server are limited to 2^32 (~4 billion) entries per stand.
During a merge, if the resulting stand will have a range index with more than 2^32 entries, then the merge will fail with the above mentioned error and the forest will be taken offline offline.
One way to avoid encountering the XDMP-RIDXTOOBIG error would be to set the 'merge-max-size' of the database in question to a size where you know it will not unlikely hit the range index entries limit. A value that we often recommend for the 'merge-max-size' setting is 32GB. The 'merge-max-size' setting will enforce an upper limit of 32GB on the size of any individual stand in the forest. MarkLogic Server does this by managing merges so that a merge will not occur if the resultant stand size would be bigger than that size.
Note: In MarkLogic 7 and later releases, the default value for merge-max-size is 32GB, which is recommended as it provides a good balance between keeping the number of stands and preventing very large merges from using large amounts of disk space.
Links to other related documentation:
MarkLogic Server's Administrators Guide section on 'Understanding and Controlling Database Merges'
Knowledgebase article on 'Migrating to MarkLogic 7 and understanding the 1.5x disk rule'
Knowledgebase article on 'Range Indexes and Mapped File Initialization Errors'