Skip to content

Error with writing Feather on Julia 1.2+ #124

@xiaodaigh

Description

@xiaodaigh

update
Included coded to download

This error is not in the Julia 1.1 branch. I just read the Fannie Mae 2016Q1.txt performance file from here(you need to register to download it).

;wget http://rapidsai-data.s3-website.us-east-2.amazonaws.com/notebook-mortgage-data/mortgage_2000.tgz
;tar xzvf mortgage_2000.tgz

using CSV
smallest_file = sort(joinpath.("perf", readdir("perf")), by=x->filesize(x))[1]
@time a = CSV.read(smallest_file, header=false, delim = '|')
@time Feather.write("c:/data/a.feather", a)

which yield this error which I can reproduce on Julia 1.2 and 1.3-rc1 but not 1.1.1.

ERROR: MethodError: arrowformat(::CSV.Column{Missing,Missing}) is ambiguous. Candidates:
  arrowformat(x::AbstractArray{Union{Missing, T},1}) where T<:Dates.Date in Arrow at C:\Users\RTX2080\.julia\packages\Arrow\b4oSO\src\arrowvectors.jl:246
  arrowformat(x::AbstractArray{Union{Missing, T},1}) where T<:Dates.DateTime in Arrow at C:\Users\RTX2080\.julia\packages\Arrow\b4oSO\src\arrowvectors.jl:246
  arrowformat(x::AbstractArray{Union{Missing, T},1}) where T<:Dates.Time in Arrow at C:\Users\RTX2080\.julia\packages\Arrow\b4oSO\src\arrowvectors.jl:246
  arrowformat(x::AbstractArray{Union{Missing, J},1}) where J<:AbstractString in Arrow at C:\Users\RTX2080\.julia\packages\Arrow\b4oSO\src\arrowvectors.jl:246
Possible fix, define
  arrowformat(::AbstractArray{Missing,1})
Stacktrace:
 [1] getarrow(::CSV.Column{Missing,Missing}) at C:\Users\RTX2080\.julia\packages\Feather\R3KXg\src\sink.jl:40
 [2] #write#18(::String, ::String, ::typeof(Feather.write), ::IOStream, ::DataFrames.DataFrame) at C:\Users\RTX2080\.julia\packages\Feather\R3KXg\src\sink.jl:18
 [3] #write at .\none:0 [inlined]
 [4] #20 at C:\Users\RTX2080\.julia\packages\Feather\R3KXg\src\sink.jl:32 [inlined]
 [5] #open#312(::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}, ::typeof(open), ::getfield(Feather, Symbol("##20#21")){String,String,DataFrames.DataFrame}, ::String, ::Vararg{String,N} where N) at .\iostream.jl:375
 [6] open at .\iostream.jl:373 [inlined]
 [7] #write#19 at C:\Users\RTX2080\.julia\packages\Feather\R3KXg\src\sink.jl:31 [inlined]
 [8] write(::String, ::DataFrames.DataFrame) at C:\Users\RTX2080\.julia\packages\Feather\R3KXg\src\sink.jl:31
 [9] top-level scope at util.jl:156
caused by [exception 1]
IOError: symlink: operation not permitted (EPERM)
Stacktrace:
 [1] uv_error at .\libuv.jl:90 [inlined]
 [2] symlink(::String, ::String) at .\file.jl:800
 [3] probe_symlink_creation(::String) at C:\Users\RTX2080\.julia\packages\BinaryProvider\TcAwt\src\PlatformEngines.jl:121
 [4] #probe_platform_engines!#30(::Bool, ::typeof(BinaryProvider.probe_platform_engines!)) at C:\Users\RTX2080\.julia\packages\BinaryProvider\TcAwt\src\PlatformEngines.jl:175
 [5] probe_platform_engines! at C:\Users\RTX2080\.julia\packages\BinaryProvider\TcAwt\src\PlatformEngines.jl:169 [inlined]
 [6] __init__() at C:\Users\RTX2080\.julia\packages\BinaryProvider\TcAwt\src\BinaryProvider.jl:28
 [7] _include_from_serialized(::String, ::Array{Any,1}) at .\loading.jl:685
 [8] _require_search_from_serialized(::Base.PkgId, ::String) at .\loading.jl:765
 [9] _tryrequire_from_serialized(::Base.PkgId, ::UInt64, ::String) at .\loading.jl:700
 [10] _require_search_from_serialized(::Base.PkgId, ::String) at .\loading.jl:754
 [11] _require(::Base.PkgId) at .\loading.jl:990
 [12] require(::Base.PkgId) at .\loading.jl:911
 [13] require(::Module, ::Symbol) at .\loading.jl:906

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions