Open
Description
I'm trying to render a large openapi spec file with 11.6k lines but the docusaurus build is failing due to a JS Heap size issue. I'm not sure if this is a docusaurus issue or a redocusaurus issue but any help would be appreciated.
link to spec caled final_openapi.yaml
<--- Last few GCs --->
[27310:0x150008000] 42669 ms: Mark-Compact 3947.6 (4142.5) -> 3942.4 (4141.9) MB, 256.67 / 0.00 ms (average mu = 0.134, current mu = 0.030) allocation failure; scavenge might not succeed
[27310:0x150008000] 42939 ms: Mark-Compact 3946.6 (4143.1) -> 3942.8 (4142.4) MB, 264.67 / 0.00 ms (average mu = 0.079, current mu = 0.019) allocation failure; scavenge might not succeed
<--- JS stacktrace --->
FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
1: 0x105088bf4 node::Abort() [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
2: 0x105088ddc node::ModifyCodeGenerationFromStrings(v8::Local<v8::Context>, v8::Local<v8::Value>, bool) [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
3: 0x10520cda8 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, v8::OOMDetails const&) [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
4: 0x1053e16e8 v8::internal::Heap::GarbageCollectionReasonToString(v8::internal::GarbageCollectionReason) [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
5: 0x1053e559c v8::internal::Heap::CollectGarbageShared(v8::internal::LocalHeap*, v8::internal::GarbageCollectionReason) [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
6: 0x1053e2000 v8::internal::Heap::PerformGarbageCollection(v8::internal::GarbageCollector, v8::internal::GarbageCollectionReason, char const*) [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
7: 0x1053dfd88 v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
8: 0x1053d69dc v8::internal::HeapAllocator::AllocateRawWithLightRetrySlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
9: 0x1053d723c v8::internal::HeapAllocator::AllocateRawWithRetryOrFailSlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
10: 0x1053bbb04 v8::internal::Factory::AllocateRaw(int, v8::internal::AllocationType, v8::internal::AllocationAlignment) [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
11: 0x1053af8ec v8::internal::FactoryBase<v8::internal::Factory>::NewFixedArrayWithFiller(v8::internal::Handle<v8::internal::Map>, int, v8::internal::Handle<v8::internal::Oddball>, v8::internal::AllocationType) [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
12: 0x1056832a0 v8::internal::Handle<v8::internal::NumberDictionary> v8::internal::HashTable<v8::internal::NumberDictionary, v8::internal::NumberDictionaryShape>::New<v8::internal::Isolate>(v8::internal::Isolate*, int, v8::internal::AllocationType, v8::internal::MinimumCapacity) [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
13: 0x10527c728 v8::internal::Builtin_ArrayConcat(int, unsigned long*, v8::internal::Isolate*) [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
14: 0x105b00b24 Builtins_CEntry_Return1_ArgvOnStack_BuiltinExit [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
15: 0x10bb1b730
16: 0x10bae7538
17: 0x105a75708 construct_stub_create_deopt_addr [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
18: 0x10baed46c
19: 0x105a75708 construct_stub_create_deopt_addr [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
20: 0x10bb10c94
21: 0x10bb19b5c
22: 0x10bae76c4
23: 0x105a75708 construct_stub_create_deopt_addr [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
24: 0x10bba0b94
25: 0x10bb18f3c
26: 0x10bae76c4
27: 0x105a75708 construct_stub_create_deopt_addr [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
28: 0x10baed46c
29: 0x105a75708 construct_stub_create_deopt_addr [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
30: 0x10bb10c94
31: 0x10bb19b5c
32: 0x10bae76c4
33: 0x105a75708 construct_stub_create_deopt_addr [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
34: 0x10baed46c
35: 0x105a75708 construct_stub_create_deopt_addr [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
36: 0x10bb10c94
37: 0x10bb19b5c
38: 0x10bae76c4
39: 0x105a75708 construct_stub_create_deopt_addr [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
40: 0x10bba0b94
41: 0x10bb18f3c
42: 0x10bb39d10
43: 0x105a75708 construct_stub_create_deopt_addr [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
44: 0x10bb10c94
45: 0x10bb19b5c
46: 0x10bb39d10
47: 0x105a75708 construct_stub_create_deopt_addr [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
48: 0x10baf2088
49: 0x105b23ee4 Builtins_ArrayMap [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
50: 0x10baf5cd4
51: 0x10baf037c
52: 0x10bae76c4
53: 0x105a75708 construct_stub_create_deopt_addr [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
54: 0x10bba0b94
55: 0x10baf020c
56: 0x10bae76c4
57: 0x105a75708 construct_stub_create_deopt_addr [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
58: 0x105bb45cc Builtins_ConstructHandler [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
59: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
60: 0x105a75708 construct_stub_create_deopt_addr [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
61: 0x105bb45cc Builtins_ConstructHandler [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
62: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
63: 0x105b23ee4 Builtins_ArrayMap [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
64: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
65: 0x105a75708 construct_stub_create_deopt_addr [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
66: 0x105bb45cc Builtins_ConstructHandler [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
67: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
68: 0x105a75708 construct_stub_create_deopt_addr [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
69: 0x105bb45cc Builtins_ConstructHandler [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
70: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
71: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
72: 0x105a84de4 Builtins_LoadIC_NoFeedback [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
73: 0x105ba9218 Builtins_GetNamedPropertyHandler [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
74: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
75: 0x10bad64ec
76: 0x10bac8278
77: 0x10bad48cc
78: 0x10bad6074
79: 0x10bac8278
80: 0x10bad9918
81: 0x10bad4370
82: 0x10bac8278
83: 0x10b499910
84: 0x10bad4ac0
85: 0x10bac8278
86: 0x10bad5fa4
87: 0x10bac8278
88: 0x10b499910
89: 0x10bab6448
90: 0x10bac8438
91: 0x10bad5178
92: 0x10bac8278
93: 0x10bad9918
94: 0x10bad4370
95: 0x10bac8278
96: 0x10b499910
97: 0x10bab6448
98: 0x10bac8438
99: 0x10bad9918
100: 0x10bad4370
101: 0x10bac8278
102: 0x10b499910
103: 0x10bab6448
104: 0x10bac8438
105: 0x10bad5178
106: 0x10bac8278
107: 0x10bad9918
108: 0x10bad4370
109: 0x10bac8278
110: 0x10b499910
111: 0x10bab6448
112: 0x10bac8438
113: 0x10bad9918
114: 0x10bad4370
115: 0x10bac8278
116: 0x10b499910
117: 0x10bab6448
118: 0x10bac8438
119: 0x10bad5178
120: 0x10bac8278
121: 0x10bad9918
122: 0x10bad4370
123: 0x10bac8278
124: 0x10b499910
125: 0x10bab6448
126: 0x10bac8438
127: 0x10bad9918
128: 0x10bad4370
129: 0x10bac8278
130: 0x10b499910
131: 0x10bab6448
132: 0x10bac8438
133: 0x10b499910
134: 0x10bad4ac0
135: 0x10bac8278
136: 0x10bad5fa4
137: 0x10bac8278
138: 0x10b499910
139: 0x10bab6448
140: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
141: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
142: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
143: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
144: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
145: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
146: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
147: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
148: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
149: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
150: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
151: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
152: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
153: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
154: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
155: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
156: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
157: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
158: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
159: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
160: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
161: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
162: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
163: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
164: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
165: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
166: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
167: 0x105a783e4 Builtins_InterpreterEntryTrampoline [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
168: 0x10b7d2fc4
169: 0x10b4653c4
170: 0x10bbdc7dc
171: 0x10bbd47ec
172: 0x10bbdc748
173: 0x10b466110
174: 0x10bbdc7dc
175: 0x105a79014 Builtins_InterpreterEnterAtNextBytecode [/Users/evisdrenova/.volta/tools/image/node/20.10.0/bin/node]
176: 0x10bbdc7dc
177: 0x10b6d5960
178: 0x10bbdc7dc
179: 0x10b28b1f8
180: 0x10b6d5950
181: 0x10bbdc7dc
182: 0x10b6d5930
183: 0x10bbdc7dc
184: 0x10bbd47ec
185: 0x10bbdc748
186: 0x10b6d5900
187: 0x10bbdc7dc
188: 0x10b6d5960
189: 0x10bbdc7dc
190: 0x10b6d5900
191: 0x10bbdc7dc
192: 0x10b6d5960
193: 0x10bbdc7dc
194: 0x10b6d5900
195: 0x10bbdc7dc
196: 0x10b6d5960
197: 0x10bbdc7dc
198: 0x10b6d5960
199: 0x10bbdc7dc
200: 0x10bbd47ec
201: 0x10bbdc748
202: 0x10b6d5900
203: 0x10bbdc7dc
204: 0x10b6d5960
205: 0x10bbdc7dc
206: 0x10b6d5960
207: 0x10bbdc7dc
208: 0x10b6d5900
209: 0x10bbdc7dc
210: 0x10b6d5960
211: 0x10bbdc7dc
212: 0x10b6d5960
213: 0x10bbdc7dc
214: 0x10b6d5900
215: 0x10bbdc7dc
216: 0x10b6d5960
217: 0x10bbdc7dc
218: 0x10b6d5900
219: 0x10bbdc7dc
220: 0x10b6d5960
221: 0x10bbdc7dc
222: 0x10b6d5900
223: 0x10bbdc7dc
224: 0x10b6d5960
225: 0x10bbdc7dc
226: 0x10b6d5920
227: 0x10bbdc7dc
228: 0x10b6d5960
229: 0x10bbdc7dc
230: 0x10b6d5960
231: 0x10bbdc7dc
232: 0x10b6d5960
233: 0x10bbdc7dc
234: 0x10b6d5960
235: 0x10bbdc7dc
236: 0x10b6d5900
237: 0x10bbdc7dc
238: 0x10b6d5960
239: 0x10bbdc7dc
240: 0x10b28b1f8
241: 0x10b6d5950
242: 0x10bbdc7dc
243: 0x10b6d5900
244: 0x10bbdc7dc
245: 0x10b6d58fc
246: 0x10bbdc7dc
247: 0x10b28b1f8
248: 0x10b6d5950
249: 0x10bbdc7dc
250: 0x10b6d58fc
251: 0x10bbdc7dc
252: 0x10b28b1f8
253: 0x10b6d5950
254: 0x10bbdc7dc
255: 0x10b6d5900
sh: line 1: 27310 Abort trap: 6 docusaurus build
Here is my docusaurus config:
// @ts-check
// Note: type annotations allow type checking and IDEs autocompletion
import type { Config } from '@docusaurus/types';
import { themes } from 'prism-react-renderer';
import type * as Redocusaurus from 'redocusaurus';
const config: Config = {
title: 'Neosync',
tagline: 'Open source Data Anonymization and Synthetic Data',
favicon: 'img/logo_light_mode.png',
headTags: [
{
tagName: 'script',
attributes: {
id: 'koala-snippet',
innerHTML: `!function(t){if(window.ko)return;window.ko=[],["identify","track","removeListeners","open","on","off","qualify","ready"].forEach(function(t){ko[t]=function(){var n=[].slice.call(arguments);return n.unshift(t),ko.push(n),ko}});var n=document.createElement("script");n.async=!0,n.setAttribute("src","https://cdn.getkoala.com/v1/pk_4fa92236b6fe5d23fb878c88c14d209fd48e/sdk.js"),(document.body || document.head).appendChild(n)}();`,
},
},
],
// Set the production url of your s here
url: 'https://docs.neosync.dev',
// Set the /<baseUrl>/ pathname under which your site is served
// For GitHub pages deployment, it is often '/<projectName>/'
baseUrl: '/',
// GitHub pages deployment config.
// If you aren't using GitHub pages, you don't need these.
organizationName: 'nucleuscloud', // Usually your GitHub org/user name.
projectName: 'neosync', // Usually your repo name.
onBrokenLinks: 'throw',
onBrokenMarkdownLinks: 'warn', //should probably be throw or warn but was causing a known issue in the markdown parsing of readme files from node_modules. https://github.com/facebook/docusaurus/issues/6370
// Even if you don't use internalization, you can use this field to set useful
// metadata like html lang. For example, if your site is Chinese, you may want
// to replace "en" with "zh-Hans".
i18n: {
defaultLocale: 'en',
locales: ['en'],
},
plugins: [
[
'posthog-docusaurus',
{
apiKey: process.env.POSTHOG_KEY
? process.env.POSTHOG_KEY
: 'phc_2hFE16FGvpOmUdgVczrxrJPDJ1sp724se5w7uAte9GS',
appUrl: process.env.POSTHOG_HOST
? process.env.POSTHOG_HOST
: 'https://app.posthog.com',
enableInDevelopment: false,
},
],
async function tailwindcssPlugin(context, options) {
return {
name: 'docusaurus-tailwindcss',
configurePostCss(postcssOptions) {
// Appends TailwindCSS and AutoPrefixer.
postcssOptions.plugins.push(require('tailwindcss'));
postcssOptions.plugins.push(require('autoprefixer'));
return postcssOptions;
},
};
},
],
presets: [
[
'classic',
{
docs: {
id: 'default',
routeBasePath: '/',
sidebarPath: './sidebars.ts',
// Remove this to remove the "edit this page" links.
editUrl: 'https://github.com/nucleuscloud/neosync/blob/main/docs',
},
blog: {
routeBasePath: '/changelog',
editUrl: 'https://github.com/nucleuscloud/neosync/blob/main/docs',
blogTitle: 'Neosync Changelog',
blogDescription: 'Neosync Changelog',
blogSidebarTitle: ' Changelog',
blogSidebarCount: 'ALL',
},
theme: {
customCss: ['./src/css/custom.css'],
},
},
],
[
'docusaurus-protobuffet',
{
protobuffet: {
fileDescriptorsPath: './protos/data/proto_docs.json',
protoDocsPath: 'protos',
sidebarPath: './protos/proto-sidebars.js',
},
docs: {
routeBasePath: 'api',
sidebarPath: './proto-sidebars.ts',
},
blog: false,
theme: {
customCss: require.resolve('./src/css/custom.css'),
},
},
],
[
'redocusaurus',
{
specs: [
{
spec: './final_openapi.yaml',
route: '/reference',
},
],
// Theme Options for modifying how redoc renders them
theme: {
// Change with your site colors
primaryColor: '#1890ff',
},
},
] satisfies Redocusaurus.PresetEntry,
],
themeConfig: {
metadata: [
{
name: 'keywords',
content:
'open source, anonymization, data anonymization, synthetic data, data privacy, data security',
},
],
image: 'img/docsOG.png',
colorMode: {
defaultMode: 'light',
disableSwitch: false,
// disabling preference until dark mode switching is fixed: https://github.com/facebook/docusaurus/issues/8938
respectPrefersColorScheme: false,
},
navbar: {
logo: {
alt: 'Neosync',
srcDark: 'img/logo_and_text_dark_mode.png',
src: 'img/logo_and_text_light_mode.png',
},
items: [
{
href: 'https://github.com/nucleuscloud/neosync',
position: 'right',
className: 'header-github-link',
'aria-label': 'GitHub repository',
},
{
href: 'https://discord.com/invite/MFAMgnp4HF',
position: 'right',
className: 'header-discord-link',
'aria-label': 'Discord Server',
},
{ to: '/', label: 'Docs' },
{ to: '/api', label: 'API' },
{ to: '/reference', label: 'Reference' },
{ to: '/changelog', label: 'Changelog' },
],
},
footer: {
copyright: `Copyright © Nucleus Cloud Corp ${new Date().getFullYear()}`,
},
prism: {
theme: themes.github,
darkTheme: themes.dracula,
},
algolia: {
appId: 'xxx',
apiKey: 'xxx',
indexName: 'neosync',
contextualSearch: true,
searchParameters: {},
searchPagePath: 'search',
},
},
};
export default config;
Metadata
Assignees
Labels
No labels
Activity