title: react-native - FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
body: <p>I am struggling with the <code>React Native</code> and <code>aws-sdk</code>. The reason I use <code>aws-sdk</code> instead of <code>aws-amplify</code> is because:</p>
  
  <p><a href="https://github.com/aws-amplify/amplify-js/issues/1687" rel="noreferrer">aws-amplify does not support Using a pre-signed URL to upload a file</a></p>
  
  <p>My project is working fine until <code>aws-sdk</code> is installed by <code>npm</code> and <code>aws-sdk-react-native</code> is imported (this file is 4.3MB when <code>aws-sdk</code> version is "2.369.0").</p>
  
  <p>After adding this line of code:</p>
  
  <pre><code>const AWS = require("aws-sdk/dist/aws-sdk-react-native");
  </code></pre>
  
  <p>The application crashes with the error message:</p>
  
  <pre><code>transform[stdout]: &lt;--- Last few GCs ---&gt;
  transform[stdout]:
  transform[stdout]: [5433:0x103800000]    59176 ms: Mark-sweep 1256.2 (1442.0) -&gt; 1236.2 (1434.5) MB, 3855.9 / 0.0 ms  (average mu = 0.239, current mu = 0.130) allocation failure scavenge might not succeed
  transform[stdout]: [5433:0x103800000]    63390 ms: Mark-sweep 1259.8 (1442.5) -&gt; 1243.1 (1438.5) MB, 3924.9 / 0.0 ms  (average mu = 0.161, current mu = 0.069) allocation failure scavenge might not succeed
  transform[stdout]:
  transform[stdout]:
  transform[stdout]: &lt;--- JS stacktrace ---&gt;
  transform[stdout]:
  transform[stdout]: ==== JS stack trace =========================================
  transform[stdout]:
  transform[stdout]:     0: ExitFrame [pc: 0x1e49a5a5be3d]
  transform[stdout]: Security context: 0x21d5cac9e6e1 &lt;JSObject&gt;
  transform[stdout]:     1: queue [0x21d5c3f5fc09] [/Users/yumac/Projects/ReactNative/Demo/OutOfMemory/node_modules/@babel/generator/lib/buffer.js:~88] [pc=0x1e49a5f9825e](this=0x21d55e682309 &lt;Buffer map = 0x21d51ca6ba29&gt;,str=0x21d577355491 &lt;String[12]:             &gt;)
  transform[stdout]:     2: StringLiteral [0x21d5c3f07491] [/Users/yumac/Projects/ReactNative/Demo/OutOfMemory/node_modules/@babel/ge...
  transform[stdout]:
  transform[stderr]: FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
  transform[stderr]:  1: 0x10003ae75 node::Abort() [/usr/local/bin/node]
  transform[stderr]:  2: 0x10003b07f node::OnFatalError(char const*, char const*) [/usr/local/bin/node]
  transform[stderr]:  3: 0x1001a7ae5 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [/usr/local/bin/node]
  transform[stderr]:  4: 0x100572ef2 v8::internal::Heap::FatalProcessOutOfMemory(char const*) [/usr/local/bin/node]
  transform[stderr]:  5: 0x1005759c5 v8::internal::Heap::CheckIneffectiveMarkCompact(unsigned long, double) [/usr/local/bin/node]
  transform[stderr]:  6: 0x10057186f v8::internal::Heap::PerformGarbageCollection(v8::internal::GarbageCollector, v8::GCCallbackFlags) [/usr/local/bin/node]
  transform[stderr]:  7: 0x10056fa44 v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [/usr/local/bin/node]
  transform[stderr]:  8: 0x10057c2dc v8::internal::Heap::AllocateRawWithLigthRetry(int, v8::internal::AllocationSpace, v8::internal::AllocationAlignment) [/usr/local/bin/node]
  transform[stderr]:  9: 0x10057c35f v8::internal::Heap::AllocateRawWithRetryOrFail(int, v8::internal::AllocationSpace, v8::internal::AllocationAlignment) [/usr/local/bin/node]
  transform[stderr]: 10: 0x10054bca4 v8::internal::Factory::NewFillerObject(int, bool, v8::internal::AllocationSpace) [/usr/local/bin/node]
  transform[stderr]: 11: 0x1007d3b54 v8::internal::Runtime_AllocateInNewSpace(int, v8::internal::Object**, v8::internal::Isolate*) [/usr/local/bin/node]
  transform[stderr]: 12: 0x1e49a5a5be3d
  transform[stderr]: 13: 0x1e49a5f9825e
  transform[stderr]: 14: 0x1e49a5f84e0f
  transform[stderr]: 15: 0x1e49a5a0a5c3
  transform[stderr]: 16: 0x1e49a5ee8a79 
  </code></pre>
  
  <p>I try a lot of solution like:</p>
  
  <p><a href="https://github.com/endel/increase-memory-limit" rel="noreferrer">increase-memory-limit</a></p>
  
  <p><a href="https://medium.com/@vuongtran/how-to-solve-process-out-of-memory-in-node-js-5f0de8f8464c" rel="noreferrer">node --max-old-space-size=8192 index.js</a></p>
  
  <p>If you tried these solution and it is work, please let me know. Maybe I did something wrong</p>
  
  <p>If you have any suggestion, I am always willing to hear from you.</p>
  
  <p>Thank you in advance!</p>