Hi everyone!
We're using search_after
to retrieve items from ES and have an issue with nil
values. Specifically, we search for items sorted by date (last_seen_at
), using internal_id
(indexed copy of _id
) as a tie-breaker.
Most records have a value for last_seen_at
, but some don't. But passing nil
for search_after
(as below) raises a NullPointerException
. It works fine using 0
, but I guess it searches for items having an existing value of 0
, instead of items with no value?
{
"query": {
"bool": {
"filter": {
"bool": {
"must": [{
"term": { "team_id": 44 }
}, {
"exists": { "field": "user_id"}
}]
}
}
}
},
"sort": [{
"last_request_at": { "order": "desc"}
}, {
"internal_id": { "order": "asc"}
}],
"size": "10",
"search_after": [nil, "5e79de5f33640a29a0027d41"]
}
Is there a way to retrieve items having a nil
value w/ search_after
? Something like missing
values for this?
Many thanks!
NB: Using ES 6.8