Ich habe ein SSIS-Paket, das eine ADO NET Source-Komponente verwendet, um eine Anzahl von Zeilen aus einer Datenbank auszuwählen und diese Datensätze in eine andere Tabelle einzufügen.Abfrage läuft länger als Befehlszeitüberschreitung SSIS
Das Standard-Befehlszeitlimit für diese Komponente betrug 30 Sekunden. Die Abfrage kann jedoch viel länger als diese 30-Sekunden-Periode ausgeführt werden. Bei einigen Tests scheint dieses Zeitlimit nur die erste Zeile zurückzugeben. Wenn dies gelingt, kann die Abfrage bei Bedarf für 1000 Sekunden ausgeführt werden.
Wenn in den ersten 30 Sekunden keine Zeile zurückgegeben wird, schlägt der Pre-Execute-Teil der Komponente fehl. Was ich gelesen habe, ist der Zeitraum zwischen dem Start der Abfrage und der Rückgabe der ersten Zeile.
Dies scheint zu widersprechen mit allem, was ich bei Google über diese Eigenschaft finden kann. Sie scheinen zu sagen, dass das Befehls-Timeout die Abfrage vollständig ausführen soll. Das sehe ich nicht.
Kann jemand klären, für was diese Befehlsauszeit eigentlich ist?
EDIT: Links zu Screenshots der SSIS-Komponente und der Eigenschaft (CommandTimeout), die ich abfrage.
Meine Frage ist innerhalb dieser 30 Sekunden Timeout-Zeit zu sein, nicht um die Abfrage Zeit reduziert wird, aber warum Hinrichtung, die länger als 30 Sekunden dauern, sind Zeit nicht aus.
Der 1000-sekündige Durchlauf dieses Pakets war einer von run, der 17GB ~ Daten über Server bewegte, dies ist kein normaler Durchlauf des Pakets, aber ich habe es nur benutzt, um zu zeigen, dass dieses Paket deutlich darüber liegt 30 Sekunden Befehlszeitüberschreitung
Können Sie bitte aktualisieren Sie Ihre Frage mit Eigenschaften, die Sie haben Fragen mit – TheGameiswar
1000 Sekunden ist über 15 Minuten. Das ist zu lang. Meine Vermutung ist, dass wir zunächst die Anfrage korrigieren und dann das Timeout anpassen müssen. –