You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by om...@apache.org on 2023/01/04 20:51:23 UTC
[arrow-julia] branch cv/non-concrete-missing-fix created (now a3960ae)
This is an automated email from the ASF dual-hosted git repository.
omus pushed a change to branch cv/non-concrete-missing-fix
in repository https://gitbox.apache.org/repos/asf/arrow-julia.git
at a3960ae Fix issue with missing and non-concrete Arrow types
This branch includes the following new commits:
new a3960ae Fix issue with missing and non-concrete Arrow types
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
[arrow-julia] 01/01: Fix issue with missing and non-concrete Arrow types
Posted by om...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
omus pushed a commit to branch cv/non-concrete-missing-fix
in repository https://gitbox.apache.org/repos/asf/arrow-julia.git
commit a3960ae12632dc6f817aadb11fb6bdc038ef8405
Author: Curtis Vogt <cu...@gmail.com>
AuthorDate: Wed Jan 4 14:31:44 2023 -0600
Fix issue with missing and non-concrete Arrow types
---
src/ArrowTypes/src/ArrowTypes.jl | 3 +++
test/runtests.jl | 6 ++++++
2 files changed, 9 insertions(+)
diff --git a/src/ArrowTypes/src/ArrowTypes.jl b/src/ArrowTypes/src/ArrowTypes.jl
index 115c102..a35fae4 100644
--- a/src/ArrowTypes/src/ArrowTypes.jl
+++ b/src/ArrowTypes/src/ArrowTypes.jl
@@ -344,6 +344,9 @@ function ToArrow(x::A) where {A}
for i = 2:length(x)
@inbounds T = promoteunion(T, typeof(toarrow(x[i])))
end
+ if T === Missing
+ T = promoteunion(T, typeof(toarrow(default(S))))
+ end
end
return ToArrow{T, A}(x)
end
diff --git a/test/runtests.jl b/test/runtests.jl
index 343ee77..86072fc 100644
--- a/test/runtests.jl
+++ b/test/runtests.jl
@@ -548,6 +548,12 @@ original_table = (; col = [ ZonedDateTime(DateTime(1, 2, 3, 4, 5, 6), tz"UTC+3")
table = Arrow.Table(joinpath(@__DIR__, "old_zdt.arrow"))
@test original_table.col == table.col
+# https://github.com/apache/arrow-julia/issues/367
+t = (; x=Union{ZonedDateTime,Missing}[missing])
+a = Arrow.Table(Arrow.tobuffer(t))
+@test Tables.schema(a) == Tables.schema(t)
+@test isequal(a.x, t.x)
+
end # @testset "misc"
end