getappmap / appmap-agent-js

This project is deprecated. Please use https://github.com/getappmap/appmap-node/ to record Node.js applications.
Other
28 stars 8 forks source link

OOM generating AppMaps in @appland/scanner #213

Closed apotterri closed 1 year ago

apotterri commented 1 year ago

As of commit 93cc94ca in appmap-js, running

yarn appmap-agent-js -- jest --filter=./test/testFilter.js -i --testTimeout 75000 test/cli/scan.spec.ts

will sometimes get an out-of-memory error:

 1: 0x102a1f665 node::Abort() (.cold.1) [/Users/ajp/.asdf/installs/nodejs/16.20.0/bin/node]
 2: 0x1017181c9 node::Abort() [/Users/ajp/.asdf/installs/nodejs/16.20.0/bin/node]
 3: 0x1017183ae node::OOMErrorHandler(char const*, bool) [/Users/ajp/.asdf/installs/nodejs/16.20.0/bin/node]
 4: 0x10188d1d0 v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [/Users/ajp/.asdf/installs/nodejs/16.20.0/bin/node]
 5: 0x10188d193 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [/Users/ajp/.asdf/installs/nodejs/16.20.0/bin/node]
 6: 0x101a2e8e5 v8::internal::Heap::FatalProcessOutOfMemory(char const*) [/Users/ajp/.asdf/installs/nodejs/16.20.0/bin/node]
 7: 0x101a2d26c v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [/Users/ajp/.asdf/installs/nodejs/16.20.0/bin/node]
 8: 0x101a39b10 v8::internal::Heap::AllocateRawWithLightRetrySlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [/Users/ajp/.asdf/installs/nodejs/16.20.0/bin/node]
 9: 0x101a39b91 v8::internal::Heap::AllocateRawWithRetryOrFailSlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [/Users/ajp/.asdf/installs/nodejs/16.20.0/bin/node]
10: 0x101a06c27 v8::internal::Factory::NewFillerObject(int, bool, v8::internal::AllocationType, v8::internal::AllocationOrigin) [/Users/ajp/.asdf/installs/nodejs/16.20.0/bin/node]
11: 0x101dbe74e v8::internal::Runtime_AllocateInYoungGeneration(int, unsigned long*, v8::internal::Isolate*) [/Users/ajp/.asdf/installs/nodejs/16.20.0/bin/node]
12: 0x102167499 Builtins_CEntry_Return1_DontSaveFPRegs_ArgvOnStack_NoBuiltinExit [/Users/ajp/.asdf/installs/nodejs/16.20.0/bin/node]
Error: ERRNO 32: Broken pipe
    at write (/Users/ajp/src/applandinc/appmap-js/node_modules/posix-socket-messaging/lib/index.js:20:19)
    at Object.<anonymous>.exports.send (/Users/ajp/src/applandinc/appmap-js/node_modules/posix-socket-messaging/lib/index.js:38:3)
    at sendEmitter (/Users/ajp/src/applandinc/appmap-js/node_modules/@appland/appmap-agent-js/dist/bundles/recorder-cli.mjs:4234:5)
    at recordGroup (/Users/ajp/src/applandinc/appmap-js/node_modules/@appland/appmap-agent-js/dist/bundles/recorder-cli.mjs:4385:3)
    at AsyncHook.init (/Users/ajp/src/applandinc/appmap-js/node_modules/@appland/appmap-agent-js/dist/bundles/recorder-cli.mjs:4567:9)
    at emitInitNative (node:internal/async_hooks:202:43)
    at emitInitScript (node:internal/async_hooks:505:3)
    at process.nextTick (node:internal/process/task_queues:133:5)
    at resolveError (node:internal/process/promises:130:11)
    at promiseRejectHandler (node:internal/process/promises:122:7)

The --testTimeout flag seems to be important here. Without it, some of the tests time out, and the OOM error doesn't happen.

ajp@Alans-MacBook-Pro scanner % yarn info jest
└─ jest@npm:27.5.1
   ├─ Instances: 1
   ├─ Version: 27.5.1
   │
   ├─ Exported Binaries
   │  └─ jest
   │
   └─ Dependencies
      ├─ @jest/core@npm:^27.5.1 → npm:27.5.1
      ├─ import-local@npm:^3.0.2 → npm:3.1.0
      └─ jest-cli@npm:^27.5.1 → npm:27.5.1
main +$
ajp@Alans-MacBook-Pro scanner % node --version
v16.20.0
main +$
ajp@Alans-MacBook-Pro scanner % yarn --version
3.2.1
lachrist commented 1 year ago

I identified the issue, the backend cannot keep up with the data sent by the frontend. The synchronous post-processing and the async file writing takes too much time. As a result, the backends buffers raw traces ready to be post-processed. And this buffer finally overflows. Here is the beginning of a log of an experiment I made.

APPMAP-WARNING Failed to parse git description "@appland/appmap-v3.65.3-1-g5ece1c7a"
APPMAP-WARNING Failed to parse git description "@appland/scanner-latest-630-g5ece1c7a"
APPMAP-WARNING Invalid type for version property in package.json file at "file:///Users/soft/Desktop/workspace/appmap-js/", got null
APPMAP-INFO Spawning 8 processes sequentially ...
APPMAP-INFO Send SIGINT to gracefully exit
APPMAP-INFO Spawning "yarn exec jest --testPathIgnorePatterns record.spec.ts" [1/8] ...
(node:46454) ExperimentalWarning: Custom ESM Loaders is an experimental feature and might change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
(node:46455) ExperimentalWarning: Custom ESM Loaders is an experimental feature and might change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
(node:46455) ExperimentalWarning: VM Modules is an experimental feature and might change at any time
(node:46477) ExperimentalWarning: Custom ESM Loaders is an experimental feature and might change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
(node:46478) ExperimentalWarning: Custom ESM Loaders is an experimental feature and might change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
(node:46479) ExperimentalWarning: Custom ESM Loaders is an experimental feature and might change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
(node:46479) ExperimentalWarning: VM Modules is an experimental feature and might change at any time
(node:46478) ExperimentalWarning: VM Modules is an experimental feature and might change at any time
(node:46477) ExperimentalWarning: VM Modules is an experimental feature and might change at any time
APPMAP-INFO Recording jest test cases of process #46479 -- ["/Users/soft/.nvm/versions/node/v18.13.0/bin/node","/Users/soft/Desktop/workspace/appmap-js/node_modules/jest-worker/build/workers/processChild.js"]
APPMAP-INFO Recording jest test cases of process #46478 -- ["/Users/soft/.nvm/versions/node/v18.13.0/bin/node","/Users/soft/Desktop/workspace/appmap-js/node_modules/jest-worker/build/workers/processChild.js"]
APPMAP-INFO Recording jest test cases of process #46477 -- ["/Users/soft/.nvm/versions/node/v18.13.0/bin/node","/Users/soft/Desktop/workspace/appmap-js/node_modules/jest-worker/build/workers/processChild.js"]
{
  "arrival": 1,
  "sources": 0,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 1,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 2,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 3,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 4,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 5,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 6,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 7,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 8,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 9,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 10,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 11,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 12,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 13,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 14,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 15,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 16,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 17,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 18,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 19,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 20,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 21,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 22,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 23,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 24,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 25,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 26,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 27,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 28,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 29,
  "tracks": {}
}
{
  "arrival": 21,
  "sources": 30,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 51,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 52,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 53,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 54,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 55,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 56,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 57,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 58,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 59,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 60,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 61,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 62,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 63,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 64,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 65,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 66,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 67,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 68,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 69,
  "tracks": {}
}
{
  "arrival": 1,
  "sources": 70,
  "tracks": {}
}
{
  "arrival": 95,
  "sources": 71,
  "tracks": {}
}
{
  "arrival": 63,
  "sources": 71,
  "tracks": {
    "jest-k1g3sm4o": 0
  }
}
{
  "arrival": 1,
  "sources": 71,
  "tracks": {
    "jest-k1g3sm4o": 62
  }
}
{
  "arrival": 63,
  "sources": 71,
  "tracks": {
    "jest-k1g3sm4o": 62,
    "jest-k1ivolud": 0
  }
}
{
  "arrival": 1,
  "sources": 71,
  "tracks": {
    "jest-k1g3sm4o": 62,
    "jest-k1ivolud": 62
  }
}
{
  "arrival": 1,
  "sources": 71,
  "tracks": {
    "jest-k1g3sm4o": 62,
    "jest-k1ivolud": 62,
    "jest-k1ja3j88": 0
  }
}
APPMAP-INFO AppMap file:///Users/soft/Desktop/workspace/appmap-js/packages/cli/tmp/jest/FingerprintWatchCommand%20a%20pid%20file%20is%20created%20when%20env%20var%20is%20set.appmap.json
{
  "arrival": 1,
  "sources": 72,
  "tracks": {
    "jest-k1ivolud": 62,
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 73,
  "tracks": {
    "jest-k1ivolud": 62,
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 74,
  "tracks": {
    "jest-k1ivolud": 62,
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 75,
  "tracks": {
    "jest-k1ivolud": 62,
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 76,
  "tracks": {
    "jest-k1ivolud": 62,
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 77,
  "tracks": {
    "jest-k1ivolud": 62,
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 78,
  "tracks": {
    "jest-k1ivolud": 62,
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 79,
  "tracks": {
    "jest-k1ivolud": 62,
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 80,
  "tracks": {
    "jest-k1ivolud": 62,
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 81,
  "tracks": {
    "jest-k1ivolud": 62,
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 82,
  "tracks": {
    "jest-k1ivolud": 62,
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 83,
  "tracks": {
    "jest-k1ivolud": 62,
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 84,
  "tracks": {
    "jest-k1ivolud": 62,
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 85,
  "tracks": {
    "jest-k1ivolud": 62,
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 86,
  "tracks": {
    "jest-k1ivolud": 62,
    "jest-k1ja3j88": 0
  }
}
APPMAP-INFO AppMap file:///Users/soft/Desktop/workspace/appmap-js/packages/cli/tmp/jest/FingerprintWatchCommand%20a%20pid%20file%20is%20not%20created%20when%20env%20var%20is%20unset.appmap.json
{
  "arrival": 1,
  "sources": 87,
  "tracks": {
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 88,
  "tracks": {
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 89,
  "tracks": {
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 90,
  "tracks": {
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 91,
  "tracks": {
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 92,
  "tracks": {
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 93,
  "tracks": {
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 94,
  "tracks": {
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 21,
  "sources": 95,
  "tracks": {
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 116,
  "tracks": {
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 117,
  "tracks": {
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 118,
  "tracks": {
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 119,
  "tracks": {
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 120,
  "tracks": {
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 121,
  "tracks": {
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 122,
  "tracks": {
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 123,
  "tracks": {
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 124,
  "tracks": {
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 125,
  "tracks": {
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 126,
  "tracks": {
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 23833,
  "sources": 127,
  "tracks": {
    "jest-k1ja3j88": 0
  }
}
{
  "arrival": 1,
  "sources": 127,
  "tracks": {
    "jest-k1ja3j88": 23832
  }
}
{
  "arrival": 103,
  "sources": 127,
  "tracks": {
    "jest-k1ja3j88": 23832,
    "jest-k7gb6fc8": 0
  }
}
{
  "arrival": 951,
  "sources": 127,
  "tracks": {
    "jest-k1ja3j88": 23832,
    "jest-k7gb6fc8": 0,
    "jest-k8adhf1g": 0
  }
}
{
  "arrival": 1,
  "sources": 127,
  "tracks": {
    "jest-k1ja3j88": 23832,
    "jest-k7gb6fc8": 0,
    "jest-k8adhf1g": 950
  }
}
APPMAP-INFO AppMap file:///Users/soft/Desktop/workspace/appmap-js/packages/cli/tmp/jest/FingerprintWatchCommand%20indexing%20occurs%20on%20existing%20un-indexed%20appmaps.appmap.json
(node:46478) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 exit listeners added to [process]. Use emitter.setMaxListeners() to increase limit
{
  "arrival": 1,
  "sources": 128,
  "tracks": {
    "jest-k7gb6fc8": 0,
    "jest-k8adhf1g": 950
  }
}
{
  "arrival": 955,
  "sources": 128,
  "tracks": {
    "jest-k7gb6fc8": 0,
    "jest-k8adhf1g": 950,
    "jest-k9l2q8fg": 0
  }
}
{
  "arrival": 1,
  "sources": 128,
  "tracks": {
    "jest-k7gb6fc8": 0,
    "jest-k8adhf1g": 950,
    "jest-k9l2q8fg": 954
  }
}
{
  "arrival": 961,
  "sources": 128,
  "tracks": {
    "jest-k7gb6fc8": 0,
    "jest-k8adhf1g": 950,
    "jest-k9l2q8fg": 954,
    "jest-katq8ot7": 0
  }
}
{
  "arrival": 1,
  "sources": 128,
  "tracks": {
    "jest-k7gb6fc8": 0,
    "jest-k8adhf1g": 950,
    "jest-k9l2q8fg": 954,
    "jest-katq8ot7": 960
  }
}
{
  "arrival": 961,
  "sources": 128,
  "tracks": {
    "jest-k7gb6fc8": 0,
    "jest-k8adhf1g": 950,
    "jest-k9l2q8fg": 954,
    "jest-katq8ot7": 960,
    "jest-kbv3jneo": 0
  }
}
{
  "arrival": 1,
  "sources": 128,
  "tracks": {
    "jest-k7gb6fc8": 0,
    "jest-k8adhf1g": 950,
    "jest-k9l2q8fg": 954,
    "jest-katq8ot7": 960,
    "jest-kbv3jneo": 960
  }
}
{
  "arrival": 957,
  "sources": 128,
  "tracks": {
    "jest-k7gb6fc8": 0,
    "jest-k8adhf1g": 950,
    "jest-k9l2q8fg": 954,
    "jest-katq8ot7": 960,
    "jest-kbv3jneo": 960,
    "jest-kccqm958": 0
  }
}
{
  "arrival": 1,
  "sources": 128,
  "tracks": {
    "jest-k7gb6fc8": 0,
    "jest-k8adhf1g": 950,
    "jest-k9l2q8fg": 954,
    "jest-katq8ot7": 960,
    "jest-kbv3jneo": 960,
    "jest-kccqm958": 956
  }
}
{
  "arrival": 957,
  "sources": 128,
  "tracks": {
    "jest-k7gb6fc8": 0,
    "jest-k8adhf1g": 950,
    "jest-k9l2q8fg": 954,
    "jest-katq8ot7": 960,
    "jest-kbv3jneo": 960,
    "jest-kccqm958": 956,
    "jest-kcum2g0o": 0
  }
}
{
  "arrival": 1,
  "sources": 128,
  "tracks": {
    "jest-k7gb6fc8": 0,
    "jest-k8adhf1g": 950,
    "jest-k9l2q8fg": 954,
    "jest-katq8ot7": 960,
    "jest-kbv3jneo": 960,
    "jest-kccqm958": 956,
    "jest-kcum2g0o": 956
  }
}
{
  "arrival": 1,
  "sources": 128,
  "tracks": {
    "jest-k7gb6fc8": 0,
    "jest-k8adhf1g": 950,
    "jest-k9l2q8fg": 954,
    "jest-katq8ot7": 960,
    "jest-kbv3jneo": 960,
    "jest-kccqm958": 956,
    "jest-kcum2g0o": 956,
    "jest-kdg77if5": 0
  }
}
{
  "arrival": 1,
  "sources": 129,
  "tracks": {
    "jest-k7gb6fc8": 0,
    "jest-k8adhf1g": 950,
    "jest-k9l2q8fg": 954,
    "jest-katq8ot7": 960,
    "jest-kbv3jneo": 960,
    "jest-kccqm958": 956,
    "jest-kcum2g0o": 956,
    "jest-kdg77if5": 0
  }
}
{
  "arrival": 1,
  "sources": 130,
  "tracks": {
    "jest-k7gb6fc8": 0,
    "jest-k8adhf1g": 950,
    "jest-k9l2q8fg": 954,
    "jest-katq8ot7": 960,
    "jest-kbv3jneo": 960,
    "jest-kccqm958": 956,
    "jest-kcum2g0o": 956,
    "jest-kdg77if5": 0
  }
}
{
  "arrival": 1011,
  "sources": 131,
  "tracks": {
    "jest-k7gb6fc8": 0,
    "jest-k8adhf1g": 950,
    "jest-k9l2q8fg": 954,
    "jest-katq8ot7": 960,
    "jest-kbv3jneo": 960,
    "jest-kccqm958": 956,
    "jest-kcum2g0o": 956,
    "jest-kdg77if5": 0
  }
}
{
  "arrival": 1,
  "sources": 131,
  "tracks": {
    "jest-k7gb6fc8": 0,
    "jest-k8adhf1g": 950,
    "jest-k9l2q8fg": 954,
    "jest-katq8ot7": 960,
    "jest-kbv3jneo": 960,
    "jest-kccqm958": 956,
    "jest-kcum2g0o": 956,
    "jest-kdg77if5": 1010
  }
}
{
  "arrival": 1019,
  "sources": 131,
  "tracks": {
    "jest-k7gb6fc8": 0,
    "jest-k8adhf1g": 950,
    "jest-k9l2q8fg": 954,
    "jest-katq8ot7": 960,
    "jest-kbv3jneo": 960,
    "jest-kccqm958": 956,
    "jest-kcum2g0o": 956,
    "jest-kdg77if5": 1010,
    "jest-ke0aagto": 0
  }
}
kgilpin commented 1 year ago

This is what stream backpressure is for

On Fri, Apr 28, 2023 at 3:32 PM Laurent Christophe @.***> wrote:

I identified the issue, the backend cannot keep up with the data sent by the frontend. The synchronous post-processing and the async file writing takes too much time. As a result, the backends buffers raw traces ready to be post-processed. And this buffer finally overflows. Here is the beginning of a log of an experiment I made.

APPMAP-WARNING Failed to parse git description @./appmap-v3.65.3-1-g5ece1c7a" APPMAP-WARNING Failed to parse git description @./scanner-latest-630-g5ece1c7a" APPMAP-WARNING Invalid type for version property in package.json file at "file:///Users/soft/Desktop/workspace/appmap-js/", got null APPMAP-INFO Spawning 8 processes sequentially ... APPMAP-INFO Send SIGINT to gracefully exit APPMAP-INFO Spawning "yarn exec jest --testPathIgnorePatterns record.spec.ts" [1/8] ... (node:46454) ExperimentalWarning: Custom ESM Loaders is an experimental feature and might change at any time (Use node --trace-warnings ... to show where the warning was created) (node:46455) ExperimentalWarning: Custom ESM Loaders is an experimental feature and might change at any time (Use node --trace-warnings ... to show where the warning was created) (node:46455) ExperimentalWarning: VM Modules is an experimental feature and might change at any time (node:46477) ExperimentalWarning: Custom ESM Loaders is an experimental feature and might change at any time (Use node --trace-warnings ... to show where the warning was created) (node:46478) ExperimentalWarning: Custom ESM Loaders is an experimental feature and might change at any time (Use node --trace-warnings ... to show where the warning was created) (node:46479) ExperimentalWarning: Custom ESM Loaders is an experimental feature and might change at any time (Use node --trace-warnings ... to show where the warning was created) (node:46479) ExperimentalWarning: VM Modules is an experimental feature and might change at any time (node:46478) ExperimentalWarning: VM Modules is an experimental feature and might change at any time (node:46477) ExperimentalWarning: VM Modules is an experimental feature and might change at any time APPMAP-INFO Recording jest test cases of process #46479 -- ["/Users/soft/.nvm/versions/node/v18.13.0/bin/node","/Users/soft/Desktop/workspace/appmap-js/node_modules/jest-worker/build/workers/processChild.js"] APPMAP-INFO Recording jest test cases of process #46478 -- ["/Users/soft/.nvm/versions/node/v18.13.0/bin/node","/Users/soft/Desktop/workspace/appmap-js/node_modules/jest-worker/build/workers/processChild.js"] APPMAP-INFO Recording jest test cases of process #46477 -- ["/Users/soft/.nvm/versions/node/v18.13.0/bin/node","/Users/soft/Desktop/workspace/appmap-js/node_modules/jest-worker/build/workers/processChild.js"] { "arrival": 1, "sources": 0, "tracks": {} } { "arrival": 1, "sources": 1, "tracks": {} } { "arrival": 1, "sources": 2, "tracks": {} } { "arrival": 1, "sources": 3, "tracks": {} } { "arrival": 1, "sources": 4, "tracks": {} } { "arrival": 1, "sources": 5, "tracks": {} } { "arrival": 1, "sources": 6, "tracks": {} } { "arrival": 1, "sources": 7, "tracks": {} } { "arrival": 1, "sources": 8, "tracks": {} } { "arrival": 1, "sources": 9, "tracks": {} } { "arrival": 1, "sources": 10, "tracks": {} } { "arrival": 1, "sources": 11, "tracks": {} } { "arrival": 1, "sources": 12, "tracks": {} } { "arrival": 1, "sources": 13, "tracks": {} } { "arrival": 1, "sources": 14, "tracks": {} } { "arrival": 1, "sources": 15, "tracks": {} } { "arrival": 1, "sources": 16, "tracks": {} } { "arrival": 1, "sources": 17, "tracks": {} } { "arrival": 1, "sources": 18, "tracks": {} } { "arrival": 1, "sources": 19, "tracks": {} } { "arrival": 1, "sources": 20, "tracks": {} } { "arrival": 1, "sources": 21, "tracks": {} } { "arrival": 1, "sources": 22, "tracks": {} } { "arrival": 1, "sources": 23, "tracks": {} } { "arrival": 1, "sources": 24, "tracks": {} } { "arrival": 1, "sources": 25, "tracks": {} } { "arrival": 1, "sources": 26, "tracks": {} } { "arrival": 1, "sources": 27, "tracks": {} } { "arrival": 1, "sources": 28, "tracks": {} } { "arrival": 1, "sources": 29, "tracks": {} } { "arrival": 21, "sources": 30, "tracks": {} } { "arrival": 1, "sources": 51, "tracks": {} } { "arrival": 1, "sources": 52, "tracks": {} } { "arrival": 1, "sources": 53, "tracks": {} } { "arrival": 1, "sources": 54, "tracks": {} } { "arrival": 1, "sources": 55, "tracks": {} } { "arrival": 1, "sources": 56, "tracks": {} } { "arrival": 1, "sources": 57, "tracks": {} } { "arrival": 1, "sources": 58, "tracks": {} } { "arrival": 1, "sources": 59, "tracks": {} } { "arrival": 1, "sources": 60, "tracks": {} } { "arrival": 1, "sources": 61, "tracks": {} } { "arrival": 1, "sources": 62, "tracks": {} } { "arrival": 1, "sources": 63, "tracks": {} } { "arrival": 1, "sources": 64, "tracks": {} } { "arrival": 1, "sources": 65, "tracks": {} } { "arrival": 1, "sources": 66, "tracks": {} } { "arrival": 1, "sources": 67, "tracks": {} } { "arrival": 1, "sources": 68, "tracks": {} } { "arrival": 1, "sources": 69, "tracks": {} } { "arrival": 1, "sources": 70, "tracks": {} } { "arrival": 95, "sources": 71, "tracks": {} } { "arrival": 63, "sources": 71, "tracks": { "jest-k1g3sm4o": 0 } } { "arrival": 1, "sources": 71, "tracks": { "jest-k1g3sm4o": 62 } } { "arrival": 63, "sources": 71, "tracks": { "jest-k1g3sm4o": 62, "jest-k1ivolud": 0 } } { "arrival": 1, "sources": 71, "tracks": { "jest-k1g3sm4o": 62, "jest-k1ivolud": 62 } } { "arrival": 1, "sources": 71, "tracks": { "jest-k1g3sm4o": 62, "jest-k1ivolud": 62, "jest-k1ja3j88": 0 } } APPMAP-INFO AppMap file:///Users/soft/Desktop/workspace/appmap-js/packages/cli/tmp/jest/FingerprintWatchCommand%20a%20pid%20file%20is%20created%20when%20env%20var%20is%20set.appmap.json { "arrival": 1, "sources": 72, "tracks": { "jest-k1ivolud": 62, "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 73, "tracks": { "jest-k1ivolud": 62, "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 74, "tracks": { "jest-k1ivolud": 62, "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 75, "tracks": { "jest-k1ivolud": 62, "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 76, "tracks": { "jest-k1ivolud": 62, "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 77, "tracks": { "jest-k1ivolud": 62, "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 78, "tracks": { "jest-k1ivolud": 62, "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 79, "tracks": { "jest-k1ivolud": 62, "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 80, "tracks": { "jest-k1ivolud": 62, "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 81, "tracks": { "jest-k1ivolud": 62, "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 82, "tracks": { "jest-k1ivolud": 62, "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 83, "tracks": { "jest-k1ivolud": 62, "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 84, "tracks": { "jest-k1ivolud": 62, "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 85, "tracks": { "jest-k1ivolud": 62, "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 86, "tracks": { "jest-k1ivolud": 62, "jest-k1ja3j88": 0 } } APPMAP-INFO AppMap file:///Users/soft/Desktop/workspace/appmap-js/packages/cli/tmp/jest/FingerprintWatchCommand%20a%20pid%20file%20is%20not%20created%20when%20env%20var%20is%20unset.appmap.json { "arrival": 1, "sources": 87, "tracks": { "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 88, "tracks": { "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 89, "tracks": { "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 90, "tracks": { "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 91, "tracks": { "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 92, "tracks": { "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 93, "tracks": { "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 94, "tracks": { "jest-k1ja3j88": 0 } } { "arrival": 21, "sources": 95, "tracks": { "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 116, "tracks": { "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 117, "tracks": { "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 118, "tracks": { "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 119, "tracks": { "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 120, "tracks": { "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 121, "tracks": { "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 122, "tracks": { "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 123, "tracks": { "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 124, "tracks": { "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 125, "tracks": { "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 126, "tracks": { "jest-k1ja3j88": 0 } } { "arrival": 23833, "sources": 127, "tracks": { "jest-k1ja3j88": 0 } } { "arrival": 1, "sources": 127, "tracks": { "jest-k1ja3j88": 23832 } } { "arrival": 103, "sources": 127, "tracks": { "jest-k1ja3j88": 23832, "jest-k7gb6fc8": 0 } } { "arrival": 951, "sources": 127, "tracks": { "jest-k1ja3j88": 23832, "jest-k7gb6fc8": 0, "jest-k8adhf1g": 0 } } { "arrival": 1, "sources": 127, "tracks": { "jest-k1ja3j88": 23832, "jest-k7gb6fc8": 0, "jest-k8adhf1g": 950 } } APPMAP-INFO AppMap file:///Users/soft/Desktop/workspace/appmap-js/packages/cli/tmp/jest/FingerprintWatchCommand%20indexing%20occurs%20on%20existing%20un-indexed%20appmaps.appmap.json (node:46478) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 exit listeners added to [process]. Use emitter.setMaxListeners() to increase limit { "arrival": 1, "sources": 128, "tracks": { "jest-k7gb6fc8": 0, "jest-k8adhf1g": 950 } } { "arrival": 955, "sources": 128, "tracks": { "jest-k7gb6fc8": 0, "jest-k8adhf1g": 950, "jest-k9l2q8fg": 0 } } { "arrival": 1, "sources": 128, "tracks": { "jest-k7gb6fc8": 0, "jest-k8adhf1g": 950, "jest-k9l2q8fg": 954 } } { "arrival": 961, "sources": 128, "tracks": { "jest-k7gb6fc8": 0, "jest-k8adhf1g": 950, "jest-k9l2q8fg": 954, "jest-katq8ot7": 0 } } { "arrival": 1, "sources": 128, "tracks": { "jest-k7gb6fc8": 0, "jest-k8adhf1g": 950, "jest-k9l2q8fg": 954, "jest-katq8ot7": 960 } } { "arrival": 961, "sources": 128, "tracks": { "jest-k7gb6fc8": 0, "jest-k8adhf1g": 950, "jest-k9l2q8fg": 954, "jest-katq8ot7": 960, "jest-kbv3jneo": 0 } } { "arrival": 1, "sources": 128, "tracks": { "jest-k7gb6fc8": 0, "jest-k8adhf1g": 950, "jest-k9l2q8fg": 954, "jest-katq8ot7": 960, "jest-kbv3jneo": 960 } } { "arrival": 957, "sources": 128, "tracks": { "jest-k7gb6fc8": 0, "jest-k8adhf1g": 950, "jest-k9l2q8fg": 954, "jest-katq8ot7": 960, "jest-kbv3jneo": 960, "jest-kccqm958": 0 } } { "arrival": 1, "sources": 128, "tracks": { "jest-k7gb6fc8": 0, "jest-k8adhf1g": 950, "jest-k9l2q8fg": 954, "jest-katq8ot7": 960, "jest-kbv3jneo": 960, "jest-kccqm958": 956 } } { "arrival": 957, "sources": 128, "tracks": { "jest-k7gb6fc8": 0, "jest-k8adhf1g": 950, "jest-k9l2q8fg": 954, "jest-katq8ot7": 960, "jest-kbv3jneo": 960, "jest-kccqm958": 956, "jest-kcum2g0o": 0 } } { "arrival": 1, "sources": 128, "tracks": { "jest-k7gb6fc8": 0, "jest-k8adhf1g": 950, "jest-k9l2q8fg": 954, "jest-katq8ot7": 960, "jest-kbv3jneo": 960, "jest-kccqm958": 956, "jest-kcum2g0o": 956 } } { "arrival": 1, "sources": 128, "tracks": { "jest-k7gb6fc8": 0, "jest-k8adhf1g": 950, "jest-k9l2q8fg": 954, "jest-katq8ot7": 960, "jest-kbv3jneo": 960, "jest-kccqm958": 956, "jest-kcum2g0o": 956, "jest-kdg77if5": 0 } } { "arrival": 1, "sources": 129, "tracks": { "jest-k7gb6fc8": 0, "jest-k8adhf1g": 950, "jest-k9l2q8fg": 954, "jest-katq8ot7": 960, "jest-kbv3jneo": 960, "jest-kccqm958": 956, "jest-kcum2g0o": 956, "jest-kdg77if5": 0 } } { "arrival": 1, "sources": 130, "tracks": { "jest-k7gb6fc8": 0, "jest-k8adhf1g": 950, "jest-k9l2q8fg": 954, "jest-katq8ot7": 960, "jest-kbv3jneo": 960, "jest-kccqm958": 956, "jest-kcum2g0o": 956, "jest-kdg77if5": 0 } } { "arrival": 1011, "sources": 131, "tracks": { "jest-k7gb6fc8": 0, "jest-k8adhf1g": 950, "jest-k9l2q8fg": 954, "jest-katq8ot7": 960, "jest-kbv3jneo": 960, "jest-kccqm958": 956, "jest-kcum2g0o": 956, "jest-kdg77if5": 0 } } { "arrival": 1, "sources": 131, "tracks": { "jest-k7gb6fc8": 0, "jest-k8adhf1g": 950, "jest-k9l2q8fg": 954, "jest-katq8ot7": 960, "jest-kbv3jneo": 960, "jest-kccqm958": 956, "jest-kcum2g0o": 956, "jest-kdg77if5": 1010 } } { "arrival": 1019, "sources": 131, "tracks": { "jest-k7gb6fc8": 0, "jest-k8adhf1g": 950, "jest-k9l2q8fg": 954, "jest-katq8ot7": 960, "jest-kbv3jneo": 960, "jest-kccqm958": 956, "jest-kcum2g0o": 956, "jest-kdg77if5": 1010, "jest-ke0aagto": 0 } }

— Reply to this email directly, view it on GitHub https://github.com/getappmap/appmap-agent-js/issues/213#issuecomment-1528001690, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAAVC64BFR67F5DBJEWEB43XDQLMXANCNFSM6AAAAAAWSUIZ5I . You are receiving this because you are subscribed to this thread.Message ID: @.***>

appland-release commented 1 year ago

:tada: This issue has been resolved in version 13.9.0 :tada:

The release is available on:

Your semantic-release bot :package::rocket: