Skip to content

Commit 1755937

Browse files
committed
Fix CaseBuilder to preserve state correctly in when() method
1 parent d6cdfe3 commit 1755937

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed

python/tests/test_expr.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -271,8 +271,8 @@ def test_case_builder_when_handles_are_independent():
271271
]
272272
assert result.column(1).to_pylist() == [
273273
"flag-true",
274-
"fallback-two",
275-
"gt20",
274+
"gt10",
275+
"gt10",
276276
"fallback-two",
277277
]
278278

src/expr/conditional_expr.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,9 +68,9 @@ impl PyCaseBuilder {
6868
#[pymethods]
6969
impl PyCaseBuilder {
7070
fn when(&self, when: PyExpr, then: PyExpr) -> PyDataFusionResult<PyCaseBuilder> {
71-
let builder = self.take_case_builder()?;
71+
let mut builder = self.take_case_builder()?;
7272
let next_builder = builder.when(when.expr, then.expr);
73-
self.store_case_builder(next_builder.clone());
73+
self.store_case_builder(builder);
7474
Ok(next_builder.into())
7575
}
7676

0 commit comments

Comments
 (0)