unjs / nitro

Next Generation Server Toolkit. Create web servers with everything you need and deploy them wherever you prefer.
https://nitro.unjs.io
MIT License
5.96k stars 496 forks source link

[bug] building for cloudflare uses too much memory #102

Closed X7md closed 4 months ago

X7md commented 2 years ago

Environment

node --version v16.14.2

Reproduction

https://github.com/X7md/nitropack-test

git clone https://github.com/X7md/nitropack-test
cd nitropack-test
npm install
# there is npm pkg @imagemagick/magick-wasm 

Describe the bug

Try to build using NITRO_PRESET=cloudflare npx nitropack build, but I got this error

image

Additional context

No response

Logs

<--- Last few GCs --->

[35531:0x5f79840]    15787 ms: Scavenge 2030.8 (2065.6) -> 2028.6 (2066.1) MB, 3.6 / 0.0 ms  (average mu = 0.118, current mu = 0.110) allocation failure 
[35531:0x5f79840]    15794 ms: Scavenge 2031.3 (2066.1) -> 2029.5 (2067.3) MB, 4.6 / 0.0 ms  (average mu = 0.118, current mu = 0.110) allocation failure 
[35531:0x5f79840]    15801 ms: Scavenge 2032.4 (2067.3) -> 2030.4 (2076.3) MB, 4.5 / 0.0 ms  (average mu = 0.118, current mu = 0.110) allocation failure 

<--- JS stacktrace --->

FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
 1: 0xb09980 node::Abort() [node]
 2: 0xa1c235 node::FatalError(char const*, char const*) [node]
 3: 0xcf784e v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [node]
 4: 0xcf7bc7 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [node]
 5: 0xeaf465  [node]
 6: 0xeaff46  [node]
 7: 0xebe46e  [node]
 8: 0xebeeb0 v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [node]
 9: 0xec1da5 v8::internal::Heap::HandleGCRequest() [node]
10: 0xe4f447 v8::internal::StackGuard::HandleInterrupts() [node]
11: 0x11fb805 v8::internal::Runtime_StackGuard(int, unsigned long*, v8::internal::Isolate*) [node]
12: 0x15f0b19  [node]
Aborted (core dumped)```
P4sca1 commented 2 years ago

I am also unable to build my app inside a GitHub runner or a Docker container, because of memory constraints. Using nuxt, once the start Building server... state is reached, nuxt / nitro requires up to 4GB RAM just to build the server. This seems like way too much for me. The webpack build that runs before does not take more than 1GB of memory at once.

X7md commented 2 years ago

I am also unable to build my app inside a GitHub runner or a Docker container, because of memory constraints. Using nuxt, once the start Building server... state is reached, nuxt / nitro requires up to 4GB RAM just to build the server. This seems like way too much for me. The webpack build that runs before does not take more than 1GB of memory at once.

Yeah building process using JavaScript, and NodeJS so painful...

I think we should port some tools to WebAssembly, or maybe BunJS/ QuickJS, to work more effective with low-memory environment.

But we are as High-Level Programmers (aka JavaScript Developer), can't do so much, this more Low-Level then we can handle.

P4sca1 commented 2 years ago

@pi0 Is there any way to reduce the memory requirements of nitro? Right now it is not possible to build some applications because of the very high memory requirements (up to 4GB for my nuxt application). In comparison, the old webpack nuxt build only took around 1GB.

serialine commented 1 year ago

same issue during nuxt-edge build.

i've injected rollup progress plugin, observed Out of memory, occurs when rollup working with commonjs-export plugin.

(1): node_modules/nitropack/dist/runtime/entries/node-server.mjs                                                    
(3): node_modules/nitropack/dist/runtime/app.mjs                                                                    
(6): node_modules/nitropack/dist/runtime/index.mjs                                                                  
(9): node_modules/source-map-support/register.js                                                                    
(17): node_modules/nitropack/dist/runtime/cache.mjs                                                                 
(17): node_modules/nitropack/dist/runtime/config.mjs                                                                
(17): node_modules/nitropack/dist/runtime/timing.mjs                                                                
(17): node_modules/nitropack/dist/runtime/route-rules.mjs                                                           
(17): .nuxt/proxy/handler_AunIrs5kIA.ts                                                                             
(17): .nuxt/proxy/handler_N0Z59O14sj.ts                                                                             
(17): .nuxt/proxy/handler_sYESFdJO41.ts                                                                             
(17): node_modules/nitropack/dist/runtime/static.mjs                                                                
(24): node_modules/@nuxt/bridge/dist/runtime/nitro/renderer.mjs                                                     
(24): node_modules/nitropack/dist/runtime/plugin.mjs                                                                
(24): node_modules/nitropack/dist/runtime/renderer.mjs                                                              
(24): node_modules/@nuxt/bridge/dist/runtime/nitro/error.mjs                                                        
(25): .nuxt/views/document.template.mjs                                                                             
(27): .nuxt/dist/server/server.mjs                                                                                  
(30): .nuxt/dist/server/client.manifest.mjs                                                                         
(30): node_modules/nitropack/dist/runtime/utils.mjs                                                                 
(30): node_modules/@nuxt/bridge/dist/runtime/nitro/paths.mjs                                                        
(30): node_modules/@nuxt/bridge/dist/runtime/nitro/vue2.mjs                                                         
(32): node_modules/vue-bundle-renderer/dist/runtime.mjs                                                             
(32): node_modules/@nuxt/devalue/dist/devalue.mjs                                                                   
(33): .nuxt/dist/server/server.cjs                                                                                  
(35): .nuxt/dist/server/server.js                                                                                   
(35): node_modules/vue-server-renderer/build.prod.js                                                                
(44): commonjsHelpers.js                                                                                            
(44): commonjs-dynamic-modules                                                                                      
(44): /Users/user/workspace/****/node_modules/vue-server-renderer/build.prod.js?commonjs-exports               
(44): stream?commonjs-external                                                                                      
(44): unenv/runtime/mock/proxy?commonjs-external                                                                    
(44): path?commonjs-external                                                                                        
(44): vm?commonjs-external                                                                                          
(44): module?commonjs-external                                                                                      
(44): fs?commonjs-external                                                                                          
(45): node_modules/uuid/dist/esm-node/index.js                                                                      
(47): /Users/user/workspace/****/.nuxt/dist/server/server.cjs?commonjs-module                                  
(47): /Users/user/workspace/****/.nuxt/dist/server/server.js?commonjs-proxy                                    
(85): /Users/user/workspace/****/.nuxt/dist/server/server.js?commonjs-module                                   
(85): @babel/runtime/helpers/applyDecoratedDescriptor?commonjs-external                                             
(85): core-js/modules/esnext.iterator.constructor.js?commonjs-external                                              
(85): core-js/modules/esnext.async-iterator.map.js?commonjs-external                                                
(85): core-js/modules/esnext.iterator.map.js?commonjs-external                                                      
(85): core-js/modules/es.array.push.js?commonjs-external                                                            
(85): core-js/modules/esnext.async-iterator.filter.js?commonjs-external                                             
(85): core-js/modules/esnext.iterator.filter.js?commonjs-external                                                   
(85): date-fns?commonjs-external                                                                                    
(85): ufo?commonjs-external                                                                                         
(85): core-js/modules/esnext.async-iterator.for-each.js?commonjs-external                                           
(85): core-js/modules/esnext.iterator.for-each.js?commonjs-external                                                 
(85): core-js/modules/esnext.async-iterator.reduce.js?commonjs-external                                             
(85): core-js/modules/esnext.iterator.reduce.js?commonjs-external                                                   
(85): lodash/isEmpty?commonjs-external                                                                              
(85): core-js/modules/esnext.async-iterator.some.js?commonjs-external                                               
(85): core-js/modules/esnext.iterator.some.js?commonjs-external                                                     
(85): core-js/modules/esnext.async-iterator.find.js?commonjs-external                                               
(85): core-js/modules/esnext.iterator.find.js?commonjs-external                                                     
(103): lodash/findKey?commonjs-external                                                                             
(103): axios?commonjs-external                                                                                      
(103): cookie-es?commonjs-external                                                                                  
(103): core-js/modules/esnext.async-iterator.every.js?commonjs-external                                             
(103): core-js/modules/esnext.iterator.every.js?commonjs-external                                                   
(103): lodash/uniqBy?commonjs-external                                                                              
(103): cookie?commonjs-external                                                                                     
(103): lodash/omit?commonjs-external                                                                                
(103): defu?commonjs-external                                                                                       
(103): date-fns-tz?commonjs-external                                                                                
(103): date-fns/locale/ko?commonjs-external                                                                         
(103): destr?commonjs-external                                                                                      
(103): body-parser?commonjs-external                                                                                
(103): url?commonjs-external                                                                                        
(103): core-js/modules/esnext.set.add-all.js?commonjs-external                                                      
(103): core-js/modules/esnext.set.delete-all.js?commonjs-external                                                   
(103): core-js/modules/esnext.set.difference.js?commonjs-external                                                   
(103): core-js/modules/esnext.set.every.js?commonjs-external                                                        
(104): /Users/user/workspace/****/node_modules/uuid/dist/esm-node/index.js?commonjs-proxy                      
(122): core-js/modules/esnext.set.filter.js?commonjs-external                                                       
(122): core-js/modules/esnext.set.find.js?commonjs-external                                                         
(122): core-js/modules/esnext.set.intersection.js?commonjs-external                                                 
(122): core-js/modules/esnext.set.is-disjoint-from.js?commonjs-external                                             
(122): core-js/modules/esnext.set.is-subset-of.js?commonjs-external                                                 
(122): core-js/modules/esnext.set.is-superset-of.js?commonjs-external                                               
(122): core-js/modules/esnext.set.join.js?commonjs-external                                                         
(122): core-js/modules/esnext.set.map.js?commonjs-external                                                          
(122): core-js/modules/esnext.set.reduce.js?commonjs-external                                                       
(122): core-js/modules/esnext.set.some.js?commonjs-external                                                         
(122): core-js/modules/esnext.set.symmetric-difference.js?commonjs-external                                         
(122): core-js/modules/esnext.set.union.js?commonjs-external                                                        
(122): core-js/modules/esnext.weak-map.delete-all.js?commonjs-external                                              
(122): core-js/modules/esnext.weak-map.emplace.js?commonjs-external                                                 
(122): core-js/modules/esnext.map.delete-all.js?commonjs-external                                                   
(122): core-js/modules/esnext.map.emplace.js?commonjs-external                                                      
(122): core-js/modules/esnext.map.every.js?commonjs-external                                                        
(122): core-js/modules/esnext.map.filter.js?commonjs-external                                                       
(123): core-js/modules/esnext.map.find.js?commonjs-external                                                         
(141): core-js/modules/esnext.map.find-key.js?commonjs-external                                                     
(141): core-js/modules/esnext.map.includes.js?commonjs-external                                                     
(141): core-js/modules/esnext.map.key-of.js?commonjs-external                                                       
(141): core-js/modules/esnext.map.map-keys.js?commonjs-external                                                     
(141): core-js/modules/esnext.map.map-values.js?commonjs-external                                                   
(141): core-js/modules/esnext.map.merge.js?commonjs-external                                                        
(141): core-js/modules/esnext.map.reduce.js?commonjs-external                                                       
(141): core-js/modules/esnext.map.some.js?commonjs-external                                                         
(141): core-js/modules/esnext.map.update.js?commonjs-external                                                       
(141): lodash/omitBy?commonjs-external                                                                              
(141): lodash/values?commonjs-external                                                                              
(141): lodash/mapValues?commonjs-external                                                                           
(141): lodash/isNaN?commonjs-external                                                                               
(141): lodash/pickBy?commonjs-external                                                                              
(141): lodash/toNumber?commonjs-external                                                                            
(141): hookable?commonjs-external                                                                                   
(141): radix3?commonjs-external                                                                                     
(141): ohash?commonjs-external                                                                                      
(142): woothee?commonjs-external                                                                                    
(160): cookie-universal?commonjs-external                                                                           
(160): lodash/cloneDeep?commonjs-external                                                                           
(160): lodash/camelCase?commonjs-external                                                                           
(160): lodash/snakeCase?commonjs-external                                                                           
(160): lodash/debounce?commonjs-external                                                                            
(160): lodash/flatten?commonjs-external                                                                             
(160): lodash/escape?commonjs-external                                                                              
(160): lodash/unescape?commonjs-external                                                                            
(160): lodash/last?commonjs-external                                                                                
(160): lodash/remove?commonjs-external                                                                              
(160): lodash/random?commonjs-external                                                                              
(160): lodash/includes?commonjs-external                                                                            
(160): lodash/isEqual?commonjs-external                                                                             
(160): lodash/groupBy?commonjs-external                                                                             
(160): lodash/differenceBy?commonjs-external                                                                        
(160): lodash/chunk?commonjs-external                                                                               
(160): firebase/app?commonjs-external                                                                               
(160): firebase/analytics?commonjs-external                                                                         
(161): crypto?commonjs-external                                                                                     
(173): core-js/modules/esnext.async-iterator.flat-map.js?commonjs-external                                          
(173): core-js/modules/esnext.iterator.flat-map.js?commonjs-external                                                
(173): core-js/modules/esnext.async-iterator.constructor.js?commonjs-external                                       
(173): core-js/modules/esnext.async-iterator.drop.js?commonjs-external                                              
(173): core-js/modules/esnext.iterator.drop.js?commonjs-external                                                    
(173): core-js/modules/es.typed-array.find-last.js?commonjs-external                                                
(173): core-js/modules/es.typed-array.find-last-index.js?commonjs-external                                          
(173): core-js/modules/es.typed-array.set.js?commonjs-external                                                      
(173): core-js/modules/esnext.typed-array.filter-reject.js?commonjs-external                                        
(173): core-js/modules/esnext.typed-array.group-by.js?commonjs-external                                             
(173): core-js/modules/esnext.typed-array.to-reversed.js?commonjs-external                                          
(173): core-js/modules/esnext.typed-array.to-sorted.js?commonjs-external                                            
(173): core-js/modules/esnext.typed-array.to-spliced.js?commonjs-external                                           
(173): core-js/modules/esnext.typed-array.unique-by.js?commonjs-external                                            
(173): core-js/modules/esnext.typed-array.with.js?commonjs-external                                                 
(173): core-js/modules/esnext.array.group.js?commonjs-external                                                      
(173): deepmerge?commonjs-external                                                                                  
(173): dompurify?commonjs-external                                                                                  
(173): js-cookie?commonjs-external                                                                                  
(173): core-js/modules/esnext.array.last-index.js?commonjs-external                                                 
(173): core-js/modules/es.regexp.flags.js?commonjs-external                                                         
(173): dotenv?commonjs-external                                                                                     
(173): node-html-parser?commonjs-external                                                                           
(173): core-js/modules/esnext.array.group-by.js?commonjs-external                                                   
(173): core-js/modules/web.atob.js?commonjs-external                                                                
(173): core-js/modules/web.dom-exception.constructor.js?commonjs-external                                           
(173): core-js/modules/web.dom-exception.stack.js?commonjs-external                                                 
(173): core-js/modules/web.dom-exception.to-string-tag.js?commonjs-external                                         
(173): chroma-js?commonjs-external                                                                                  
(173): devalue?commonjs-external                                                                                    
(173): dynamic-require.mjs                                                                                          
(193): .nuxt/dist/server/125.js                                                                                     
(194): node_modules/uuid/dist/esm-node/v4.js                                                                        
(195): node_modules/uuid/dist/esm-node/v1.js                                                                        
(196): node_modules/uuid/dist/esm-node/v5.js                                                                        
(197): node_modules/uuid/dist/esm-node/v3.js                                                                        
(198): node_modules/uuid/dist/esm-node/stringify.js                                                                 
(199): node_modules/uuid/dist/esm-node/nil.js                                                                       
(200): node_modules/uuid/dist/esm-node/parse.js                                                                     
(201): node_modules/uuid/dist/esm-node/validate.js                                                                  
(202): node_modules/uuid/dist/esm-node/version.js                                                                   
(203): .nuxt/dist/server/components/base-image.js                                                                   
(204): .nuxt/dist/server/components/content-title.js                                                                
(205): .nuxt/dist/server/components/base-check-list.js                                                              
(206): .nuxt/dist/server/components/input-checkbox.js                                                               
(207): .nuxt/dist/server/components/display-paragraph.js                                                            
(208): .nuxt/dist/server/components/empty-area.js                                                                   
(209): .nuxt/dist/server/components/input-radio.js                                                                  
(210): .nuxt/dist/server/layouts/bridge.js                                                                          
(211): .nuxt/dist/server/layouts/order.js                                                                           
(212): .nuxt/dist/server/layouts/about.js                                                                           
(213): .nuxt/dist/server/components/layer-filter-choice-element.js                                                  
(214): .nuxt/dist/server/components/loading.js                                                                      
(215): .nuxt/dist/server/components/display-button.js                                                               
(216): .nuxt/dist/server/layouts/quickpay.js                                                                        
(217): .nuxt/dist/server/layouts/social.js                                                                          
(218): .nuxt/dist/server/layouts/inventory.js                                                                       
(219): .nuxt/dist/server/layouts/social_feed.js                                                                     
(220): .nuxt/dist/server/components/pagination-without-route.js                                                     
(221): .nuxt/dist/server/pages/agreement.js                                                                         
(222): .nuxt/dist/server/pages/auth_policy.js                                                                       
(223): .nuxt/dist/server/layouts/none.js                                                                            
(224): .nuxt/dist/server/layouts/default.js                                                                         
(225): .nuxt/dist/server/components/editor-viewer.js                                                                
(226): .nuxt/dist/server/components/input-box.js                                                                    
(227): .nuxt/dist/server/layouts/customer.js                                                                        
(228): .nuxt/dist/server/pages/index.js                                                                             
(229): .nuxt/dist/server/layouts/order_new.js                                                                       
(230): .nuxt/dist/server/layouts/social_search_scroll.js                                                            
(231): .nuxt/dist/server/pages/watch_notice.js                                                                      
(232): .nuxt/dist/server/pages/download.js                                                                          
(233): .nuxt/dist/server/pages/404.js                                                                               
(234): .nuxt/dist/server/pages/privacy_signup.js                                                                    
(235): .nuxt/dist/server/layouts/my.js                                                                              
(236): .nuxt/dist/server/layouts/search.js                                                                          
(237): .nuxt/dist/server/components/pagination.js                                                                   
(238): .nuxt/dist/server/pages/opensource.js                                                                        
(239): .nuxt/dist/server/pages/attachment_guide.js                                                                  
(240): .nuxt/dist/server/pages/privacy.js                                                                           
(241): .nuxt/dist/server/pages/about/seller_reception.js                                                            
(242): .nuxt/dist/server/pages/info/_type.js                                                                        
(243): .nuxt/dist/server/pages/about/premium_shipping.js                                                            
(244): .nuxt/dist/server/pages/about/inventory.js                                                                   
(245): .nuxt/dist/server/pages/about/index.js                                                                       
(246): .nuxt/dist/server/pages/login/callback.js                                                                    
(247): .nuxt/dist/server/pages/brands/_name.js                                                                      
(248): .nuxt/dist/server/pages/exhibitions/_id.js                                                                   
(249): .nuxt/dist/server/pages/auth/callback.js                                                                     
(250): .nuxt/dist/server/pages/brand-stores/_name.js                                                                
(251): .nuxt/dist/server/pages/join/index.js                                                                        
(252): .nuxt/dist/server/pages/join/identification.js                                                               
(253): .nuxt/dist/server/pages/faq/index.js                                                                         
(254): .nuxt/dist/server/pages/login/naver.js                                                                       
(255): .nuxt/dist/server/pages/my/index.js                                                                          
(256): .nuxt/dist/server/pages/my/address.js                                                                        
(257): .nuxt/dist/server/pages/notice/_id.js                                                                        
(258): .nuxt/dist/server/pages/inventory/_id.js                                                                     
(259): .nuxt/dist/server/pages/buy/_id.js                                                                           
(260): .nuxt/dist/server/pages/login/index.js                                                                       
(261): .nuxt/dist/server/pages/faq/_id.js                                                                           
(262): .nuxt/dist/server/pages/postalcode/android.js                                                                
(263): .nuxt/dist/server/pages/login/find_password.js                                                               
(264): .nuxt/dist/server/pages/postalcode/index.js                                                                  
(265): .nuxt/dist/server/pages/my/submenus.js                                                                       
(266): .nuxt/dist/server/pages/my/profile.js                                                                        
(267): .nuxt/dist/server/pages/iamport/index.js                                                                     
(268): .nuxt/dist/server/pages/my/receipt.js                                                                        
(269): .nuxt/dist/server/pages/logout/index.js                                                                      
(270): .nuxt/dist/server/pages/my/withdrawal.js                                                                     
(271): .nuxt/dist/server/pages/my/point.js                                                                          
(272): .nuxt/dist/server/pages/login/find_email.js                                                                  
(273): .nuxt/dist/server/pages/search/index.js                                                                      
(274): .nuxt/dist/server/pages/search/stock.js                                                                      
(275): .nuxt/dist/server/pages/promotions/_id.js                                                                    
(276): .nuxt/dist/server/pages/showroom/index.js                                                                    
(277): .nuxt/dist/server/pages/login/change_password.js                                                             
(278): .nuxt/dist/server/pages/products/_id.js                                                                      
(279): .nuxt/dist/server/pages/social/following.js                                                                  
(280): .nuxt/dist/server/pages/verify_email/_token.js                                                               
(281): .nuxt/dist/server/pages/social/newest.js                                                                     
(282): .nuxt/dist/server/pages/quickpay/index.js                                                                    
(283): .nuxt/dist/server/pages/products/index.js                                                                    
(284): .nuxt/dist/server/pages/my/account.js                                                                        
(285): .nuxt/dist/server/pages/my/wish.js                                                                           
(286): .nuxt/dist/server/pages/social/picks.js                                                                      
(287): .nuxt/dist/server/pages/notice/index.js                                                                      
(288): .nuxt/dist/server/pages/social/trending.js                                                                   
(289): .nuxt/dist/server/pages/my/shared.js                                                                         
(290): .nuxt/dist/server/pages/sell/_id.js                                                                          
(291): .nuxt/dist/server/pages/buy/check/_id.js                                                                     
(292): .nuxt/dist/server/pages/my/payment/add.js                                                                    
(293): .nuxt/dist/server/pages/my/payment/index.js                                                                  
(294): .nuxt/dist/server/pages/my/buying/index.js                                                                   
(295): .nuxt/dist/server/pages/sell/select/_id.js                                                                   
(296): .nuxt/dist/server/pages/my/buying/_id.js                                                                     
(297): .nuxt/dist/server/pages/auth/apple/_token.js                                                                 
(298): .nuxt/dist/server/pages/sell/check/_id.js                                                                    
(299): .nuxt/dist/server/pages/my/inventory/apply.js                                                                
(300): .nuxt/dist/server/pages/auth/identification/index.js                                                         
(301): .nuxt/dist/server/pages/inventory/check/_id.js                                                               
(302): .nuxt/dist/server/pages/promotions/teaser/peaches.js                                                         
(303): .nuxt/dist/server/pages/social/trending/details.js                                                           
(304): .nuxt/dist/server/pages/social/posts/_id.js                                                                  
(305): .nuxt/dist/server/pages/my/request-order/_type.js                                                            
(306): .nuxt/dist/server/pages/social/trending/index.js                                                             
(307): /Users/user/workspace/****/.nuxt/dist/server/components/base-image.js?commonjs-exports                  
(308): /Users/user/workspace/****/.nuxt/dist/server/components/content-title.js?commonjs-exports               
(309): .nuxt/dist/server/pages/my/selling/_id.js                                                                    
(310): .nuxt/dist/server/pages/my/inventory/index.js                                                                
(310): /Users/user/workspace/****/.nuxt/dist/server/125.js?commonjs-exports                                    
(310): .nuxt/dist/server/pages/social/newest/index.js                                                               
(310): .nuxt/dist/server/pages/social/newest/details.js                                                             
(310): .nuxt/dist/server/pages/my/selling/index.js                                                                  
(310): .nuxt/dist/server/pages/payment/naverpay/index.js                                                            
(310): .nuxt/dist/server/pages/payment/naverpay/_bid/confirm.js                                                     
(310): .nuxt/dist/server/pages/social/tags/_tag/index.js                                                            
(310): .nuxt/dist/server/pages/products/stock/_id.js                                                                
(310): .nuxt/dist/server/pages/social/users/_id/details.js                                                          
(310): .nuxt/dist/server/pages/buy/select/_id/index.js                                                              
(310): .nuxt/dist/server/pages/buy/select/_id/stock.js                                                              
(310): .nuxt/dist/server/pages/iamport/billingkey/complete/web.js                                                   
(310): .nuxt/dist/server/pages/social/users/_id/_followTab.js                                                       
(310): .nuxt/dist/server/pages/social/products/_id/index.js                                                         
(310): .nuxt/dist/server/pages/social/tags/_tag/details.js                                                          
(310): .nuxt/dist/server/pages/social/products/_id/details.js                                                       
(310): .nuxt/dist/server/pages/auth/identification/_id/ok/web.js                                                    
(310): .nuxt/dist/server/pages/iamport/bids/_bid/complete/web.js                                                    
(310): .nuxt/dist/server/pages/social/users/_id/index.js                                                            
(311): /Users/user/workspace/****/.nuxt/dist/server/components/base-check-list.js?commonjs-exports             
(312): /Users/user/workspace/****/.nuxt/dist/server/components/input-checkbox.js?commonjs-exports              
(317): node_modules/uuid/dist/esm-node/rng.js                                                                       
(317): node_modules/uuid/dist/esm-node/v35.js                                                                       
(318): /Users/user/workspace/****/.nuxt/dist/server/components/display-paragraph.js?commonjs-exports           
(318): node_modules/uuid/dist/esm-node/md5.js                                                                       
(318): node_modules/uuid/dist/esm-node/sha1.js                                                                      
(318): node_modules/uuid/dist/esm-node/regex.js                                                                     
(319): /Users/user/workspace/****/.nuxt/dist/server/components/empty-area.js?commonjs-exports                  
(320): /Users/user/workspace/****/.nuxt/dist/server/components/input-radio.js?commonjs-exports                 
(321): /Users/user/workspace/****/.nuxt/dist/server/layouts/bridge.js?commonjs-exports                         
(322): /Users/user/workspace/****/.nuxt/dist/server/layouts/about.js?commonjs-exports                          
(323): /Users/user/workspace/****/.nuxt/dist/server/components/layer-filter-choice-element.js?commonjs-exports 
(324): /Users/user/workspace/****/.nuxt/dist/server/layouts/order.js?commonjs-exports                          
(325): /Users/user/workspace/****/.nuxt/dist/server/components/loading.js?commonjs-exports                     
(326): /Users/user/workspace/****/.nuxt/dist/server/layouts/quickpay.js?commonjs-exports                       
(327): /Users/user/workspace/****/.nuxt/dist/server/components/display-button.js?commonjs-exports              
(328): /Users/user/workspace/****/.nuxt/dist/server/layouts/social.js?commonjs-exports                         
(329): /Users/user/workspace/****/.nuxt/dist/server/layouts/inventory.js?commonjs-exports                      
(330): /Users/user/workspace/****/.nuxt/dist/server/components/pagination-without-route.js?commonjs-exports    
(331): /Users/user/workspace/****/.nuxt/dist/server/pages/agreement.js?commonjs-exports                        
(332): /Users/user/workspace/****/.nuxt/dist/server/layouts/none.js?commonjs-exports                           
(333): /Users/user/workspace/****/.nuxt/dist/server/components/editor-viewer.js?commonjs-exports               
(334): /Users/user/workspace/****/.nuxt/dist/server/layouts/default.js?commonjs-exports                        
(335): /Users/user/workspace/****/.nuxt/dist/server/pages/auth_policy.js?commonjs-exports                      
(336): /Users/user/workspace/****/.nuxt/dist/server/layouts/social_feed.js?commonjs-exports                    
(337): /Users/user/workspace/****/.nuxt/dist/server/components/input-box.js?commonjs-exports                   
(338): /Users/user/workspace/****/.nuxt/dist/server/layouts/customer.js?commonjs-exports                       
(339): /Users/user/workspace/****/.nuxt/dist/server/pages/index.js?commonjs-exports                            
(340): /Users/user/workspace/****/.nuxt/dist/server/pages/watch_notice.js?commonjs-exports                     
(341): /Users/user/workspace/****/.nuxt/dist/server/pages/download.js?commonjs-exports                         
(342): /Users/user/workspace/****/.nuxt/dist/server/pages/404.js?commonjs-exports                              
(343): /Users/user/workspace/****/.nuxt/dist/server/pages/privacy_signup.js?commonjs-exports                   
(344): /Users/user/workspace/****/.nuxt/dist/server/layouts/order_new.js?commonjs-exports                      
(345): /Users/user/workspace/****/.nuxt/dist/server/layouts/social_search_scroll.js?commonjs-exports           
(346): /Users/user/workspace/****/.nuxt/dist/server/layouts/my.js?commonjs-exports                             
(347): /Users/user/workspace/****/.nuxt/dist/server/components/pagination.js?commonjs-exports                  
(348): /Users/user/workspace/****/.nuxt/dist/server/pages/opensource.js?commonjs-exports                       
(349): /Users/user/workspace/****/.nuxt/dist/server/pages/attachment_guide.js?commonjs-exports                 
(350): /Users/user/workspace/****/.nuxt/dist/server/pages/privacy.js?commonjs-exports                          
(351): /Users/user/workspace/****/.nuxt/dist/server/pages/info/_type.js?commonjs-exports                       
(352): /Users/user/workspace/****/.nuxt/dist/server/pages/about/premium_shipping.js?commonjs-exports           
(353): /Users/user/workspace/****/.nuxt/dist/server/pages/about/inventory.js?commonjs-exports                  
(354): /Users/user/workspace/****/.nuxt/dist/server/layouts/search.js?commonjs-exports                         
(355): /Users/user/workspace/****/.nuxt/dist/server/pages/about/seller_reception.js?commonjs-exports           
(356): /Users/user/workspace/****/.nuxt/dist/server/pages/login/callback.js?commonjs-exports                   
(358): /Users/user/workspace/****/.nuxt/dist/server/pages/about/index.js?commonjs-exports                      
(358): /Users/user/workspace/****/.nuxt/dist/server/pages/auth/callback.js?commonjs-exports                    
(359): /Users/user/workspace/****/.nuxt/dist/server/pages/exhibitions/_id.js?commonjs-exports                  
(360): /Users/user/workspace/****/.nuxt/dist/server/pages/brands/_name.js?commonjs-exports                     
(361): /Users/user/workspace/****/.nuxt/dist/server/pages/brand-stores/_name.js?commonjs-exports               
(362): /Users/user/workspace/****/.nuxt/dist/server/pages/join/identification.js?commonjs-exports              
(363): /Users/user/workspace/****/.nuxt/dist/server/pages/login/naver.js?commonjs-exports                      
(364): /Users/user/workspace/****/.nuxt/dist/server/pages/faq/index.js?commonjs-exports                        
(365): /Users/user/workspace/****/.nuxt/dist/server/pages/notice/_id.js?commonjs-exports                       
(366): /Users/user/workspace/****/.nuxt/dist/server/pages/join/index.js?commonjs-exports                       
(367): /Users/user/workspace/****/.nuxt/dist/server/pages/my/address.js?commonjs-exports                       
(368): /Users/user/workspace/****/.nuxt/dist/server/pages/my/index.js?commonjs-exports                         
(369): /Users/user/workspace/****/.nuxt/dist/server/pages/inventory/_id.js?commonjs-exports                    
(370): /Users/user/workspace/****/.nuxt/dist/server/pages/buy/_id.js?commonjs-exports                          
(372): /Users/user/workspace/****/.nuxt/dist/server/pages/postalcode/android.js?commonjs-exports               
(372): /Users/user/workspace/****/.nuxt/dist/server/pages/my/submenus.js?commonjs-exports                      
(373): /Users/user/workspace/****/.nuxt/dist/server/pages/postalcode/index.js?commonjs-exports                 
(374): /Users/user/workspace/****/.nuxt/dist/server/pages/faq/_id.js?commonjs-exports                          
(375): /Users/user/workspace/****/.nuxt/dist/server/pages/iamport/index.js?commonjs-exports                    
(376): /Users/user/workspace/****/.nuxt/dist/server/pages/logout/index.js?commonjs-exports                     
(377): /Users/user/workspace/****/.nuxt/dist/server/pages/login/index.js?commonjs-exports                      
(378): /Users/user/workspace/****/.nuxt/dist/server/pages/my/withdrawal.js?commonjs-exports                    
(379): /Users/user/workspace/****/.nuxt/dist/server/pages/my/receipt.js?commonjs-exports                       
(380): /Users/user/workspace/****/.nuxt/dist/server/pages/my/profile.js?commonjs-exports                       
(381): /Users/user/workspace/****/.nuxt/dist/server/pages/login/find_password.js?commonjs-exports              
(382): /Users/user/workspace/****/.nuxt/dist/server/pages/my/point.js?commonjs-exports                         
(383): /Users/user/workspace/****/.nuxt/dist/server/pages/login/find_email.js?commonjs-exports                 
(384): /Users/user/workspace/****/.nuxt/dist/server/pages/promotions/_id.js?commonjs-exports                   
(385): /Users/user/workspace/****/.nuxt/dist/server/pages/search/stock.js?commonjs-exports                     
(386): /Users/user/workspace/****/.nuxt/dist/server/pages/search/index.js?commonjs-exports                     
(387): /Users/user/workspace/****/.nuxt/dist/server/pages/showroom/index.js?commonjs-exports                   
(388): /Users/user/workspace/****/.nuxt/dist/server/pages/login/change_password.js?commonjs-exports            
(389): /Users/user/workspace/****/.nuxt/dist/server/pages/social/newest.js?commonjs-exports                    
(390): /Users/user/workspace/****/.nuxt/dist/server/pages/verify_email/_token.js?commonjs-exports              
(391): /Users/user/workspace/****/.nuxt/dist/server/pages/social/following.js?commonjs-exports                 
(392): /Users/user/workspace/****/.nuxt/dist/server/pages/products/index.js?commonjs-exports                   
(393): /Users/user/workspace/****/.nuxt/dist/server/pages/social/trending.js?commonjs-exports                  
(394): /Users/user/workspace/****/.nuxt/dist/server/pages/my/shared.js?commonjs-exports                        
(395): /Users/user/workspace/****/.nuxt/dist/server/pages/notice/index.js?commonjs-exports                     
(396): /Users/user/workspace/****/.nuxt/dist/server/pages/my/account.js?commonjs-exports                       
(397): /Users/user/workspace/****/.nuxt/dist/server/pages/my/wish.js?commonjs-exports                          
(398): /Users/user/workspace/****/.nuxt/dist/server/pages/quickpay/index.js?commonjs-exports                   
(399): /Users/user/workspace/****/.nuxt/dist/server/pages/social/picks.js?commonjs-exports                     
(400): /Users/user/workspace/****/.nuxt/dist/server/pages/sell/_id.js?commonjs-exports                         
(401): /Users/user/workspace/****/.nuxt/dist/server/pages/my/payment/add.js?commonjs-exports                   
(402): /Users/user/workspace/****/.nuxt/dist/server/pages/buy/check/_id.js?commonjs-exports                    
(403): /Users/user/workspace/****/.nuxt/dist/server/pages/my/payment/index.js?commonjs-exports                 
(404): /Users/user/workspace/****/.nuxt/dist/server/pages/sell/select/_id.js?commonjs-exports                  
(405): /Users/user/workspace/****/.nuxt/dist/server/pages/my/buying/index.js?commonjs-exports                  
(406): /Users/user/workspace/****/.nuxt/dist/server/pages/my/buying/_id.js?commonjs-exports                    
(407): /Users/user/workspace/****/.nuxt/dist/server/pages/auth/apple/_token.js?commonjs-exports                
(408): /Users/user/workspace/****/.nuxt/dist/server/pages/auth/identification/index.js?commonjs-exports        
(409): /Users/user/workspace/****/.nuxt/dist/server/pages/promotions/teaser/peaches.js?commonjs-exports        
(411): /Users/user/workspace/****/.nuxt/dist/server/pages/products/_id.js?commonjs-exports                     
(411): h3?commonjs-external                                                                                         
(412): /Users/user/workspace/****/.nuxt/dist/server/pages/my/inventory/apply.js?commonjs-exports               
(413): /Users/user/workspace/****/.nuxt/dist/server/pages/inventory/check/_id.js?commonjs-exports              
(414): /Users/user/workspace/****/.nuxt/dist/server/pages/social/trending/details.js?commonjs-exports          
(415): /Users/user/workspace/****/.nuxt/dist/server/pages/social/posts/_id.js?commonjs-exports                 
(416): /Users/user/workspace/****/.nuxt/dist/server/pages/sell/check/_id.js?commonjs-exports                   
(417): /Users/user/workspace/****/.nuxt/dist/server/pages/social/trending/index.js?commonjs-exports            
(418): /Users/user/workspace/****/.nuxt/dist/server/pages/my/request-order/_type.js?commonjs-exports           
(419): /Users/user/workspace/****/.nuxt/dist/server/pages/my/selling/_id.js?commonjs-exports                   
(420): /Users/user/workspace/****/.nuxt/dist/server/pages/social/newest/index.js?commonjs-exports              
(421): /Users/user/workspace/****/.nuxt/dist/server/pages/my/inventory/index.js?commonjs-exports               
(422): /Users/user/workspace/****/.nuxt/dist/server/pages/social/newest/details.js?commonjs-exports            
(423): /Users/user/workspace/****/.nuxt/dist/server/pages/payment/naverpay/index.js?commonjs-exports           
(424): /Users/user/workspace/****/.nuxt/dist/server/pages/payment/naverpay/_bid/confirm.js?commonjs-exports    
(425): /Users/user/workspace/****/.nuxt/dist/server/pages/social/tags/_tag/index.js?commonjs-exports           
(426): /Users/user/workspace/****/.nuxt/dist/server/pages/my/selling/index.js?commonjs-exports                 
(427): /Users/user/workspace/****/.nuxt/dist/server/pages/social/users/_id/details.js?commonjs-exports         
(428): /Users/user/workspace/****/.nuxt/dist/server/pages/iamport/billingkey/complete/web.js?commonjs-exports  
(429): /Users/user/workspace/****/.nuxt/dist/server/pages/buy/select/_id/stock.js?commonjs-exports             
(430): /Users/user/workspace/****/.nuxt/dist/server/pages/buy/select/_id/index.js?commonjs-exports             
(431): /Users/user/workspace/****/.nuxt/dist/server/pages/social/users/_id/_followTab.js?commonjs-exports      
(432): /Users/user/workspace/****/.nuxt/dist/server/pages/social/products/_id/index.js?commonjs-exports        
(433): /Users/user/workspace/****/.nuxt/dist/server/pages/auth/identification/_id/ok/web.js?commonjs-exports   
(434): /Users/user/workspace/****/.nuxt/dist/server/pages/iamport/bids/_bid/complete/web.js?commonjs-exports   
(435): /Users/user/workspace/****/.nuxt/dist/server/pages/social/tags/_tag/details.js?commonjs-exports         
(436): /Users/user/workspace/****/.nuxt/dist/server/pages/social/products/_id/details.js?commonjs-exports      

<--- Last few GCs --->
...
hi-reeve commented 1 year ago

any workaround on this?

Hebilicious commented 1 year ago

I encountered the same issue recently https://github.com/nuxt-themes/docus/issues/921 You can workaround it by having using export NODE_OPTIONS=--max-old-space-size=4096. For some reason, running the build within stackblitz used less memory, so there's definitely something weird going on with this preset.

pi0 commented 4 months ago

Hi. Since there might be several reasons why a larger project takes more memory and eventually fill up the heap, we smaller reproduction to investigate.

If your project is using Nuxt, please consider reporting to Nuxt repository via a runnable reproduction 🙏🏼