shyjsarah commented on code in PR #760:
URL: https://github.com/apache/paimon-rust/pull/760#discussion_r3893068274


##########
crates/integrations/datafusion/src/lateral_vector_search.rs:
##########
@@ -352,9 +450,54 @@ struct LateralVectorSearchExec {
     query_vector_expr: Arc<dyn PhysicalExpr>,
     limit: usize,
     output_schema: ArrowSchemaRef,
+    filter: Option<Predicate>,
+    prepared_filter_cache: Arc<ExecutionPreparedFilterCache>,
     plan_properties: Arc<PlanProperties>,
 }
 
+#[derive(Debug)]
+struct ExecutionPreparedFilterEntry {
+    context: Weak<TaskContext>,
+    prepared_filter: Arc<OnceCell<PreparedVectorSearchFilter>>,

Review Comment:
   Fixed in f0e2b08. Each partition stream now owns a completion lease for the 
execution-scoped prepared filter. Sequential/concurrent partitions continue 
sharing the same OnceCell, and dropping the final lease for every partition 
removes that exact cache entry immediately, even if the TaskContext and 
reusable physical plan remain alive. The lease is also released on stream 
cancellation/error. Added tests for immediate release, exact-entry eviction 
across concurrent executions, and cloned in-flight leases; the 
sequential-partition snapshot regression remains covered.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to