[ 
https://issues.apache.org/jira/browse/OAK-11169?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17887354#comment-17887354
 ] 

Julian Reschke commented on OAK-11169:
--------------------------------------

Also, it creates the 5000 test nodes in a batch, virtually guaranteeing that 
there'll be many with same same timestamp.

> MongoVersionGCSupport (oak-document-store) wrong syntax for sort mongodb 
> function
> ---------------------------------------------------------------------------------
>
>                 Key: OAK-11169
>                 URL: https://issues.apache.org/jira/browse/OAK-11169
>             Project: Jackrabbit Oak
>          Issue Type: Bug
>          Components: mongomk
>            Reporter: Raffaele Gambelli
>            Priority: Major
>
> In the MongoVersionGCSupport class, there is a wrong symtax in using the sort 
> function of mongodb.
> {code:java}
> final Bson sort = and(eq(MODIFIED_IN_SECS, 1), eq(ID, 1));
> // we need to add query condition to ignore `previous` documents which 
> doesn't have this field
> final Bson query = exists(MODIFIED_IN_SECS);
> FindIterable<BasicDBObject> limit = 
> getNodeCollection().find(query).sort(sort).limit(1);
> {code}
> in the $sort you can't insert $and, here it is the syntax of 
> [$sort|https://www.mongodb.com/docs/manual/reference/operator/aggregation/sort]
> [ERROR] Failures:
> [ERROR]   VersionGCSupportTest.findModifiedDocsWhenModifiedIsDifferent:288 
> expected:<40> but was:<0>
> [ERROR]   VersionGCSupportTest.findModifiedDocsWhenOldestDocIsPresent:323 
> expected:<40> but was:<0>
> [ERROR]   VersionGCSupportTest.findOldestModified:265 diff (s) should be < 5: 
> 1234567
> [ERROR] Errors:
> [ERROR]   VersionGCSupportTest.findModifiedDocsWhenOldestDocIsAbsent:376 ┬╗ 
> MongoQuery Co...
> [ERROR]   
> VersionGCSupportTest.getPossiblyModifiedDocs:166->assertModified:398 ┬╗ 
> MongoQuery
> and here the mongo exception:
> {noformat}
> [ERROR] getPossiblyModifiedDocs[MongoFixture: 
> MongoDB](org.apache.jackrabbit.oak.plugins.document.VersionGCSupportTest)  
> Time elapsed: 0.208 s  <<< ERROR!
> com.mongodb.MongoQueryException: Command failed with error 15974 
> (Location15974): 'Illegal key in $sort specification: $and: [ { _modified: 1 
> }, { _id: 1 } ]' on server localhost:62097. The full response is {"ok": 0.0, 
> "errmsg": "Illegal key in $sort specification: $and: [ { _modified: 1 }, { 
> _id: 1 } ]", "code": 15974, "codeName": "Location15974"}
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to