google / google/google-sql-syntax-ts
Catastrophic backtracking issue in QueryFormatter
- Langage dominant
- TypeScript
- Étoiles
- 10
- Forks
- 4
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
There's a catastrophic backtracking regex issue that reproduces easily when there are too many newlines in the SQL file (as they match both the `\s` and `\n` in the `(\s|\n)+` and result in exponential backtracking).
Because of this, having too many consecutive newlines in any part of a SQL file results in never-ending formatting.
Reproduction and fix is in #6.
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Commencez par localiser QueryFormatter et l’expression `(\s|\n)+` décrite dans l’issue. Examinez la reproduction et le correctif référencés dans l’issue #6, puis vérifiez que du SQL contenant de nombreux sauts de ligne consécutifs est formaté rapidement sans backtracking catastrophique.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- typescript
- Domaine
- performance
- Type d'issue
- Bug
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100