[ https://issues.apache.org/jira/browse/OAK-6165?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15996363#comment-15996363 ]
Marcel Reutegger commented on OAK-6165: --------------------------------------- Queries on _sdType are not yet frequent, but will be when continuous revision GC is employed (OAK-3710). I have a test system running where I simulate this with the oak-run "revisions collect" command using the {{--continuous}} options. This command calls the revision GC every five seconds. On MongoDB it issues a query like this (among others) when the system is a two node cluster: {noformat} { $and: [ { _sdType: { $exists: true } }, { $or: [ { _sdType: 50 }, { _sdType: 60 }, { _sdType: 70, $and: [ { $or: [ { _id: /.*-1\/0/ }, { _id: /[^-]*/, _path: /.*-1\/0/ } ] } ], _sdMaxRevTime: { $lt: 1489069960 } }, { _sdType: 70, $and: [ { $or: [ { _id: /.*-2\/0/ }, { _id: /[^-]*/, _path: /.*-2\/0/ } ] } ], _sdMaxRevTime: { $lt: 1489069960 } } ] }, { _sdMaxRevTime: { $lt: 1489069960 } } ] } {noformat} Without a compound index, the store is forced to scan all documents with an {{_sdType}} field. Running such a query on a moderately sized 1.6 repository (~60GB), leads to response times ranging from seconds to minutes, depending on how much page faulting is necessary. With a compound index in place, I get an instantaneous result. > Create compound index on _sdType and _sdMaxRevTime (RDB) > -------------------------------------------------------- > > Key: OAK-6165 > URL: https://issues.apache.org/jira/browse/OAK-6165 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: rdbmk > Reporter: Chetan Mehrotra > Assignee: Julian Reschke > Fix For: 1.8 > > > Clone for OAK-6129 for RDB i.e. create index on OAK-6129on _sdType and > _sdMaxRevTime. This is required to run queries issued by the Revision GC > efficiently. -- This message was sent by Atlassian JIRA (v6.3.15#6346)