Commit c4b4515
test(blob): cover mixed-nullability batches in one write
The blob encoder derives each page's definition interpretation from the
validity bitmap of the batch it saw, so a single write whose batches
disagree about nullability used to panic in debug builds and lose the
nulls in release builds. #8070 fixed this by closing the pending
descriptor page whenever the interpretation changes, but the Rust
coverage stops at the encoder; the dataset write path is only covered
from Python, via compaction.
This adds a `Dataset::write` regression test for a nullable blob column
whose batches disagree, in both orders.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>1 parent 389fb70 commit c4b4515
1 file changed
Lines changed: 61 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4432 | 4432 | | |
4433 | 4433 | | |
4434 | 4434 | | |
| 4435 | + | |
| 4436 | + | |
| 4437 | + | |
| 4438 | + | |
| 4439 | + | |
| 4440 | + | |
| 4441 | + | |
| 4442 | + | |
| 4443 | + | |
| 4444 | + | |
| 4445 | + | |
| 4446 | + | |
| 4447 | + | |
| 4448 | + | |
| 4449 | + | |
| 4450 | + | |
| 4451 | + | |
| 4452 | + | |
| 4453 | + | |
| 4454 | + | |
| 4455 | + | |
| 4456 | + | |
| 4457 | + | |
| 4458 | + | |
| 4459 | + | |
| 4460 | + | |
| 4461 | + | |
| 4462 | + | |
| 4463 | + | |
| 4464 | + | |
| 4465 | + | |
| 4466 | + | |
| 4467 | + | |
| 4468 | + | |
| 4469 | + | |
| 4470 | + | |
| 4471 | + | |
| 4472 | + | |
| 4473 | + | |
| 4474 | + | |
| 4475 | + | |
| 4476 | + | |
| 4477 | + | |
| 4478 | + | |
| 4479 | + | |
| 4480 | + | |
| 4481 | + | |
| 4482 | + | |
| 4483 | + | |
| 4484 | + | |
| 4485 | + | |
| 4486 | + | |
| 4487 | + | |
| 4488 | + | |
| 4489 | + | |
| 4490 | + | |
| 4491 | + | |
| 4492 | + | |
| 4493 | + | |
| 4494 | + | |
| 4495 | + | |
4435 | 4496 | | |
4436 | 4497 | | |
4437 | 4498 | | |
| |||
0 commit comments