You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The issue here is if there is a lot of non-SQL content in a SQL file (such as 1000s of lines of XML or CSV) then the parser will build a long parse chain for this content. Since the content doesn't contain a terminating token the parse tree will grow very deep. The error recovery algorithm recursively descends this tree and about 10000 or 15000 levels deep the process crashes.
I think in SSMS we mitigate this using a larger stack size. I'll see if it's possible to do the same in .Net Core, otherwise, we need to add some upper limit on how deep the algorithm will traverse the tree.
Steps to Reproduce:
Expected: Parser doesn't cause stackover flow
Workaround: Turning off diagnostics should avoid this stack overflow crash using this user setting "mssql.intelliSense.enableErrorChecking": false
The text was updated successfully, but these errors were encountered: