We're updating the issue view to help you get more done. 

"Before" dates not working with ElasticSearch

Description

It seems that in current develop branch "before" dates are not indexed right on ES. If I create date "before 1980", this is how it is indexed in ES:
[
"9999-01-01T00:00:00Z",
"1980-12-31T23:59:59Z"
]

BTW. there is a test for "after" dates in tests but not "before" dates:
providence/tests/lib/Search/ElasticSearch/FieldTypes/DateRangeTest.php

Environment

Ubuntu 18.04, ES 5.6.16

Activity

Show:
Ari Matti Häyrinen
August 17, 2020, 5:05 AM

I don’t knwo if I’m doing something wrong but still I can’t make a fresh install with ES 7.8 + latest develop branch. This is what I got:


Updating the ElasticSearch mapping failed. This is probably because of a type conflict. Try recreating the entire search index. The original error was {"error":{"root_cause":[{"type":"illegal_argument_exception","reason":"Types cannot be provided in put mapping requests, unless the include_type_name parameter is set to true."}],"type":"illegal_argument_exception","reason":"Types cannot be provided in put mapping requests, unless the include_type_name parameter is set to true."},"status":400}

ES 6.8.1 works fine.

Ari Matti Häyrinen
August 20, 2020, 7:42 PM

I did not realise that elasticsearch-php in vendor directory must match to ES version. Now I can install also with ES 7.8 and everything seems ok.
Thanks!

Seth
August 20, 2020, 8:30 PM

Well kind of. I’ve found that you can get away with the ES 6.x client with 7.x, at least in my test environments. But yeah, you really should change it to match and I don’t know how to easily automate that.

What we really really need to do is overhaul the ES documentation to reflect all of these bits and bobs. If you would be willing to review it once it’s ready I’d be very appreciative.

Ari Matti Häyrinen
August 21, 2020, 7:19 AM

Sure, I’m glad to help. Just let me know when it is ready.

Ari Matti Häyrinen
August 25, 2020, 8:10 PM

Speaking of bits and bobs, I hit the max field limit in full text searches with ES 7.8.
I had to set this: indices.query.bool.max_clause_count=4000 and then full text searches worked again.

Some links:

Assignee

Seth

Reporter

Ari Matti Häyrinen

Labels

None

Components

Affects versions

Priority

Major
Configure