Skip to content

Add support for zero dates in mysql mapping#6750

Merged
graytaylor0 merged 1 commit into
opensearch-project:mainfrom
divbok:main
Apr 10, 2026
Merged

Add support for zero dates in mysql mapping#6750
graytaylor0 merged 1 commit into
opensearch-project:mainfrom
divbok:main

Conversation

@divbok

@divbok divbok commented Apr 10, 2026

Copy link
Copy Markdown
Collaborator

Description

Add support for MySQL zero-in-date values in TemporalTypeHandler.

MySQL allows dates with zero components (e.g., 1999-00-20, 2024-05-00, 0000-01-12) when NO_ZERO_IN_DATE SQL mode is not enabled. Currently, TemporalTypeHandler only handles the full zero date 0000-00-00 and throws IllegalArgumentException for partial zero dates, causing the entire Parquet file to fail during RDS S3 export ingestion.

This change:

Extends handleDate() to return null for any date with a zero year (0000), zero month (-00-), or zero day (-00)
Extends handleDateTime() to apply the zero-component check on the date portion for DATETIME values
since TIMESTAMP only permits the full zero timestamp (0000-00-00 00:00:00), not partial zeros.

Reference: https://dev.mysql.com/doc/refman/9.6/en/datetime.html

Check List

  • New functionality includes testing.
  • New functionality has a documentation issue. Please link to it in this PR.
    • New functionality has javadoc added
  • Commits are signed with a real name per the DCO

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Signed-off-by: Divyansh Bokadia <dbokadia@amazon.com>

@dlvenable dlvenable left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice, thanks!

@graytaylor0 graytaylor0 merged commit f110cfe into opensearch-project:main Apr 10, 2026
70 of 72 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants