Commit eb3c564
## Which issue does this PR close?
Part of #22435
## What changes are included?
Adds `try_to_proto` to `HashTableLookupExpr` so it participates in the
expression-local serialization pattern introduced in #21929.
`HashTableLookupExpr` holds a runtime `Arc<Map>` that cannot be
serialized, so `try_to_proto` replaces it with `lit(true)`. This is
safe because the filter is a performance optimisation only — `lit(true)`
passes all rows and the join produces correct results either way.
The centralized arm in `to_proto.rs` remains as a fallback for now.
Cleanup can follow in a separate PR once this lands.
## Are these changes tested?
Yes — covered by the existing `roundtrip_hash_table_lookup_expr_to_lit`
test in `datafusion/proto/tests/cases/roundtrip_physical_plan.rs`.
## Are there any user-facing changes?
No.
---------
Co-authored-by: Anurag Tryambak Raut <anuragtryambakraut@Anurags-MacBook-Air.local>
1 parent e4e8f23 commit eb3c564
5 files changed
Lines changed: 43 additions & 30 deletions
File tree
- datafusion
- physical-plan
- src/joins/hash_join
- proto
- src/physical_plan
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
42 | 42 | | |
43 | 43 | | |
44 | 44 | | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
45 | 50 | | |
46 | 51 | | |
47 | 52 | | |
| |||
65 | 70 | | |
66 | 71 | | |
67 | 72 | | |
| 73 | + | |
| 74 | + | |
68 | 75 | | |
69 | 76 | | |
70 | 77 | | |
| |||
Lines changed: 32 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
215 | 215 | | |
216 | 216 | | |
217 | 217 | | |
218 | | - | |
219 | 218 | | |
220 | 219 | | |
221 | 220 | | |
| |||
241 | 240 | | |
242 | 241 | | |
243 | 242 | | |
244 | | - | |
245 | 243 | | |
246 | 244 | | |
247 | 245 | | |
| |||
337 | 335 | | |
338 | 336 | | |
339 | 337 | | |
340 | | - | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
| 353 | + | |
| 354 | + | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
| 360 | + | |
| 361 | + | |
| 362 | + | |
| 363 | + | |
| 364 | + | |
| 365 | + | |
| 366 | + | |
| 367 | + | |
| 368 | + | |
| 369 | + | |
341 | 370 | | |
342 | 371 | | |
343 | 372 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
65 | 65 | | |
66 | 66 | | |
67 | 67 | | |
68 | | - | |
| 68 | + | |
69 | 69 | | |
70 | 70 | | |
71 | 71 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
39 | 39 | | |
40 | 40 | | |
41 | 41 | | |
42 | | - | |
| 42 | + | |
43 | 43 | | |
44 | 44 | | |
45 | 45 | | |
| |||
302 | 302 | | |
303 | 303 | | |
304 | 304 | | |
305 | | - | |
306 | | - | |
307 | | - | |
308 | | - | |
309 | | - | |
310 | | - | |
311 | | - | |
312 | | - | |
313 | | - | |
314 | | - | |
315 | | - | |
316 | | - | |
317 | | - | |
318 | | - | |
319 | | - | |
320 | | - | |
321 | | - | |
322 | | - | |
323 | | - | |
324 | | - | |
325 | | - | |
326 | | - | |
327 | | - | |
328 | | - | |
329 | | - | |
330 | 305 | | |
331 | 306 | | |
332 | 307 | | |
| |||
0 commit comments