Describe the bug
If we try to merge two streams that are non overlapping (e.g. 0..20 and 20..40) then the following panic is produced:
thread 'test_merge_2_no_overlap' panicked at 'assertion failed: i < self.len()', /Users/alamb/.cargo/registry/src/github.com-1ecc6299db9ec823/arrow-8.0.0/src/array/array_primitive.rs:120:9
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Note this won't affect any users of DataFusion unless they are using externalized sort that @yjshen has recently been working on or directly use SortPreservingMergeStream as IOx does
To Reproduce
See fuzztester PR: #1678
Expected behavior
Correct answers come out, with no panic
Additional context
Found in some of our tests in IOx: https://github.com/influxdata/influxdb_iox/issues/3530
I am fairly confident it is a corner case in the code from #1596