Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Obtaining Table SMO object causes table scan to be recorded

Offen
#151 5 Kommentare 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Anfängerfreundlichkeit
45/100
Issue-Typ
Bug
Klarheit
Größtenteils klar
Aktivitätsstatus
Veraltet
Tech-Stack
csharp, sql
Bereich
databases

Rechercherichtung

Beginne in src/Microsoft/SqlServer/Management/SqlEnum/PostProcessTable.cs ungefähr bei den Zeilen 81–83 und untersuche den Abfragepfad, der beim Abrufen eines Table-SMO-Objekts verwendet wird. Reproduziere das Verhalten zur Aufzeichnung von Tabellenscans oder verfolge es nach und überprüfe anschließend, dass die Erkennung ungenutzter Indizes diese Metadatenabfrage nicht mehr als Indexnutzung behandelt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

I'm not sure what the fix is here, but, that CASE statement does not short-circuit. Even if the IF condition is true, it still executes the subquery in the ELSE clause.

This means a table scan on one of the indexes (or heap) is recorded.

In most cases, this is probably not a big deal...but if you're using SMO objects to create backup scripts for unused indexes you are getting ready to drop...it's kind of a problem when all of a sudden SMO starts using those unused indexes, causing them to be excluded from the unused index detection queries.

https://github.com/microsoft/sqlmanagementobjects/blob/d6f3e68fe6fae09d22355a160baa525d8032fd64/src/Microsoft/SqlServer/Management/SqlEnum/PostProcessTable.cs#L81-L83

Vorherrschende Sprache
C#
Sterne
143
Forks
28
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus microsoft/sqlmanagementobjects

Alle Issues in microsoft/sqlmanagementobjects

Ähnliche Issues

Weitere Issues zu C#

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.