Skip to content

[BUG] PPl date parse failure shows in 3.3 but not in 2.19 #4977

@gaobinlong

Description

@gaobinlong

What is the bug?

When run same ppl on same index, 3.3 version shows date parse failure, but 2.19 works, there maybe some bug in 3.3.

How can one reproduce the bug?
Steps to reproduce the behavior:

PUT test1
{
  "mappings": {
    "properties": {
      "startTimeMillis": {
        "type": "date",
        "format": "epoch_millis"
      }
    }
  }
}


POST test1/_doc?refresh
{
  "startTimeMillis":1764815932000
}

POST _plugins/_ppl/
{
  "query":"source = `test1` | WHERE `startTimeMillis` >= '2025-12-04 01:00:00.000' AND `startTimeMillis` <= '2025-12-04 13:00:00.000'"
}

3.3 returns:

"{\n  \"error\": {\n    \"reason\": \"Error occurred in OpenSearch engine: all shards failed\",\n    \"details\": \"Shard[0]: OpenSearchParseException[failed to parse date field [2025-12-04T01:00:00.000Z] with format [epoch_millis]: [failed to parse date field [2025-12-04T01:00:00.000Z] with format [epoch_millis]]]; nested: IllegalArgumentException[failed to parse date field [2025-12-04T01:00:00.000Z] with format [epoch_millis]]; nested: NotSerializableExceptionWrapper[date_time_parse_exception: Failed to parse with all enclosed parsers];\\nShard[1]: OpenSearchParseException[failed to parse date field [2025-12-04T01:00:00.000Z] with format [epoch_millis]: [failed to parse date field [2025-12-04T01:00:00.000Z] with format [epoch_millis]]]; nested: IllegalArgumentException[failed to parse date field [2025-12-04T01:00:00.000Z] with format [epoch_millis]]; nested: NotSerializableExceptionWrapper[date_time_parse_exception: Failed to parse with all enclosed parsers];\\nShard[2]: OpenSearchParseException[failed to parse date field [2025-12-04T01:00:00.000Z] with format [epoch_millis]: [failed to parse date field [2025-12-04T01:00:00.000Z] with format [epoch_millis]]]; nested: IllegalArgumentException[failed to parse date field [2025-12-04T01:00:00.000Z] with format [epoch_millis]]; nested: DateTimeParseException[Failed to parse with all enclosed parsers];\\nShard[3]: OpenSearchParseException[failed to parse date field [2025-12-04T01:00:00.000Z] with format [epoch_millis]: [failed to parse date field [2025-12-04T01:00:00.000Z] with format [epoch_millis]]]; nested: IllegalArgumentException[failed to parse date field [2025-12-04T01:00:00.000Z] with format [epoch_millis]]; nested: DateTimeParseException[Failed to parse with all enclosed parsers];\\nShard[4]: OpenSearchParseException[failed to parse date field [2025-12-04T01:00:00.000Z] with format [epoch_millis]: [failed to parse date field [2025-12-04T01:00:00.000Z] with format [epoch_millis]]]; nested: IllegalArgumentException[failed to parse date field [2025-12-04T01:00:00.000Z] with format [epoch_millis]]; nested: NotSerializableExceptionWrapper[date_time_parse_exception: Failed to parse with all enclosed parsers];\\n\\nFor more details, please send request for Json format to see the raw response from OpenSearch engine.\",\n    \"type\": \"SearchPhaseExecutionException\"\n  },\n  \"status\": 400\n}"

What is the expected behavior?
3.3 works as same as 2.19, it seems the reason is because when push down to query DSL, format is specified in range query in 2.19, but not in 3.3

Image

What is your host/environment?

  • OS: [e.g. iOS]
  • Version [e.g. 22]
  • Plugins

Do you have any screenshots?
If applicable, add screenshots to help explain your problem.

Do you have any additional context?
Add any other context about the problem.

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingpushdownpushdown related issues

Type

No type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions