microsoft / azuredatastudio

Azure Data Studio is a data management and development tool with connectivity to popular cloud and on-premises databases. Azure Data Studio supports Windows, macOS, and Linux, with immediate capability to connect to Azure SQL and SQL Server. Browse the extension library for more database support options including MySQL, PostgreSQL, and MongoDB.
https://learn.microsoft.com/sql/azure-data-studio
MIT License
7.54k stars 899 forks source link

Expanding tables on a database with huge amount of tables gives: Maximum call stack size exceeded #25026

Open Balkoth opened 10 months ago

Balkoth commented 10 months ago

Version: 1.47.0 (system setup) Commit: c7c2b2f21505562d21972d4c135119d00806db4f Date: 2023-11-07T17:17:45.669Z VS Code: 1.82.0 Electron: 25.8.4 Chromium: 114.0.5735.289 Node.js: 18.15.0 V8: 11.4.183.29-electron.0 OS: Windows_NT x64 10.0.19045

Steps to Reproduce:

  1. Try to open the tables node on a database which has a huge amount of tables (f.e. Microsoft Dynamics SQL database)
  2. Node expanding gets aborted and the following is reported:
    2023-11-22 10:42:27.034 [error] Maximum call stack size exceeded: RangeError: Maximum call stack size exceeded
    at v.setChildren (vscode-file://vscode-app/c:/Program%20Files/Azure%20Data%20Studio/resources/app/out/vs/workbench/workbench.desktop.main.js:861:23685)
    at v.doRefreshNode (vscode-file://vscode-app/c:/Program%20Files/Azure%20Data%20Studio/resources/app/out/vs/workbench/workbench.desktop.main.js:861:21558)
    at async v.doRefreshSubTree (vscode-file://vscode-app/c:/Program%20Files/Azure%20Data%20Studio/resources/app/out/vs/workbench/workbench.desktop.main.js:861:21050)

Does this issue occur when all extensions are disabled?: Yes

cheenamalhotra commented 10 months ago

@Balkoth

How many tables do you have in this database?

Balkoth commented 10 months ago

According to the database: 202359

Balkoth commented 2 weeks ago

Problem still exists:

2024-09-05 07:47:06.405 [error] Maximum call stack size exceeded: RangeError: Maximum call stack size exceeded
    at v.setChildren (vscode-file://vscode-app/c:/Program%20Files/Azure%20Data%20Studio/resources/app/out/vs/workbench/workbench.desktop.main.js:861:23685)
    at v.doRefreshNode (vscode-file://vscode-app/c:/Program%20Files/Azure%20Data%20Studio/resources/app/out/vs/workbench/workbench.desktop.main.js:861:21558)
    at async v.doRefreshSubTree (vscode-file://vscode-app/c:/Program%20Files/Azure%20Data%20Studio/resources/app/out/vs/workbench/workbench.desktop.main.js:861:21050)