Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FATAL ERROR: v8::ArrayBuffer::New Allocation failed - process out of memory #188

Open
saamisam opened this issue Nov 7, 2019 · 1 comment

Comments

@saamisam
Copy link

saamisam commented Nov 7, 2019

I am getting this error

[26752:0x41cdab0]   248166 ms: Mark-sweep 22.5 (29.2) -> 21.9 (29.2) MB, 5.8 / 3.4 ms  (+ 15.6 ms in 20 steps since start of marking, biggest step 6.1 ms, walltime since start of marking 900 ms) (average mu = 0.988, current mu = 0.983) finalize incrementa[26752:0x41cdab0]   249372 ms: Mark-sweep 21.9 (29.2) -> 21.8 (29.2) MB, 1.4 / 0.0 ms  (+ 17.1 ms in 2 steps since start of marking, biggest step 12.6 ms, walltime since start of marking 1207 ms) (average mu = 0.987, current mu = 0.985) external memory pr



<--- JS stacktrace --->



==== JS stack trace =========================================



    0: ExitFrame [pc: 0x3dbf6385be1d]

Security context: 0x3a7cebe9e6e9 <JSObject>

    1: onLoadImage(aka onLoadImage) [0x32750561969] [/var/www/html/watchweb/node_modules/resemblejs/resemble.js:288] [bytecode=0x39726377f771 offset=157](this=0x18a5432026f1 <undefined>,hiddenImage=0x098ca34825e9 <Image map = 0x3eef06396159>,callback=0x032750569361 <JSFunction onceWeHaveBoth (sfi = 0x39726377dba1)>)

    2: /* anonymous */ [0x3275055f711] [/v...



FATAL ERROR: v8::ArrayBuffer::New Allocation failed - process out of memory

 1: 0x8fa0c0 node::Abort() [node]

 2: 0x8fa10c  [node]

 3: 0xb0026e v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [node]

 4: 0xb004a4 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [node]

 5: 0xb0058b  [node]

 6: 0xb1169e  [node]

 7: 0x7f8f4177a4bb Context2d::GetImageData(Nan::FunctionCallbackInfo<v8::Value> const&) [/var/www/html/watchweb/node_modules/canvas/build/Release/canvas.node]

 8: 0x7f8f4176f099  [/var/www/html/watchweb/node_modules/canvas/build/Release/canvas.node]

 9: 0xb8e6af  [node]

10: 0xb8f219 v8::internal::Builtin_HandleApiCall(int, v8::internal::Object**, v8::internal::Isolate*) [node]

11: 0x3dbf6385be1d 

Aborted

and this is my code

    const options = {
        output: {
            errorColor: {
                red: 255,
                green: 0,
                blue: 0
            },
            errorType: "movement",
            transparency: 1,
            largeImageThreshold: 0,
            useCrossOrigin: true,
            outputDiff: true
        },
        scaleToSameSize: false,
    };
    for(var i=0; i<images.length; i++){
        var image1 = images[i]['image1'];
        var image2 = images[i]['image2'];
        try{
             const data = await compareImages(
                   image1,
                   image2,
                   options
             );
             var pixelmisMatchPercent = data.misMatchPercentage;
             console.log('pixelmisMatchPercent', pixelmisMatchPercent);
        }catch(e){
              console.log('e', e);
        }
    }

the above code works fine for about 40 iterations after that ArrayBuffer gets full and I am getting this error FATAL ERROR: v8::ArrayBuffer::New Allocation failed - process out of memory

@puneetkalatt
Copy link

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants