❌ Assertion failed: new_time >= loop->time, file c:\ws\deps\uv\src\win\core.c, line 309 | Node.js 에러
회사에 다니면서 빅커머스 기반의 쇼핑몰 템플릿을 수정하게 되었습니다
당시 회사 노트북 받기 전이라 제 개인 노트북으로 작업을 했었는데요
그 당시 인텔리제이를 통해 로컬 서버 접속이 원활하게 진행 되었습니다
그러나 회사 노트북으로 옮긴 후 로컬 접속을 하려고 stencil start (=npm run start)를 했더니
Assertion failed: new_time >= loop->time, file c:\ws\deps\uv\src\win\core.c, line 309
라는 오류가 뜨면서 접속이 안되는 겁니다...
제 사수님과 node_modules 삭제도 해보고... npm install도 다시 해봤다가..
Node.js를 삭제했다가... 버전 관리 했던 nvm을 삭제했다가.....
웬 갑자기 파이썬이 없다는 오류가 뜨길래 파이썬도 깔아줬다가... 별 짓을 다 했지만 실.패.^^!
검색을 해보면 몇가지의 솔루션들이 나오긴 합니다
그러나 이렇게만 하면 무조건 해결!!! 이라고 나와있는 것도 별로 없고 (애초에 자료가 적음)
이래저래 백업을 해둬야지나 시도해볼법해서 다음날에 백업 후 솔루션들을 하나씩 시도해보기로 했습니다
제시된 솔루션들
- 윈도우 설정 날짜 및 시간에서 시계 동기화란에 지금 동기화 버튼 클릭 👉 실패
- 컴퓨터, 노트북에 있는 CMOS를 분리 또는 리셋 👉 무서워서 못 해봄
- Node.js 버전을 최신 버전으로 업그레이드 👉 이미 하위 버전(10.18 버전이었음)으로 개발 완성된 템플릿을 어떻게 수정..? 버전 업 방법을 몰라서 못 함 (Node 최신 버전은 확실히 이런 문제가 없다고 합니다)
-
WSL (리눅스용 윈도우 하위 시스템)을 설치해서 시작해본다 👉 성공!!!!!!!!
원인이 무엇일까?
Ice Lake 프로세서의 시스템 클럭에 문제가 있는 것 같다고 합니다
libuv 프로세서 10세대의 문제...? 펌웨어 문제...? Node.js와 충돌한다고 합니다
사실 "어떤거의 어떤부분이 어떤 버전이라 문제인 것 같아! 업데이트 된걸로 하면 괜찮을거야!"
라고 말한 답변이 있다하면 그 아래로
"나 최신 버전인데도 오류가 나는걸?ㅠㅠ" 이 있기 때문에..
정확히 무슨 문제인지는 잘 모르겠습니다 ㅠㅠㅠㅠㅠㅠ
특정 CPU와 Node.js 구버전의 충돌인 것 같긴합니다
WSL 설치로 해결하자
WSL이란 간단하게... 윈도우즈에서 리눅스 명령어들을 사용할 수 있게 해주는 것..? 인가봅니다
대체 이게 왜 이 문제를 해결할 수 있는건지의 흐름은 전!혀! 모르겠습니다😭
설치방법은 MS에서 매우 친절하고 자세하게 알려주고 있습니다 👉WSL 설치 가이드
저도 이 방법대로 설치 진행 하였고 우분투 설치하고~...
그 다음 WSL에서 Node.js를 설치했습니다 👉 WSL에 Node.js 설치하기
(MS에서 매우 친절하게 다 설명해주는군요. 링크에는 WSL2라고 나오는데 솔루션들 중에 WSL 버전 1로 하라는 내용이 간간히 있으니 1버전으로 진행해주세요. WSL 설치 과정에 함께 나와있습니다. 저는 버전 설정 안하긴함...)
그리고 인텔리제이에서 터미널에 WSL을 치면 WSL 환경으로 바뀝니다
그 상태에서 저는 nvm(node 버전 관리 프로그램)으로 node 버전을 다운그레이드 한 후
(이 과정은 필요에따라 해주세요. 저는 빅커머스 템플릿이 node 10.18로 개발된거라 진행한겁니다)
로컬 서버 접속 시도 했더니 드디어.....되었습니다.......!!! 😭
🔥
정말 살면서(?) 아찔했던 오류였습니다
해석도 불가능하고 자료도 별로 없는 오류라 너무 무서웠어요...😭😭😭
그래도 언제나 해결방법은 있네요.....💪