Commit b72b7ba
feat: add streaming flag to ArrowScan.to_record_batches
When streaming=True, batches are yielded as they are produced by PyArrow
without materializing entire files into memory. Files are still processed
sequentially, preserving file ordering. The inner method handles the
global limit correctly when called with all tasks, avoiding double-counting.
This addresses the OOM issue in apache#3036 for single-file-at-a-time streaming.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>1 parent 8f8a2d2 commit b72b7ba
File tree
4 files changed
+136
-26
lines changed- mkdocs/docs
- pyiceberg
- io
- table
- tests/io
4 files changed
+136
-26
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
362 | 362 | | |
363 | 363 | | |
364 | 364 | | |
| 365 | + | |
| 366 | + | |
| 367 | + | |
| 368 | + | |
| 369 | + | |
| 370 | + | |
| 371 | + | |
365 | 372 | | |
366 | 373 | | |
367 | 374 | | |
| |||
1635 | 1642 | | |
1636 | 1643 | | |
1637 | 1644 | | |
| 1645 | + | |
| 1646 | + | |
| 1647 | + | |
| 1648 | + | |
| 1649 | + | |
| 1650 | + | |
| 1651 | + | |
| 1652 | + | |
| 1653 | + | |
1638 | 1654 | | |
1639 | 1655 | | |
1640 | 1656 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1761 | 1761 | | |
1762 | 1762 | | |
1763 | 1763 | | |
1764 | | - | |
| 1764 | + | |
| 1765 | + | |
| 1766 | + | |
1765 | 1767 | | |
1766 | 1768 | | |
1767 | 1769 | | |
| |||
1770 | 1772 | | |
1771 | 1773 | | |
1772 | 1774 | | |
| 1775 | + | |
| 1776 | + | |
| 1777 | + | |
1773 | 1778 | | |
1774 | 1779 | | |
1775 | 1780 | | |
| |||
1781 | 1786 | | |
1782 | 1787 | | |
1783 | 1788 | | |
1784 | | - | |
1785 | | - | |
1786 | | - | |
1787 | | - | |
1788 | | - | |
1789 | | - | |
1790 | | - | |
1791 | | - | |
1792 | | - | |
1793 | | - | |
1794 | | - | |
1795 | | - | |
1796 | | - | |
1797 | | - | |
1798 | | - | |
| 1789 | + | |
| 1790 | + | |
| 1791 | + | |
| 1792 | + | |
| 1793 | + | |
| 1794 | + | |
| 1795 | + | |
| 1796 | + | |
| 1797 | + | |
| 1798 | + | |
| 1799 | + | |
| 1800 | + | |
| 1801 | + | |
| 1802 | + | |
| 1803 | + | |
| 1804 | + | |
| 1805 | + | |
| 1806 | + | |
| 1807 | + | |
| 1808 | + | |
| 1809 | + | |
| 1810 | + | |
| 1811 | + | |
| 1812 | + | |
| 1813 | + | |
| 1814 | + | |
| 1815 | + | |
| 1816 | + | |
1799 | 1817 | | |
1800 | | - | |
| 1818 | + | |
| 1819 | + | |
1801 | 1820 | | |
1802 | | - | |
1803 | | - | |
1804 | | - | |
1805 | | - | |
1806 | | - | |
1807 | | - | |
1808 | | - | |
1809 | 1821 | | |
1810 | 1822 | | |
1811 | 1823 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2157 | 2157 | | |
2158 | 2158 | | |
2159 | 2159 | | |
2160 | | - | |
| 2160 | + | |
2161 | 2161 | | |
2162 | 2162 | | |
2163 | 2163 | | |
| |||
2166 | 2166 | | |
2167 | 2167 | | |
2168 | 2168 | | |
| 2169 | + | |
| 2170 | + | |
2169 | 2171 | | |
2170 | 2172 | | |
2171 | 2173 | | |
| |||
2178 | 2180 | | |
2179 | 2181 | | |
2180 | 2182 | | |
2181 | | - | |
| 2183 | + | |
2182 | 2184 | | |
2183 | 2185 | | |
2184 | 2186 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3106 | 3106 | | |
3107 | 3107 | | |
3108 | 3108 | | |
| 3109 | + | |
| 3110 | + | |
| 3111 | + | |
| 3112 | + | |
| 3113 | + | |
| 3114 | + | |
| 3115 | + | |
| 3116 | + | |
| 3117 | + | |
| 3118 | + | |
| 3119 | + | |
| 3120 | + | |
| 3121 | + | |
| 3122 | + | |
| 3123 | + | |
| 3124 | + | |
| 3125 | + | |
| 3126 | + | |
| 3127 | + | |
| 3128 | + | |
| 3129 | + | |
| 3130 | + | |
| 3131 | + | |
| 3132 | + | |
| 3133 | + | |
| 3134 | + | |
| 3135 | + | |
| 3136 | + | |
| 3137 | + | |
| 3138 | + | |
| 3139 | + | |
| 3140 | + | |
| 3141 | + | |
| 3142 | + | |
| 3143 | + | |
| 3144 | + | |
| 3145 | + | |
| 3146 | + | |
| 3147 | + | |
| 3148 | + | |
| 3149 | + | |
| 3150 | + | |
| 3151 | + | |
| 3152 | + | |
| 3153 | + | |
| 3154 | + | |
| 3155 | + | |
| 3156 | + | |
| 3157 | + | |
| 3158 | + | |
| 3159 | + | |
| 3160 | + | |
| 3161 | + | |
| 3162 | + | |
| 3163 | + | |
| 3164 | + | |
| 3165 | + | |
| 3166 | + | |
| 3167 | + | |
| 3168 | + | |
| 3169 | + | |
| 3170 | + | |
| 3171 | + | |
| 3172 | + | |
| 3173 | + | |
| 3174 | + | |
| 3175 | + | |
| 3176 | + | |
| 3177 | + | |
| 3178 | + | |
| 3179 | + | |
| 3180 | + | |
| 3181 | + | |
| 3182 | + | |
| 3183 | + | |
| 3184 | + | |
| 3185 | + | |
| 3186 | + | |
| 3187 | + | |
| 3188 | + | |
3109 | 3189 | | |
3110 | 3190 | | |
3111 | 3191 | | |
| |||
0 commit comments