node-source-map-support icon indicating copy to clipboard operation
node-source-map-support copied to clipboard

RangeError Maximum call stack size exceeded in cloneCallSite

Open tomi opened this issue 4 years ago • 8 comments

We are experiencing a RangeError similar to issue #93 in our Node.js app. I haven't been able to reproduce it and it seems to be occurring randomly at times.

/usr/src/app/node_modules/source-map-support/source-map-support.js:331
   Object.getOwnPropertyNames(Object.getPrototypeOf(frame)).forEach(function(name) {
                                                            ^

RangeError: Maximum call stack size exceeded

We are using the latest version 0.5.13 and latest 10 version of Node.js

tomi avatar Sep 16 '19 12:09 tomi

Getting something similar in a Next.js app. @tomi have you found a workaround by a chance?

RangeError: Maximum call stack size exceeded
    at RegExp.exec (<anonymous>)
    at retrieveSourceMapURL (/path/to/project/node_modules/source-map-support/source-map-support.js:144:21)
    at Array.<anonymous> (/path/to/project/node_modules/source-map-support/source-map-support.js:156:26)
    at /path/to/project/node_modules/source-map-support/source-map-support.js:55:24
    at mapSourcePosition (/path/to/project/node_modules/source-map-support/source-map-support.js:186:21)
    at wrapCallSite (/path/to/project/node_modules/source-map-support/source-map-support.js:358:20)
    at /path/to/project/node_modules/source-map-support/source-map-support.js:399:26
    at Array.map (<anonymous>)
    at Function.prepareStackTrace (/path/to/project/node_modules/source-map-support/source-map-support.js:398:30)
    at prepareStackTrace (internal/errors.js:37:29)
    at formatError (internal/util/inspect.js:907:19)
    at formatRaw (internal/util/inspect.js:703:14)
    at formatValue (internal/util/inspect.js:591:10)
    at inspect (internal/util/inspect.js:221:10)
    at formatWithOptions (internal/util/inspect.js:1693:40)
    at Object.Console.<computed> (internal/console/constructor.js:277:10)
yarn why source-map-support

=> Found "[email protected]"
info Reasons this module exists
   - "ts-node" depends on it
   - Hoisted from "ts-node#source-map-support"
   - Hoisted from "next#terser#source-map-support"
   - Hoisted from "jest#jest-cli#@jest#core#jest-runner#source-map-support"
   - Hoisted from "next#webpack#terser-webpack-plugin#terser#source-map-support"

kachkaev avatar Oct 22 '19 10:10 kachkaev

@kachkaev I'm not 100% sure as I haven't been able to confirm this yet, but I have a working theory that the culprit might not be source-map-support after all. We were using an old version of applicationinsights library which had an issue that caused these type of errors. The older version of applicationinsights uses zone.js which injects itself pretty much everywhere and can cause hard to debug issues like this.

tomi avatar Oct 22 '19 13:10 tomi

I've been having the exact same problem when debugging a TypeScript mocha test. I am using RubyMine, and this is the command line that starts the debug session:

/Users/leandrocolodete/.nvm/versions/node/v12.18.3/bin/node --inspect-brk=57678 /Users/leandrocolodete/my-project/node_modules/mocha/bin/_mocha --require ts-node/register --timeout 0 --ui bdd --reporter "/Users/leandrocolodete/Library/Application Support/RubyMine2018.3/NodeJS/js/mocha-intellij/lib/mochaIntellijReporter.js" /Users/leandrocolodete/my-project/src/tests/controllers/ExaaSController_test.ts --grep "^my test$"
Debugger listening on ws://127.0.0.1:57678/4c98c066-b365-4648-ab7c-e39fbab84aec
For help, see: https://nodejs.org/en/docs/inspector
Debugger attached.

A few seconds later, mocha exits and I can see the following stack trace:

RangeError: Maximum call stack size exceeded
    at RegExp.exec (<anonymous>)
    at retrieveSourceMapURL (/Users/leandrocolodete/my-project/node_modules/source-map-support/source-map-support.js:154:21)
    at Array.<anonymous> (/Users/leandrocolodete/my-project/node_modules/source-map-support/source-map-support.js:166:26)
    at /Users/leandrocolodete/my-project/node_modules/source-map-support/source-map-support.js:65:24
    at mapSourcePosition (/Users/leandrocolodete/my-project/node_modules/source-map-support/source-map-support.js:196:21)
    at wrapCallSite (/Users/leandrocolodete/my-project/node_modules/source-map-support/source-map-support.js:377:20)
    at Function.prepareStackTrace (/Users/leandrocolodete/my-project/node_modules/source-map-support/source-map-support.js:426:39)
    at maybeOverridePrepareStackTrace (internal/errors.js:87:29)
    at prepareStackTrace (internal/errors.js:66:5)
    at Object.exports.handler (/Users/leandrocolodete/my-project/node_modules/mocha/lib/cli/run.js:321:31)

The source-map-support version I have in my project is 0.5.19.

leandro-at-sensibill avatar Aug 27 '20 14:08 leandro-at-sensibill

@kachkaev Same issue here. How did you fix it for your app?

tgrassl avatar Jun 22 '21 08:06 tgrassl

@tgrassl I haven't seen this error for quite some time despite using ts-node in a few projects. I also don't remember what exactly I was doing when the error occurred for me. Upgrading to Node 14+ and ts-node 10+ might help (but I’m not sure).

kachkaev avatar Jun 22 '21 09:06 kachkaev

I experienced the same issue. I used webpack v5 with typescript. The fix for me was changing

devtool: 'inline-source-map',

to

devtool: 'source-map',

in my webpack.config.js

0nlyP2P avatar Dec 14 '21 10:12 0nlyP2P

Still an issue for us 4 years later. Only starts occurring in node v16. This is the only blocker we have in upgrading node right now.

kyteague avatar Sep 27 '23 15:09 kyteague

Still having the same issue, any update on this ?

danramos-evoiq avatar Jan 09 '24 14:01 danramos-evoiq