Commit 6b8931a
fix: [iceberg] Keep deep copy for Iceberg Java integration scan path
CometScanWrapper unconditionally set isFfiSafe=true, which told native
ScanExec to skip deep copies for all scans. This is correct for
CometScanExec (native_iceberg_compat) which now uses immutable Arrow
readers, but incorrect for CometBatchScanExec (Iceberg Java integration
via SupportsComet) which still uses mutable buffers.
Make isFfiSafe conditional on the scan type: true for CometScanExec,
false for CometBatchScanExec. Also remove the stale
hasScanUsingMutableBuffers check for CometScanExec since PR apache#3411
replaced mutable buffers with immutable Arrow readers.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>1 parent 4fe6452 commit 6b8931a
4 files changed
Lines changed: 12 additions & 10 deletions
File tree
- spark/src/main/scala/org/apache
- comet
- rules
- serde/operator
- spark/sql/comet
Lines changed: 1 addition & 6 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
22 | 22 | | |
23 | 23 | | |
24 | 24 | | |
25 | | - | |
| 25 | + | |
26 | 26 | | |
27 | 27 | | |
28 | 28 | | |
| |||
155 | 155 | | |
156 | 156 | | |
157 | 157 | | |
158 | | - | |
159 | | - | |
160 | 158 | | |
161 | 159 | | |
162 | 160 | | |
| |||
165 | 163 | | |
166 | 164 | | |
167 | 165 | | |
168 | | - | |
169 | | - | |
170 | | - | |
171 | 166 | | |
172 | 167 | | |
173 | 168 | | |
| |||
Lines changed: 3 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
37 | 37 | | |
38 | 38 | | |
39 | 39 | | |
40 | | - | |
| 40 | + | |
41 | 41 | | |
42 | 42 | | |
43 | 43 | | |
| |||
61 | 61 | | |
62 | 62 | | |
63 | 63 | | |
64 | | - | |
| 64 | + | |
65 | 65 | | |
66 | 66 | | |
67 | 67 | | |
| |||
93 | 93 | | |
94 | 94 | | |
95 | 95 | | |
96 | | - | |
| 96 | + | |
97 | 97 | | |
98 | 98 | | |
99 | 99 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
271 | 271 | | |
272 | 272 | | |
273 | 273 | | |
274 | | - | |
| 274 | + | |
275 | 275 | | |
276 | 276 | | |
277 | 277 | | |
| |||
Lines changed: 7 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2072 | 2072 | | |
2073 | 2073 | | |
2074 | 2074 | | |
| 2075 | + | |
| 2076 | + | |
| 2077 | + | |
| 2078 | + | |
| 2079 | + | |
| 2080 | + | |
| 2081 | + | |
2075 | 2082 | | |
2076 | 2083 | | |
2077 | 2084 | | |
| |||
0 commit comments