SQL Server Integration Services 2008 R2 パッケージの実質的なセットを維持する作業を行っているときに、奇妙な問題に遭遇しました。
これらのパッケージはスクリプト タスクを頻繁に使用します。各スクリプト タスクには、一部の内部 Web サービスとの統合に使用される C# コードが含まれています。
これらのスクリプトの 1 つを編集するには、次の手順が必要です。
- デザイナーでスクリプト タスクを選択します。
- 右クリックして [編集] を選択し、[スクリプト タスク エディター] ダイアログを表示します。
- スクリプトの編集ボタンを押します
- 15 秒ほど待ちます
- スクリプトを編集する
- スクリプト エディタを閉じる
- [スクリプト タスク エディター] ダイアログの [ OK ] ボタンを押します。
- 30 秒ほど待ちます
- ダイアログが消える
私をイライラさせているのは、太字で強調表示されている待機です。
この間、CPU アクティビティ、ディスク IO、ネットワーク トラフィックはありません。エディタはフリーズしているように見えます。
ところで-これらのタイミングは信頼できます-私はストップウォッチを使用して過去数日間それらを測定しましたが、ストップウォッチのスタート/ストップボタンを押す精度よりも変動が少ない.
私が見つけた唯一の手がかりはnetstat
、一時停止中に追加のネットワーク接続を示すことです。
C:\>netstat -o -b
Active Connections
Proto Local Address Foreign Address State PID
TCP fsis-datam-dev2:3478 akamai-9.fx.net.nz:http SYN_SENT 700
[VSTA.exe]
私の現在の仮説は、SSIS (またはおそらく Visual Studio Tools for Applications エディター) が何らかの理由で "家に電話" するため、遅延はある種のタイムアウトであるというものです。問題のマシンにはインターネット接続がないため、リクエストは無効です。