Masseneinfügung von VMWare-Gast mithilfe eines verteilten Switch in SQL Server


10

Dies ist wahrscheinlich kein SQL Server-Problem, aber das Setup scheint nur BULK INSERTS für SQL Server zu betreffen.

Wir haben kürzlich die VM-Hardware verschoben, und bei allen Gästen, deren Umzug erfolgte, wurden die virtuellen Switches von Standard auf verteilt geändert.

Ich fing dann an zu empfangen

Beim Lesen des Eingabestreams aus dem Netzwerk ist ein schwerwiegender Fehler aufgetreten. Die Sitzung wird beendet (Eingabefehler: 64, Ausgabefehler: 0)

auf zwei SQL-Servern während BULK INSERT-Vorgängen. Einer der SQL-Server war eine VM mit der neuen Konfiguration und der andere war ein physischer Server. Beide BULK INSERT-Vorgänge stammten von einer VM mit der neuen Konfiguration. Die BULK INSERTs würden nicht jedes Mal versagen, es war sehr zufällig, wenn es würde.

Wenn wir den virtuellen Switch in einen Standard-Switch anstelle eines verteilten Switches geändert haben, ist das Problem behoben.

Ich suche nach einer Erklärung dafür, warum es nicht mit einem verteilten Switch anstelle einer Auflösung funktioniert. Meine Vermutung wäre, dass die BULK INSERT-Operation seriell ist und mit einem verteilten Switch die Pakete über verschiedene Hosts geleitet werden, von denen einige möglicherweise geschäftiger als andere sind und über einen bestimmten Latenzschwellenwert hinaus am Zielserver ankommen. (Hinweis: Zum Zeitpunkt der Fehler befindet sich weder auf dem Quell- noch auf dem Zielserver etwas im Windows-Ereignisprotokoll.)

UPDATE: Es stellte sich heraus, dass das Problem auf die Netzwerkkarte zurückzuführen war. Alle unsere VMs wurden mit einer E1000-Netzwerkkarte konfiguriert, die auf Standard-Switches gut genug funktionierte. Nachdem wir zu verteilten Switches gewechselt waren, stellten wir Probleme mit großen Datenübertragungen fest, nicht nur mit SQL-Abfragen. Das Ändern der Netzwerkkarte in VMXNET3 scheint das Problem behoben zu haben.


Zeigt VM Fehler an?
user1207758

Kein Fehler auf VM-Gast oder Host.
Bob Klimes

Antworten:


0

Es scheint, dass es sich um ein reines VMware- / Netzwerkproblem handelt.

Ich schlage vor, zu versuchen, ein Konnektivitätsproblem zwischen den Clients und dem Server zu finden, bei dem es sich nicht um SQL handelt (Ping oder ähnliches). Auf diese Weise können Sie einen klareren Pfad zur Fehlerbehebung finden.


Es scheint ein VMware-Problem zu sein, da ich das Verhalten mit einer großen Dateikopie wiederherstellen kann
Bob Klimes

1

Ich würde vorschlagen, Wireshark oder Microsoft NetMon zu verwenden und den Datenverkehr zu überwachen, um zu sehen, was hier passiert. Könnte auch mit der TCP Chimney Offload-Funktion zusammenhängen, vorausgesetzt, dass sich auf NIC-Ebene etwas geändert hat:

http://support.microsoft.com/kb/942861


0

Wir haben diesen Fehler vor einer Woche erlebt. Unser Netzwerkteam, Sicherheitsteam und Datenbankteam durchsuchen alles. Am Ende der Recherche haben wir die Fehlerressource entdeckt. Es ist das IPS-Gerät. Fragen Sie Ihr Sicherheitsteam, ob auf dem IPS-Gerät eine Signatur vorhanden ist.


Welches IPS-Gerät? Wie ist Ihre Umgebung mit der des Fragestellers zu vergleichen und wie wird sie sein Problem lösen?
Colin 't Hart
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.