diff --git a/src/executor/limit.rs b/src/executor/limit.rs index f0986cdd..727f8bee 100644 --- a/src/executor/limit.rs +++ b/src/executor/limit.rs @@ -22,6 +22,9 @@ impl LimitExecutor { let batch = batch?; if dummy_chunk.is_none() { dummy_chunk = Some(batch.slice(0..0)); + if self.offset == 0 && self.limit == 0 { + break; + } } let cardinality = batch.cardinality(); let start = processed.max(self.offset) - processed; diff --git a/tests/sql/limit.slt b/tests/sql/limit.slt index aeede32c..df23aa4f 100644 --- a/tests/sql/limit.slt +++ b/tests/sql/limit.slt @@ -40,3 +40,11 @@ select v1 from t limit 0 query I select v1 from t offset 5 ---- + +# test case for https://github.com/risinglightdb/risinglight/issues/264 +statement ok +insert into t values (1, 1) + +query I +select v1 from t limit 0 +---- \ No newline at end of file