Dragoș Moldovan-Grünfeld created ARROW-15858:
------------------------------------------------

             Summary: [R][C++] Support duration creation from integer
                 Key: ARROW-15858
                 URL: https://issues.apache.org/jira/browse/ARROW-15858
             Project: Apache Arrow
          Issue Type: Bug
          Components: C++, R
            Reporter: Dragoș Moldovan-Grünfeld


I would expect both {{a}} and {{b}} to create a {{duration}} object of 32 
seconds, but the second one returns an {{int32}}
{code:r}
library(arrow, warn.conflicts = FALSE)

a <- as.difftime(32, units = "secs")
b <- as.difftime(32L, units = "secs")

Array$create(a)
#> Array
#> <duration[s]>
#> [
#>   32
#> ]
Array$create(b)
#> Array
#> <int32>
#> [
#>   32
#> ]
{code}
If I try to be explicit, I get somewhat of a clue why that might be happening:
{code:r}
 
Array$create(a, type = duration())
#> Array
#> <duration[s]>
#> [
#>   32
#> ]
Array$create(b, type = duration())
#> Error:
#> ! NotImplemented: Extend
{code}
Nevertheless, the fallback to creating an integer was unexpected.

Also, not sure if this is a bug, an improvement or a new feature.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to