Hi,
We use the scroll api along with timeout option. Sample query like
GET my_index/my_type/_search?scroll=1.1m
{
"query": {
"match" : {
"content" : "a"
}
}
}
scroll=1.1m worked perfectly in ES2.4.1 but is throwing a parse exception in ES5.4.1 as below "type": "parse_exception",
_ "reason": "failed to parse [1.1m], fractional time values are not supported"_
What is the reason for this change? Why are fraction values no more supported, could someone explain?
Previously these time values were converted internally to nanoseconds, and at that point what the user entered would be lost (that is 1.1m and 66s would be represented the same internally). We switched to representing them in a format where we do not lose this information. We based this representation on Java TimeUnit. TimeUnit does not support fractional values. We felt that the simplicity of using a built-in for representing these time values was worth not supporting fractional values which:
are fraught with difficulties because of floating-point representations
do not offer any additional flexibility versus the user simply switching to another time unit (e.g., 1.5h can be changed to 90m).
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.