influxdata / influxdata/influxdb
flaky test in `influxdb3_write` crate - write_buffer::tests::returns_chunks_across_parquet_and_buffered_data
- Dominant language
- Rust
- Stars
- 31.7k
- Forks
- 3.7k
- Avg merge
- 13h 37m
- Merged PRs (30d)
- 8
Description
To reproduce this, run the following command from the root of the repo:
```
while cargo nextest run --workspace write_buffer::tests::returns_chunks_across_parquet_and_buffered_data ;do echo "trying again" ;done
```
The failure output looks like the following:
```
failures:
write_buffer::tests::returns_chunks_across_parquet_and_buffered_data
test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 53 filtered out; finished in 0.10s
--- STDERR: influxdb3_write write_buffer::tests::returns_chunks_across_parquet_and_buffered_data ---
thread 'write_buffer::tests::returns_chunks_across_parquet_and_buffered_data' panicked at influxdb3_write/src/write_buffer/mod.rs:1515:9:
assertion failed: `(left == right)`:
expected:
[
"+-----+----------------------+",
"| bar | time |",
"+-----+----------------------+",
"| 1.0 | 1970-01-01T00:00:10Z |",
"| 2.0 | 1970-01-01T00:01:05Z |",
"| 3.0 | 1970-01-01T00:02:27Z |",
"| 4.0 | 1970-01-01T00:04:10Z |",
"| 5.0 | 1970-01-01T00:05:00Z |",
"| 6.0 | 1970-01-01T00:05:30Z |",
"+-----+----------------------+",
]
actual:
[
"+-----+----------------------+",
"| bar | time |",
"+-----+----------------------+",
"| 1.0 | 1970-01-01T00:00:10Z |",
"| 2.0 | 1970-01-01T00:01:05Z |",
"| 4.0 | 1970-01-01T00:04:10Z |",
"| 5.0 | 1970-01-01T00:05:00Z |",
"| 6.0 | 1970-01-01T00:05:30Z |",
"+-----+----------------------+",
]
Diff < left / right > :
[
"+-----+----------------------+",
"| bar | time |",
"+-----+----------------------+",
"| 1.0 | 1970-01-01T00:00:10Z |",
"| 2.0 | 1970-01-01T00:01:05Z |",
< "| 3.0 | 1970-01-01T00:02:27Z |",
"| 4.0 | 1970-01-01T00:04:10Z |",
"| 5.0 | 1970-01-01T00:05:00Z |",
"| 6.0 | 1970-01-01T00:05:30Z |",
"+-----+----------------------+",
]
```
Contributor guide
Research direction
Start by running the provided cargo nextest command from the repository root and inspect influxdb3_write/src/write_buffer/mod.rs around line 1515, including write_buffer::tests::returns_chunks_across_parquet_and_buffered_data. Reproduce the missing row and trace why the test sometimes omits it; done means the test passes consistently with all six expected rows.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- databases, testing
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100