Commit 17af727
[SPARK-21375][PYSPARK][SQL] Add Date and Timestamp support to ArrowConverters for toPandas() Conversion
## What changes were proposed in this pull request?
Adding date and timestamp support with Arrow for `toPandas()` and `pandas_udf`s. Timestamps are stored in Arrow as UTC and manifested to the user as timezone-naive localized to the Python system timezone.
## How was this patch tested?
Added Scala tests for date and timestamp types under ArrowConverters, ArrowUtils, and ArrowWriter suites. Added Python tests for `toPandas()` and `pandas_udf`s with date and timestamp types.
Author: Bryan Cutler <[email protected]>
Author: Takuya UESHIN <[email protected]>
Closes #18664 from BryanCutler/arrow-date-timestamp-SPARK-21375.1 parent 5c3a1f3 commit 17af727
File tree
17 files changed
+417
-73
lines changed- python/pyspark
- sql
- sql/core/src
- main
- java/org/apache/spark/sql/execution/vectorized
- scala/org/apache/spark/sql
- execution
- arrow
- python
- test/scala/org/apache/spark/sql/execution
- arrow
- vectorized
17 files changed
+417
-73
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
214 | 214 | | |
215 | 215 | | |
216 | 216 | | |
| 217 | + | |
217 | 218 | | |
218 | 219 | | |
219 | 220 | | |
| |||
224 | 225 | | |
225 | 226 | | |
226 | 227 | | |
227 | | - | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
228 | 236 | | |
229 | 237 | | |
230 | 238 | | |
231 | 239 | | |
232 | | - | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
233 | 247 | | |
234 | 248 | | |
235 | 249 | | |
| |||
260 | 274 | | |
261 | 275 | | |
262 | 276 | | |
| 277 | + | |
263 | 278 | | |
264 | 279 | | |
265 | 280 | | |
266 | | - | |
267 | | - | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
268 | 284 | | |
269 | 285 | | |
270 | 286 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1883 | 1883 | | |
1884 | 1884 | | |
1885 | 1885 | | |
| 1886 | + | |
1886 | 1887 | | |
1887 | 1888 | | |
1888 | 1889 | | |
1889 | 1890 | | |
1890 | | - | |
| 1891 | + | |
| 1892 | + | |
1891 | 1893 | | |
1892 | 1894 | | |
1893 | 1895 | | |
| |||
1955 | 1957 | | |
1956 | 1958 | | |
1957 | 1959 | | |
| 1960 | + | |
1958 | 1961 | | |
1959 | 1962 | | |
1960 | 1963 | | |
| |||
1965 | 1968 | | |
1966 | 1969 | | |
1967 | 1970 | | |
| 1971 | + | |
| 1972 | + | |
1968 | 1973 | | |
1969 | 1974 | | |
1970 | 1975 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3086 | 3086 | | |
3087 | 3087 | | |
3088 | 3088 | | |
| 3089 | + | |
3089 | 3090 | | |
| 3091 | + | |
| 3092 | + | |
| 3093 | + | |
| 3094 | + | |
| 3095 | + | |
| 3096 | + | |
| 3097 | + | |
3090 | 3098 | | |
| 3099 | + | |
3091 | 3100 | | |
3092 | 3101 | | |
3093 | 3102 | | |
3094 | 3103 | | |
3095 | 3104 | | |
3096 | 3105 | | |
3097 | | - | |
3098 | | - | |
3099 | | - | |
3100 | | - | |
| 3106 | + | |
| 3107 | + | |
| 3108 | + | |
| 3109 | + | |
| 3110 | + | |
| 3111 | + | |
| 3112 | + | |
| 3113 | + | |
| 3114 | + | |
| 3115 | + | |
| 3116 | + | |
| 3117 | + | |
| 3118 | + | |
| 3119 | + | |
| 3120 | + | |
3101 | 3121 | | |
3102 | 3122 | | |
3103 | 3123 | | |
| |||
3106 | 3126 | | |
3107 | 3127 | | |
3108 | 3128 | | |
3109 | | - | |
3110 | | - | |
| 3129 | + | |
| 3130 | + | |
3111 | 3131 | | |
3112 | 3132 | | |
3113 | 3133 | | |
| |||
3385 | 3405 | | |
3386 | 3406 | | |
3387 | 3407 | | |
3388 | | - | |
3389 | | - | |
3390 | | - | |
| 3408 | + | |
| 3409 | + | |
| 3410 | + | |
3391 | 3411 | | |
3392 | 3412 | | |
3393 | 3413 | | |
3394 | 3414 | | |
| 3415 | + | |
| 3416 | + | |
| 3417 | + | |
| 3418 | + | |
| 3419 | + | |
| 3420 | + | |
| 3421 | + | |
| 3422 | + | |
| 3423 | + | |
| 3424 | + | |
| 3425 | + | |
| 3426 | + | |
| 3427 | + | |
| 3428 | + | |
| 3429 | + | |
| 3430 | + | |
| 3431 | + | |
| 3432 | + | |
| 3433 | + | |
| 3434 | + | |
| 3435 | + | |
| 3436 | + | |
| 3437 | + | |
| 3438 | + | |
| 3439 | + | |
| 3440 | + | |
| 3441 | + | |
| 3442 | + | |
| 3443 | + | |
| 3444 | + | |
| 3445 | + | |
| 3446 | + | |
| 3447 | + | |
| 3448 | + | |
| 3449 | + | |
| 3450 | + | |
| 3451 | + | |
| 3452 | + | |
| 3453 | + | |
| 3454 | + | |
| 3455 | + | |
| 3456 | + | |
| 3457 | + | |
| 3458 | + | |
| 3459 | + | |
| 3460 | + | |
| 3461 | + | |
| 3462 | + | |
| 3463 | + | |
| 3464 | + | |
| 3465 | + | |
| 3466 | + | |
| 3467 | + | |
| 3468 | + | |
| 3469 | + | |
| 3470 | + | |
| 3471 | + | |
| 3472 | + | |
| 3473 | + | |
| 3474 | + | |
| 3475 | + | |
| 3476 | + | |
| 3477 | + | |
| 3478 | + | |
3395 | 3479 | | |
3396 | 3480 | | |
3397 | 3481 | | |
| |||
3550 | 3634 | | |
3551 | 3635 | | |
3552 | 3636 | | |
3553 | | - | |
3554 | | - | |
| 3637 | + | |
| 3638 | + | |
3555 | 3639 | | |
3556 | 3640 | | |
3557 | 3641 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1619 | 1619 | | |
1620 | 1620 | | |
1621 | 1621 | | |
| 1622 | + | |
| 1623 | + | |
| 1624 | + | |
| 1625 | + | |
| 1626 | + | |
1622 | 1627 | | |
1623 | 1628 | | |
1624 | 1629 | | |
1625 | 1630 | | |
1626 | 1631 | | |
| 1632 | + | |
| 1633 | + | |
| 1634 | + | |
| 1635 | + | |
| 1636 | + | |
| 1637 | + | |
| 1638 | + | |
| 1639 | + | |
| 1640 | + | |
| 1641 | + | |
| 1642 | + | |
| 1643 | + | |
| 1644 | + | |
| 1645 | + | |
| 1646 | + | |
| 1647 | + | |
| 1648 | + | |
| 1649 | + | |
| 1650 | + | |
| 1651 | + | |
| 1652 | + | |
| 1653 | + | |
| 1654 | + | |
| 1655 | + | |
| 1656 | + | |
| 1657 | + | |
| 1658 | + | |
| 1659 | + | |
| 1660 | + | |
| 1661 | + | |
| 1662 | + | |
1627 | 1663 | | |
1628 | 1664 | | |
1629 | 1665 | | |
| |||
Lines changed: 34 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
320 | 320 | | |
321 | 321 | | |
322 | 322 | | |
| 323 | + | |
| 324 | + | |
| 325 | + | |
| 326 | + | |
323 | 327 | | |
324 | 328 | | |
325 | 329 | | |
| |||
575 | 579 | | |
576 | 580 | | |
577 | 581 | | |
| 582 | + | |
| 583 | + | |
| 584 | + | |
| 585 | + | |
| 586 | + | |
| 587 | + | |
| 588 | + | |
| 589 | + | |
| 590 | + | |
| 591 | + | |
| 592 | + | |
| 593 | + | |
| 594 | + | |
| 595 | + | |
| 596 | + | |
| 597 | + | |
| 598 | + | |
| 599 | + | |
| 600 | + | |
| 601 | + | |
| 602 | + | |
| 603 | + | |
| 604 | + | |
| 605 | + | |
| 606 | + | |
| 607 | + | |
| 608 | + | |
| 609 | + | |
| 610 | + | |
| 611 | + | |
578 | 612 | | |
579 | 613 | | |
580 | 614 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3154 | 3154 | | |
3155 | 3155 | | |
3156 | 3156 | | |
| 3157 | + | |
3157 | 3158 | | |
3158 | 3159 | | |
3159 | | - | |
| 3160 | + | |
| 3161 | + | |
3160 | 3162 | | |
3161 | 3163 | | |
3162 | 3164 | | |
Lines changed: 2 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
74 | 74 | | |
75 | 75 | | |
76 | 76 | | |
| 77 | + | |
77 | 78 | | |
78 | 79 | | |
79 | | - | |
| 80 | + | |
80 | 81 | | |
81 | 82 | | |
82 | 83 | | |
| |||
0 commit comments