Commit 7cc41cc
Add NULL and empty string handling documentation
Add comprehensive documentation explaining NULL and empty string behavior
across different cursor types:
- Default Cursor and DictCursor properly distinguish NULL from empty string
- PandasCursor with CSV treats both as NaN, but works correctly with unload
- ArrowCursor with CSV treats both as empty string, but works correctly with unload
- PolarsCursor properly distinguishes in both CSV and Parquet modes
- S3FSCursor properly distinguishes using custom AthenaCSVReader
This documentation helps users understand the CSV format limitation and
provides workarounds (unload option, PolarsCursor, S3FSCursor) for
applications that need to distinguish NULL from empty string values.
Unify test method names to `test_null_vs_empty_string` across all cursor types:
- TestCursor.test_null_vs_empty_string
- TestDictCursor.test_null_vs_empty_string
- TestPandasCursor.test_null_vs_empty_string (renamed from test_empty_and_null_string)
- TestArrowCursor.test_null_vs_empty_string
- TestPolarsCursor.test_null_vs_empty_string
- TestS3FSCursor.test_null_vs_empty_string (consolidated with parametrize)
Closes #118
Closes #148
Closes #168
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>1 parent c9b0032 commit 7cc41cc
File tree
7 files changed
+660
-22
lines changed- docs
- tests/pyathena
- arrow
- pandas
- polars
- s3fs
7 files changed
+660
-22
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
17 | 17 | | |
18 | 18 | | |
19 | 19 | | |
| 20 | + | |
20 | 21 | | |
21 | 22 | | |
22 | 23 | | |
| |||
0 commit comments