ITADN
ruby/csv/Issues

FiberError/NoMemoryError error related to csv gem occurs when upgrading from ruby ​​3.1 to 3.3

#326Opennguyenvd27 创建于 2024-12-23
N
nguyenvd27commented
When upgrading from ruby `3.1.4` to `3.3.5`, FiberError/NoMemoryError error related to csv occurred in our system. In addition, when loading csv file, CPU load also increases compared to before. - FiberError: can't alloc machine stack to fiber (1 x 659456 bytes): Cannot allocate memory error - NoMemoryError: failed to allocate memory After investigation we found the cause. It was caused by csv gem. When upgrading ruby ​​version, csv version is also updated (from `3.2.5` to `3.2.8`) Even if we try to keep ruby ​​`3.1.4` and only update csv gem to `3.2.8`, the FiberError/NoMemoryError error will still occur We have upgraded ruby ​​3.3.5 and kept the csv gem version 3.2.5 (same as ruby ​​version 3.1.4) and FiberError/NoMemoryError didn't occur and CPU load also didn't increase It seems that some changes from csv 3.2.5 to 3.2.8 caused the error. [This commit](https://github.com/ruby/csv/commit/acc05116c55579b78925dd27024969b9daf69135) of csv gem is very suspicious
7 条评论