Repository navigation
Commit 450fe2f
committed
fix(bigquery): keep the Arrow schema for empty results
A query that returned no rows with ARROW yielded no batches, so
to_arrow() fell back to the iterator's schema, which jobs.query omits
for ARROW, and returned a table without columns. jobs.query sends
arrowSchema even for zero rows, but the default job stream sends
nothing for them.
to_arrow_iterable() now yields one empty RecordBatch if no rows arrive,
like _EmptyRowIterator already does. It has the Arrow schema from the
first page or the read session; otherwise the schema from
jobs.getQueryResults, which the jobs.insert path has; otherwise no
columns. to_arrow() and pyarrow.Table.from_batches() keep that schema.1 parent 8ac01b9 commit 450fe2f
3 files changed
Lines changed: 193 additions & 5 deletions
File tree
- packages/google-cloud-bigquery
- google/cloud/bigquery
- tests
- system
- unit
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
17 | 17 | | |
18 | 18 | | |
19 | 19 | | |
20 | | - | |
| 20 | + | |
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
| |||
134 | 134 | | |
135 | 135 | | |
136 | 136 | | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
137 | 160 | | |
138 | 161 | | |
139 | 162 | | |
| |||
231 | 254 | | |
232 | 255 | | |
233 | 256 | | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
234 | 260 | | |
235 | 261 | | |
236 | 262 | | |
| |||
264 | 290 | | |
265 | 291 | | |
266 | 292 | | |
| 293 | + | |
267 | 294 | | |
268 | 295 | | |
269 | 296 | | |
270 | 297 | | |
271 | 298 | | |
272 | 299 | | |
273 | 300 | | |
| 301 | + | |
| 302 | + | |
274 | 303 | | |
275 | 304 | | |
276 | 305 | | |
| |||
293 | 322 | | |
294 | 323 | | |
295 | 324 | | |
| 325 | + | |
296 | 326 | | |
297 | 327 | | |
298 | 328 | | |
| |||
318 | 348 | | |
319 | 349 | | |
320 | 350 | | |
| 351 | + | |
321 | 352 | | |
322 | 353 | | |
323 | 354 | | |
| |||
328 | 359 | | |
329 | 360 | | |
330 | 361 | | |
| 362 | + | |
| 363 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
878 | 878 | | |
879 | 879 | | |
880 | 880 | | |
| 881 | + | |
| 882 | + | |
| 883 | + | |
| 884 | + | |
| 885 | + | |
| 886 | + | |
| 887 | + | |
| 888 | + | |
| 889 | + | |
| 890 | + | |
| 891 | + | |
| 892 | + | |
| 893 | + | |
| 894 | + | |
| 895 | + | |
| 896 | + | |
| 897 | + | |
| 898 | + | |
| 899 | + | |
| 900 | + | |
| 901 | + | |
| 902 | + | |
| 903 | + | |
| 904 | + | |
| 905 | + | |
| 906 | + | |
| 907 | + | |
| 908 | + | |
| 909 | + | |
| 910 | + | |
| 911 | + | |
| 912 | + | |
| 913 | + | |
| 914 | + | |
| 915 | + | |
| 916 | + | |
| 917 | + | |
| 918 | + | |
| 919 | + | |
| 920 | + | |
| 921 | + | |
| 922 | + | |
| 923 | + | |
| 924 | + | |
| 925 | + | |
| 926 | + | |
| 927 | + | |
| 928 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
232 | 232 | | |
233 | 233 | | |
234 | 234 | | |
235 | | - | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
236 | 240 | | |
237 | 241 | | |
238 | 242 | | |
| |||
1471 | 1475 | | |
1472 | 1476 | | |
1473 | 1477 | | |
1474 | | - | |
1475 | | - | |
| 1478 | + | |
| 1479 | + | |
| 1480 | + | |
| 1481 | + | |
| 1482 | + | |
| 1483 | + | |
| 1484 | + | |
| 1485 | + | |
| 1486 | + | |
| 1487 | + | |
| 1488 | + | |
| 1489 | + | |
| 1490 | + | |
1476 | 1491 | | |
1477 | | - | |
| 1492 | + | |
| 1493 | + | |
1478 | 1494 | | |
1479 | 1495 | | |
1480 | 1496 | | |
| 1497 | + | |
| 1498 | + | |
| 1499 | + | |
| 1500 | + | |
| 1501 | + | |
| 1502 | + | |
| 1503 | + | |
| 1504 | + | |
| 1505 | + | |
| 1506 | + | |
| 1507 | + | |
| 1508 | + | |
| 1509 | + | |
| 1510 | + | |
| 1511 | + | |
| 1512 | + | |
| 1513 | + | |
| 1514 | + | |
| 1515 | + | |
| 1516 | + | |
| 1517 | + | |
| 1518 | + | |
| 1519 | + | |
| 1520 | + | |
| 1521 | + | |
| 1522 | + | |
| 1523 | + | |
| 1524 | + | |
| 1525 | + | |
| 1526 | + | |
| 1527 | + | |
| 1528 | + | |
| 1529 | + | |
| 1530 | + | |
| 1531 | + | |
| 1532 | + | |
| 1533 | + | |
| 1534 | + | |
| 1535 | + | |
| 1536 | + | |
| 1537 | + | |
| 1538 | + | |
| 1539 | + | |
| 1540 | + | |
| 1541 | + | |
| 1542 | + | |
| 1543 | + | |
| 1544 | + | |
| 1545 | + | |
| 1546 | + | |
| 1547 | + | |
| 1548 | + | |
| 1549 | + | |
| 1550 | + | |
| 1551 | + | |
| 1552 | + | |
| 1553 | + | |
| 1554 | + | |
| 1555 | + | |
| 1556 | + | |
| 1557 | + | |
| 1558 | + | |
| 1559 | + | |
| 1560 | + | |
| 1561 | + | |
| 1562 | + | |
| 1563 | + | |
| 1564 | + | |
| 1565 | + | |
| 1566 | + | |
| 1567 | + | |
| 1568 | + | |
| 1569 | + | |
| 1570 | + | |
| 1571 | + | |
| 1572 | + | |
| 1573 | + | |
| 1574 | + | |
| 1575 | + | |
| 1576 | + | |
| 1577 | + | |
| 1578 | + | |
| 1579 | + | |
| 1580 | + | |
| 1581 | + | |
| 1582 | + | |
| 1583 | + | |
| 1584 | + | |
| 1585 | + | |
| 1586 | + | |
| 1587 | + | |
1481 | 1588 | | |
1482 | 1589 | | |
1483 | 1590 | | |
| |||
0 commit comments