Skip to content

test: an Arrow date outside PostgreSQL's range is refused, date32 and date64; arrow_import seeds the ledger (#1341) - #1363

Merged
jdatcmd merged 2 commits into
commandprompt:mainfrom
OffgridwithJD:test/1341-arrow-date-range
Oct 14, 2026
Merged

jdatcmd merged 2 commits into
commandprompt:mainfrom
OffgridwithJD:test/1341-arrow-date-range

Conversation

@OffgridwithJD

Copy link
Copy Markdown
Collaborator

Part of #1341: the medium error-path item "a date32 or date64 value outside PostgreSQL's date range is refused with 22008". Its time and timestamp siblings were tested; the date check had no arm.

The arms

Three new fixtures in arrow_import.sh's pyarrow block, each valid in its own carrier:

  • a date32 at 2^31−1 days, past 5874897 AD;
  • a date32 at −2^31 days, before 4713 BC;
  • a date64 at 2^62 ms.

Each is imported into a date column and must answer 22008.

PG17, main 1933577 against this branch, with the date decode's IS_VALID_DATE check removed:

main this branch
arrow_import.sh 72/72 all three red, "got [00000] want [22008]": each import succeeded with a date nothing reads back as the file's

Shell only. arrow_import has no pytest twin; its missing twin is its own #1341 twin-parity item. These arms will be in it when it is written.

Evidence

🤖 Generated with Claude Code

@jdatcmd jdatcmd left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Approving the content at e293e62. On PG17 I reproduced the claim with IS_VALID_DATE removed from the date decode:

  • main: arrow_import passes 72/72.
  • this head: all three new arms fail with "got [00000] want [22008]".

Before merge: rebase and restate; it seeds arrow_import, so the ceiling falls by one.

jdatcmd and others added 2 commits October 14, 2026 14:18
…and date64 (commandprompt#1341)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@OffgridwithJD
OffgridwithJD force-pushed the test/1341-arrow-date-range branch from e293e62 to e725166 Compare October 14, 2026 14:18
@OffgridwithJD

Copy link
Copy Markdown
Collaborator Author

Rebased onto 9b3c181 (#1362 merged): now e725166. Only the budget conflicted. Restated on main's figures: ledger rows 2385 + 75 = 2460, never 1821 + 72 = 1893, dated 564 + 3 = 567. suites_not_covered is 244: git auto-resolved it to 245 because both sides made the same 246 → 245 edit, and I corrected it by hand. arrow_import.sh is byte-identical to the version the 75/75 five-major runs used. The gate is clean against origin/main (census 1893 = ledger, ceiling 245 → 244). I'll report back when CI is green.

🤖 Generated with Claude Code

@jdatcmd jdatcmd left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Re-approving the rebased head e725166. Checked against e293e62:

  • Patch: identical outside the three count files.
  • Ledger: 2460 rows / 1893 never (main 2385/1821). No duplicate keys, no dated premise rows, none of main's rows dropped or changed.
  • Ceiling: 244. Thanks for catching git's auto-resolution to 245.
  • CI: 15/15.

Merging.

@jdatcmd
jdatcmd merged commit d7cd8f3 into commandprompt:main Oct 14, 2026
15 checks passed
@jdatcmd

jdatcmd commented Oct 14, 2026

Copy link
Copy Markdown
Collaborator

@OffgridwithJD, merged as d7cd8f3. Main now: 2460 rows / 1893 never, suites_not_covered 244. #1365 is next.

Reviews from this round, all reproduced on PG18. Details are on each PR.

@OffgridwithJD

Copy link
Copy Markdown
Collaborator Author

@jdatcmd CI is green at e725166 (15/15). The only change since your approval is the rebase onto 9b3c181, and the restated budget is described above. Ready to merge in queue order; #1365 is next.

🤖 Generated with Claude Code

OffgridwithJD pushed a commit to OffgridwithJD/pgcolumnar that referenced this pull request Oct 14, 2026
…ut pyarrow (commandprompt#1398)

e88af2b (commandprompt#1363) added three pyarrow-dependent checks to arrow_import's
pyarrow branch but not to the no-pyarrow branch's check_skip list. Without
pyarrow they vanished instead of recording a skip, so capability_sweep
classed the suite as declining, which the sweep reserves for suites that
call pgc_skip pyarrow, and the nightly went red. The three names join the
list.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019VvWuX1zUwk6Y513waRd4N
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.

2 participants