JuliaData/CSV.jl

`bufsize` of `write` is defined to be length of row but actually cells

ctarn opened this issue · 0 comments

ctarn commented

bufsize of CSV.write is set to 2^22 by default, and according to the doc, it is defined as the length of a row:

bufsize::Int=2^22: The length of the buffer to use when writing each csv-formatted row; default 4MB; if a row is larger than the bufsize an error is thrown

using CSV
CSV.write("tmp.csv", [(x="a"^(2^22),)]) # ok
CSV.write("tmp.csv", [(x="a"^(2^22 + 1),)]) # error
CSV.write("tmp.csv", [(x="a"^(2^22),y="a"^(2^22),)]) # ok