@@ -309,11 +309,10 @@ py::object PyArrowFilterPushdown::TransformFilter(TableFilterSet &filter_collect
309309 unordered_map<idx_t , string> &columns,
310310 unordered_map<idx_t , idx_t > filter_to_col,
311311 const ClientProperties &config, const ArrowTableSchema &arrow_table) {
312- auto &filters_map = filter_collection.filters ;
313312
314313 py::object expression = py::none ();
315- for (auto &it : filters_map ) {
316- auto column_idx = it. first ;
314+ for (auto &entry : filter_collection ) {
315+ auto column_idx = entry. ColumnIndex () ;
317316 auto &column_name = columns[column_idx];
318317
319318 vector<string> column_ref;
@@ -322,7 +321,8 @@ py::object PyArrowFilterPushdown::TransformFilter(TableFilterSet &filter_collect
322321 D_ASSERT (columns.find (column_idx) != columns.end ());
323322
324323 auto &arrow_type = arrow_table.GetColumns ().at (filter_to_col.at (column_idx));
325- py::object child_expression = TransformFilterRecursive (*it.second , column_ref, config.time_zone , *arrow_type);
324+ py::object child_expression =
325+ TransformFilterRecursive (entry.Filter (), column_ref, config.time_zone , *arrow_type);
326326 if (child_expression.is (py::none ())) {
327327 continue ;
328328 } else if (expression.is (py::none ())) {
0 commit comments