Commit 989aab2
Fix nested array JSON detection and pre-compute column metadata
- Add '[[' to JSON detection guard in _convert_typed_array so nested
arrays like [[1,2],[3]] are parsed via json.loads instead of falling
through to native format (which returns None for nested arrays).
- Pre-compute _column_types and _column_names tuples once in
_process_metadata. Use them in _get_rows to eliminate per-cell
meta.get("Type") and meta.get("Name") dict lookups.
- S3FSResultSet._fetch() reuses _column_types from parent instead of
rebuilding from self.description on every call.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>1 parent 311f039 commit 989aab2
File tree
4 files changed
+66
-21
lines changed- pyathena
- s3fs
- tests/pyathena
4 files changed
+66
-21
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
279 | 279 | | |
280 | 280 | | |
281 | 281 | | |
282 | | - | |
| 282 | + | |
283 | 283 | | |
284 | 284 | | |
285 | 285 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
87 | 87 | | |
88 | 88 | | |
89 | 89 | | |
| 90 | + | |
| 91 | + | |
90 | 92 | | |
91 | 93 | | |
92 | 94 | | |
| |||
429 | 431 | | |
430 | 432 | | |
431 | 433 | | |
| 434 | + | |
| 435 | + | |
432 | 436 | | |
433 | | - | |
| 437 | + | |
434 | 438 | | |
435 | 439 | | |
436 | 440 | | |
437 | | - | |
| 441 | + | |
438 | 442 | | |
439 | | - | |
| 443 | + | |
440 | 444 | | |
441 | 445 | | |
442 | 446 | | |
| |||
465 | 469 | | |
466 | 470 | | |
467 | 471 | | |
| 472 | + | |
468 | 473 | | |
469 | | - | |
| 474 | + | |
470 | 475 | | |
471 | 476 | | |
472 | | - | |
| 477 | + | |
473 | 478 | | |
474 | | - | |
475 | | - | |
476 | | - | |
| 479 | + | |
| 480 | + | |
| 481 | + | |
477 | 482 | | |
478 | 483 | | |
479 | 484 | | |
480 | 485 | | |
| 486 | + | |
| 487 | + | |
| 488 | + | |
| 489 | + | |
| 490 | + | |
| 491 | + | |
| 492 | + | |
| 493 | + | |
481 | 494 | | |
482 | 495 | | |
483 | 496 | | |
| |||
639 | 652 | | |
640 | 653 | | |
641 | 654 | | |
| 655 | + | |
| 656 | + | |
642 | 657 | | |
643 | 658 | | |
644 | 659 | | |
| |||
663 | 678 | | |
664 | 679 | | |
665 | 680 | | |
| 681 | + | |
| 682 | + | |
666 | 683 | | |
667 | | - | |
| 684 | + | |
668 | 685 | | |
669 | 686 | | |
670 | 687 | | |
671 | | - | |
672 | | - | |
| 688 | + | |
| 689 | + | |
673 | 690 | | |
674 | | - | |
| 691 | + | |
| 692 | + | |
| 693 | + | |
| 694 | + | |
| 695 | + | |
| 696 | + | |
| 697 | + | |
| 698 | + | |
| 699 | + | |
| 700 | + | |
| 701 | + | |
| 702 | + | |
| 703 | + | |
| 704 | + | |
| 705 | + | |
| 706 | + | |
| 707 | + | |
| 708 | + | |
675 | 709 | | |
676 | | - | |
677 | | - | |
| 710 | + | |
| 711 | + | |
678 | 712 | | |
679 | 713 | | |
680 | 714 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
149 | 149 | | |
150 | 150 | | |
151 | 151 | | |
152 | | - | |
153 | | - | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
154 | 156 | | |
155 | 157 | | |
156 | 158 | | |
| |||
171 | 173 | | |
172 | 174 | | |
173 | 175 | | |
174 | | - | |
| 176 | + | |
175 | 177 | | |
176 | 178 | | |
177 | 179 | | |
178 | 180 | | |
179 | | - | |
| 181 | + | |
180 | 182 | | |
181 | 183 | | |
182 | 184 | | |
183 | 185 | | |
184 | 186 | | |
185 | 187 | | |
186 | 188 | | |
187 | | - | |
| 189 | + | |
188 | 190 | | |
189 | 191 | | |
190 | 192 | | |
191 | 193 | | |
192 | | - | |
| 194 | + | |
193 | 195 | | |
194 | 196 | | |
195 | 197 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
180 | 180 | | |
181 | 181 | | |
182 | 182 | | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
183 | 192 | | |
184 | 193 | | |
185 | 194 | | |
| |||
0 commit comments