FiberError/NoMemoryError error related to csv gem occurs when upgrading from ruby 3.1 to 3.3
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 条评论