thisisnic commented on issue #47980:
URL: https://github.com/apache/arrow/issues/47980#issuecomment-3529074882

   Hi @r2evans, looks like the issue is in DuckDB, and not Arrow - the Arrow 
and dplyr versions match, so I you'd need to report this to them.  I made a 
reprex which shows all 3 side by side:
   
   ``` r
   library(arrow)
   #> 
   #> Attaching package: 'arrow'
   #> The following object is masked from 'package:utils':
   #> 
   #>     timestamp
   library(dplyr)
   #> 
   #> Attaching package: 'dplyr'
   #> The following objects are masked from 'package:stats':
   #> 
   #>     filter, lag
   #> The following objects are masked from 'package:base':
   #> 
   #>     intersect, setdiff, setequal, union
   
   tbl <- tibble::tibble(Quux = LETTERS)
   arrow_tbl <- arrow_table(tbl)
   duck_tbl <- arrow_tbl |> to_duckdb()
   
   ltr <- list(Quux="A")
   
   # All match
   tbl |> filter(Quux == ltr$Quux) |> collect()
   #> # A tibble: 1 × 1
   #>   Quux 
   #>   <chr>
   #> 1 A
   arrow_tbl |> filter(Quux == ltr$Quux) |> collect()
   #> # A tibble: 1 × 1
   #>   Quux 
   #>   <chr>
   #> 1 A
   duck_tbl |> filter(Quux == ltr$Quux) |> collect()
   #> # A tibble: 1 × 1
   #>   Quux 
   #>   <chr>
   #> 1 A
   
   # All match
   tbl |> rename_with(.fn = tolower) |> filter(quux == ltr$Quux) |> collect()
   #> # A tibble: 1 × 1
   #>   quux 
   #>   <chr>
   #> 1 A
   arrow_tbl |> rename_with(.fn = tolower) |> filter(quux == ltr$Quux) |> 
collect()
   #> # A tibble: 1 × 1
   #>   quux 
   #>   <chr>
   #> 1 A
   duck_tbl |> rename_with(.fn = tolower) |> filter(quux == ltr$Quux) |> 
collect()
   #> # A tibble: 1 × 1
   #>   quux 
   #>   <chr>
   #> 1 A
   
   # All match
   ltr <- list(quux="A")
   tbl |> filter(Quux == ltr$quux) |> collect()
   #> # A tibble: 1 × 1
   #>   Quux 
   #>   <chr>
   #> 1 A
   arrow_tbl |> filter(Quux == ltr$quux) |> collect()
   #> # A tibble: 1 × 1
   #>   Quux 
   #>   <chr>
   #> 1 A
   duck_tbl |> filter(Quux == ltr$quux) |> collect()
   #> # A tibble: 1 × 1
   #>   Quux 
   #>   <chr>
   #> 1 A
   
   
   # duckdb returns 0 rows
   tbl |> rename_with(.fn = tolower) |> filter(quux == ltr$quux) |> collect()
   #> # A tibble: 1 × 1
   #>   quux 
   #>   <chr>
   #> 1 A
   arrow_tbl |> rename_with(.fn = tolower) |> filter(quux == ltr$quux) |> 
collect()
   #> # A tibble: 1 × 1
   #>   quux 
   #>   <chr>
   #> 1 A
   duck_tbl |> rename_with(.fn = tolower) |> filter(quux == ltr$quux) |> 
collect()
   #> # A tibble: 0 × 1
   #> # ℹ 1 variable: quux <chr>
   
   # All match
   tbl |> rename_with(.fn = tolower) |> filter(quux == "A") |> collect()
   #> # A tibble: 1 × 1
   #>   quux 
   #>   <chr>
   #> 1 A
   arrow_tbl |> rename_with(.fn = tolower) |> filter(quux == "A") |> collect()
   #> # A tibble: 1 × 1
   #>   quux 
   #>   <chr>
   #> 1 A
   duck_tbl |> rename_with(.fn = tolower) |> filter(quux == "A") |> collect()
   #> # A tibble: 1 × 1
   #>   quux 
   #>   <chr>
   #> 1 A
   ```
   
   <sup>Created on 2025-11-13 with [reprex 
v2.1.1](https://reprex.tidyverse.org)</sup>
   


-- 
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