만족

[Nodejs] RangeError: Invalid string length 본문

[Nodejs] RangeError: Invalid string length

Nodejs Satisfaction 2020. 7. 7. 19:49

매우 큰 javascript array를 파일로 저장하던 중 out-of-heap 오류가 뜨면서 프로그램이 정지되어서

힙 메모리에 충분한 값을 주고 실행했더니

이번엔 RangeError: Invalid string length 오류가 뜬다.

 

원인은, js엔진에서 객체 사이즈에 제한을 두고 있다고 한다.

 

array를 JSON.stringify()하는 과정에서 생겨난 string 크기가 해당 사이즈를 넘어버린 것이다.

 

해결법은

해당 객체를 작은 사이즈로 나누거나

스트림을 이용해 잘게 쪼개어 파싱하면 된다.

 

참고: https://ohgyun.com/782

 

Node: String 크기 제한에 의한 RangeError

발생일: 2018.10.22 키워드: JSON.stringify, RangeError, Invalid string length, max-old-space-size, 메모리 부족, RangeError 문제: 배치 작업 과정 중에 아래와 같은 오류가 발생하면서 프로세스가 종료됐다..

ohgyun.com

진짜 별의별 오류를 만나보는 것 같다



Comments