-
-
Notifications
You must be signed in to change notification settings - Fork 94
Description
Hello,
Query :
MATCH (c:CHUNK) WHERE ID(c) = "#1:2051"
MATCH (c:CHUNK)-->(doc:DOCUMENT)
WITH head(collect(ID(doc))) as document_id, head(collect(ID(c))) as original_chunk_id, head(collect(doc.name)) as document_name
MATCH (all_chunks_doc:CHUNK)-->(doc:DOCUMENT) where ID(doc) = document_id
WITH all_chunks_doc as all_chunks_doc, original_chunk_id as original_chunk_id, document_id as document_id, document_name as document_name
ORDER BY all_chunks_doc.index
WITH collect(ID(all_chunks_doc)) as chunk_ids, original_chunk_id as original_chunk_id, document_id as document_id, document_name as document_name
WITH chunk_ids, range(0, size(chunk_ids)-1) as indices, original_chunk_id as original_chunk_id, document_id as document_id, document_name as document_name
UNWIND indices as index
WITH chunk_ids[index] as chunk_id, index, original_chunk_id as original_chunk_id, document_id as document_id, document_name as document_name
WHERE chunk_id = original_chunk_id
RETURN document_id, index, document_nameUsed to be working, now it returns nothing, no empty list, just nothing.
And on old engine it also errors (used to be working, what the hell) :
Error on executing Cypher query: `MATCH (c:CHUNK) WHERE ID(c) = \"#1:2051\" MATCH (c:CHUNK)-->(doc:DOCUMENT) WITH head(collect(ID(doc))) as document_id, head(collect(ID(c))) as original_chunk_id, head(collect(doc.name)) as document_name MATCH (all_chunks_doc:CHUNK)-->(doc:DOCUMENT) where ID(doc) = document_id WITH all_chunks_doc as all_chunks_doc, original_chunk_id as original_chunk_id, document_id as document_id, document_name as document_name ORDER BY all_chunks_doc.index WITH collect(ID(all_chunks_doc)) as chunk_ids, original_chunk_id as original_chunk_id, document_id as document_id, document_name as document_name WITH chunk_ids, range(0, size(chunk_ids)-1) as indices, original_chunk_id as original_chunk_id, document_id as document_id, document_name as document_name UNWIND indices as index WITH chunk_ids[index] as chunk_id, index, original_chunk_id as original_chunk_id, document_id as document_id, document_name as document_name WHERE chunk_id = original_chunk_id RETURN document_id, index, document_name` with parameters {} -> Error on executing command -> org.apache.tinkerpop.gremlin.language.grammar.GremlinParserException: Failed to interpret Gremlin query: Query parsing failed at line 1, character position at 3473, error message : no viable alternative at input 'g.V().as('c').hasLabel('CHUNK').has('~id',eq('#1:2051')).outE().inV().as('doc').hasLabel('DOCUMENT').select('doc','c').fold().project(' AGGREGATION83',' AGGREGATION123',' AGGREGATION167').by(__.unfold().select('doc').choose(neq(null),__.id()).is(neq(null)).fold()).by(__.unfold().select('c').choose(neq(null),__.id()).is(neq(null)).fold()).by(__.unfold().select('doc').choose(neq(null),__.choose(__.values('name'),__.values('name'),__.constant(null))).is(neq(null)).fold()).as(' GENERATED3').select(' AGGREGATION83').as(' AGGREGATION83').select(' GENERATED3').select(' AGGREGATION123').as(' AGGREGATION123').select(' GENERATED3').select(' AGGREGATION167').as(' AGGREGATION167').select(' AGGREGATION83',' AGGREGATION123',' AGGREGATION167').project('document_id','original_chunk_id','document_name').by(__.select(' AGGREGATION83').choose(__.limit(local,1),__.limit(local,1),__.constant(null))).by(__.select(' AGGREGATION123').choose(__.limit(local,1),__.limit(local,1),__.constant(null))).by(__.select(' AGGREGATION167').choose(__.limit(local,1),__.limit(local,1),__.constant(null))).as(' GENERATED4').select('document_id').as('document_id').select(' GENERATED4').select('original_chunk_id').as('original_chunk_id').select(' GENERATED4').select('document_name').as('document_name').V().as('all_chunks_doc').hasLabel('CHUNK').outE().inV().as('doc').hasLabel('DOCUMENT').where(__.select('doc').choose(neq(null),__.id()).is(neq(null)).where(eq('document_id'))).select('all_chunks_doc','original_chunk_id','document_id','document_name').project('all_chunks_doc','original_chunk_id','document_id','document_name').by(__.select('all_chunks_doc')).by(__.select('original_chunk_id')).by(__.select('document_id')).by(__.select('document_name')).order().by(__.select('all_chunks_doc').choose(neq(null),__.choose(__.values('index'),__.values('index'),__.constant(null))),asc).as(' GENERATED6').select('all_chunks_doc').as('all_chunks_doc').select(' GENERATED6').select('original_chunk_id').as('original_chunk_id').select(' GENERATED6').select('document_id').as('document_id').select(' GENERATED6').select('document_name').as('document_name').select('all_chunks_doc','original_chunk_id','document_id','document_name').group().by(__.project('original_chunk_id','document_id','document_name').by(__.select('original_chunk_id')).by(__.select('document_id')).by(__.select('document_name'))).by(__.fold().project('chunk_ids','original_chunk_id','document_id','document_name').by(__.unfold().select('all_chunks_doc').choose(neq(null),__.id()).is(neq(null)).fold()).by(__.unfold().select('original_chunk_id')).by(__.unfold().select('document_id')).by(__.unfold().select('document_name'))).unfold().select(values).as(' GENERATED7').select('chunk_ids').as('chunk_ids').select(' GENERATED7').select('original_chunk_id').as('original_chunk_id').select(' GENERATED7').select('document_id').as('document_id').select(' GENERATED7').select('document_name').as('document_name').select('chunk_ids','original_chunk_id','document_id','document_name').project('chunk_ids','indices','original_chunk_id','document_id','document_name').by(__.select('chunk_ids')).by(__.constant(1).as('__GENERATED11').select('chunk_ids').count(local).choose(__.or(__.is(eq(null)),__.select('__GENERATED11').is(eq(null))),__.constant(null),__.math('_ - __GENERATED11')).as('__GENERATED10').sideEffect(__.is(lt(0)).constant('INVALID_RANGE').map(cypherException' -> Failed to interpret Gremlin query: Query parsing failed at line 1, character position at 3473, error message : no viable alternative at input 'g.V().as('c').hasLabel('CHUNK').has('~id',eq('#1:2051')).outE().inV().as('doc').hasLabel('DOCUMENT').select('doc','c').fold().project(' AGGREGATION83',' AGGREGATION123',' AGGREGATION167').by(__.unfold().select('doc').choose(neq(null),__.id()).is(neq(null)).fold()).by(__.unfold().select('c').choose(neq(null),__.id()).is(neq(null)).fold()).by(__.unfold().select('doc').choose(neq(null),__.choose(__.values('name'),__.values('name'),__.constant(null))).is(neq(null)).fold()).as(' GENERATED3').select(' AGGREGATION83').as(' AGGREGATION83').select(' GENERATED3').select(' AGGREGATION123').as(' AGGREGATION123').select(' GENERATED3').select(' AGGREGATION167').as(' AGGREGATION167').select(' AGGREGATION83',' AGGREGATION123',' AGGREGATION167').project('document_id','original_chunk_id','document_name').by(__.select(' AGGREGATION83').choose(__.limit(local,1),__.limit(local,1),__.constant(null))).by(__.select(' AGGREGATION123').choose(__.limit(local,1),__.limit(local,1),__.constant(null))).by(__.select(' AGGREGATION167').choose(__.limit(local,1),__.limit(local,1),__.constant(null))).as(' GENERATED4').select('document_id').as('document_id').select(' GENERATED4').select('original_chunk_id').as('original_chunk_id').select(' GENERATED4').select('document_name').as('document_name').V().as('all_chunks_doc').hasLabel('CHUNK').outE().inV().as('doc').hasLabel('DOCUMENT').where(__.select('doc').choose(neq(null),__.id()).is(neq(null)).where(eq('document_id'))).select('all_chunks_doc','original_chunk_id','document_id','document_name').project('all_chunks_doc','original_chunk_id','document_id','document_name').by(__.select('all_chunks_doc')).by(__.select('original_chunk_id')).by(__.select('document_id')).by(__.select('document_name')).order().by(__.select('all_chunks_doc').choose(neq(null),__.choose(__.values('index'),__.values('index'),__.constant(null))),asc).as(' GENERATED6').select('all_chunks_doc').as('all_chunks_doc').select(' GENERATED6').select('original_chunk_id').as('original_chunk_id').select(' GENERATED6').select('document_id').as('document_id').select(' GENERATED6').select('document_name').as('document_name').select('all_chunks_doc','original_chunk_id','document_id','document_name').group().by(__.project('original_chunk_id','document_id','document_name').by(__.select('original_chunk_id')).by(__.select('document_id')).by(__.select('document_name'))).by(__.fold().project('chunk_ids','original_chunk_id','document_id','document_name').by(__.unfold().select('all_chunks_doc').choose(neq(null),__.id()).is(neq(null)).fold()).by(__.unfold().select('original_chunk_id')).by(__.unfold().select('document_id')).by(__.unfold().select('document_name'))).unfold().select(values).as(' GENERATED7').select('chunk_ids').as('chunk_ids').select(' GENERATED7').select('original_chunk_id').as('original_chunk_id').select(' GENERATED7').select('document_id').as('document_id').select(' GENERATED7').select('document_name').as('document_name').select('chunk_ids','original_chunk_id','document_id','document_name').project('chunk_ids','indices','original_chunk_id','document_id','document_name').by(__.select('chunk_ids')).by(__.constant(1).as('__GENERATED11').select('chunk_ids').count(local).choose(__.or(__.is(eq(null)),__.select('__GENERATED11').is(eq(null))),__.constant(null),__.math('_ - __GENERATED11')).as('__GENERATED10').sideEffect(__.is(lt(0)).constant('INVALID_RANGE').map(cypherException'
Simplified query to :
MATCH (c:CHUNK) WHERE ID(c) = "#1:2051"
MATCH (c:CHUNK)-->(doc:DOCUMENT)
WITH head(collect(ID(doc))) as document_id, head(collect(ID(c))) as original_chunk_id, head(collect(doc.name)) as document_name
RETURN document_id, document_nameBut old engine returns :
"records": [
{
"document_id": "#4:0",
"document_name": "ORANO-MAG-2021_205x275_FR_MEL.pdf"
}
]new engine returns :
"records": [
{
"document_name": null,
"document_id": null
}
]database dump :
Reactions are currently unavailable