Error: Maximum call stack size exceeded

Versions (relevant - OpenSearch/Dashboard/Server OS/Browser):

Opensearch version : 2.13.0
Dashboard version : 2.13.0
Server OS : Rocky Linux 8.5
Browser : Chrome

Describe the issue:

I am uploading json data to an Opensearch index which is about 5GB in size. Now whenever I am trying to open it in the OS Dashboard it is not showing anything even when the _cat/indices command is showing 5 gb data is loaded.

In the dashboard I am getting Gateway Time-out error
Error: Gateway Time-out at fetch_Fetch.fetchResponse (xxx/37190/bundles/core/core.entry.js)
at async interceptResponse
(xxx/37190/bundles/core/core.entry.js)
at async
(xxx/37190/bundles/core/core.entry.js)

In the dashboard logs I am getting the following error
[error][data][opensearch][DeserializationError]: Maximum call stack size exceeded
Error: Internal Server Error

at HapiResponseAdapter.toError (xxx/opensearch-dashboards-2.13.0/src/core/server/http/router/response_adapter.js:127:19)
at HapiResponseAdapter.toHapiResponse (xxx/opensearch-dashboards-2.13.0/src/core/server/http/router/response_adapter.js:83:19)

at HapiResponseAdapter.handle (xxx/opensearch-dashboards-2.13.0/src/core/server/http/router/response_adapter.js:79:17)
at Router.handle (/usr/local/seceon/opensearch-dashboards-2.13.0/src/core/server/http/router/router.js:175:34)
at processTicksAndRejections (node:internal/process/task_queues:95:5)
at handler (xxx/opensearch-dashboards-2.13.0/src/core/server/http/router/router.js:140:50)
at exports.Manager.execute (xxx/opensearch-dashboards-2.13.0/node_modules/@hapi/hapi/lib/toolkit.js:60:28)
at Object.internals.handler (xxx/opensearch-dashboards-2.13.0/node_modules/@hapi/hapi/lib/handler.js:46:20)
at exports.execute (xxx/opensearch-dashboards-2.13.0/node_modules/@hapi/hapi/lib/handler.js:31:20)
at Request._lifecycle (xxx/opensearch-dashboards-2.13.0/node_modules/@hapi/hapi/lib/request.js:371:32)
at Request._execute (xxx/opensearch-dashboards-2.13.0/node_modules/@hapi/hapi/lib/request.js:281:9)

Configuration:

46 cpu cores
240 gb RAM
10 TB HDD

Relevant Logs or Screenshots:


(Imgur: The magic of the Internet)

The default number of rows showing in the Discover page is 500, it seems that the document payload in your index is too large, could you show a sample document? And you may decrease the number of rows in the Dashboard Management->Advanced settings UI:

Yes number of rows may have been the issue. I had set the number of rows to be 10000, because I have a lot of data to display and just 500 entries did not seem to be enough. But it kept giving me the above error. I did a full reinstall and reverted back to 500 entries and now it is showing properly.

One other odd issue I am seeing is that sometimes the index_pattern refuses to be saved and I need to delete es_data and es_logs and restart the opensearch multiple times before it starts creating index_patterns properly.

Could you show the error when creating index pattern?

I am trying to create it programmatically via curl command, but it seems to be failing because I am getting the following error message - “” is not a configured index pattern ID.

What is the correct curl command to create a index pattern for a particular index?

The Gateway Time-out and “Maximum call stack size exceeded” errors indicate that OpenSearch Dashboard struggles with your large dataset (5GB). To address this, try optimizing queries, increasing timeout settings, and improving server performance. Ensure sufficient resources and consider upgrading your infrastructure to handle large data volumes effectively.