Internal Parser Error when trying to parse (legit) syntax
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 3/5
- Tempo estimado
- 1-2 dias
- Facilidade para iniciantes
- 35/100
Direção de pesquisa
Comece pelo ponto de entrada Parser.Parser.Parse e pela instrução SQL e por ParseOptions fornecidos. Rastreie a falha por VersionedParserBase.Parse e SqlCodeDom.SqlCodeObject.SetParentPointers, usando a pilha de chamadas para identificar o objeto nulo. A tarefa estará concluída quando a consulta de grafo mostrada for analisada sem SqlParserInternalParserError e um teste de regressão a cobrir.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Using the below SMO version:
<PackageReference Include="Microsoft.SqlServer.SqlManagementObjects" Version="161.46367.54" />
The below code throws SqlParserInternalParserError:
var sql = @"SELECT * FROM n as n1, e, n as n2 WHERE MATCH (n1-(e)->n2)";
Microsoft.SqlServer.Management.SqlParser.Parser.ParseOptions resultOptions;
var res = Microsoft.SqlServer.Management.SqlParser.Parser.Parser.Parse(sql,
new ParseOptions("GO",
true,
Microsoft.SqlServer.Management.SqlParser.Common.DatabaseCompatibilityLevel.Azure,
Microsoft.SqlServer.Management.SqlParser.Common.TransactSqlVersion.Azure),
out resultOptions);
Here is the associated call stack:
Unhandled exception. Microsoft.SqlServer.Management.SqlParser.SqlParserInternalParserError: Internal Parser Error
---> System.NullReferenceException: Object reference not set to an instance of an object.
at Microsoft.SqlServer.Management.SqlParser.SqlCodeDom.SqlCodeObject.SetParentPointers()
at Microsoft.SqlServer.Management.SqlParser.SqlCodeDom.SqlCodeObject.SetParentPointers()
at Microsoft.SqlServer.Management.SqlParser.SqlCodeDom.SqlCodeObject.SetParentPointers()
at Microsoft.SqlServer.Management.SqlParser.SqlCodeDom.SqlCodeObject.SetParentPointers()
at Microsoft.SqlServer.Management.SqlParser.SqlCodeDom.SqlStatement.SetParentPointers()
at Microsoft.SqlServer.Management.SqlParser.SqlCodeDom.SqlCodeObject.SetParentPointers()
at Microsoft.SqlServer.Management.SqlParser.SqlCodeDom.SqlCodeObject.SetParentPointers()
at Microsoft.SqlServer.Management.SqlParser.Parser.Internals.VersionedParserBase.Parse(Boolean isIncremental, String sql, SqlScript prevScript, ParseOptions options, ParseOptions& resultOptions)
--- End of inner exception stack trace ---
at Microsoft.SqlServer.Management.SqlParser.Parser.Internals.VersionedParserBase.Parse(Boolean isIncremental, String sql, SqlScript prevScript, ParseOptions options, ParseOptions& resultOptions)
at Microsoft.SqlServer.Management.SqlParser.Parser.Parser.Parse(Boolean isIncremental, String sql, ParseResult prevResult, ParseOptions options, ParseOptions& resultOptions)
at Microsoft.SqlServer.Management.SqlParser.Parser.Parser.Parse(String sql, ParseOptions options, ParseOptions& resultOptions)
- Linguagem predominante
- C#
- Estrelas
- 143
- Forks
- 28
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de microsoft/sqlmanagementobjects
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 62/100
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 72/100
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 74/100
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 78/100
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 68/100
Todas as issues de microsoft/sqlmanagementobjects
Issues semelhantes
-
untriaged
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 88/100
dotnet/dotnet-api-docs#13095 ·
-
area-deployment area-integrations triage:bot-seen
Dificuldade 2/5 Meio dia Facilidade para iniciantes 86/100
-
type/automation type/tech-debt
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 84/100
-
bug
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 90/100
newrelic/newrelic-dotnet-agent#3850 · 1 comentário ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 88/100
LuckyPennySoftware/AutoMapper#4660 ·