実行に掛かっているデータフロータスクがあります。
フローは単純で、異なるテーブルに対して2つのクエリを実行し(両方とも2つの結合を使用)、共通のIDを使用して出力を並べ替えてマージし、すべてのレコードに静的列を追加し、後で使用できるように行数をユーザー変数に保存しますを使用し、最後に別のDBのテーブルに挿入します。OLEDBのソースと宛先を使用しています。ソースはMSSQL2000で、宛先はMSSQL2012です
。症状:
情報:0x40043006、ロードサンドボックステーブル、SSIS。パイプライン:実行の準備フェーズが開始されています。
情報:0x40043007、ロードサンドボックステーブル、SSIS。パイプライン:実行前フェーズが開始されています。
そして、実行が停止されるまで、これ以上何もありません。
失敗した解決策:
。SETFMTONLYOFF;
NOCOUNTをオンに設定します。
初めに追加されました。
余分なビット:
誰かが私を助けてくれることを本当に望んでいます。私はSSISにかなり慣れていません、これは私がそれを使うのは初めてです。私は通常、ETLでPentahoを使用していますが、クライアントはSSISにソリューションを実装する必要があります。私はこの問題と数日間戦ってきましたが、それを解決するためのアイデアが不足し始めています。
コマンドラインを実行すると、それもスタックし、次の出力が表示されます。
Progress: 2013-03-19 14:36:26.21
Source: Load Sandbox Table
Validating: 0% complete
End Progress
Progress: 2013-03-19 14:36:26.21
Source: Load Sandbox Table
Validating: 12% complete
End Progress
Progress: 2013-03-19 14:36:26.22
Source: Load Sandbox Table
Validating: 25% complete
End Progress
Progress: 2013-03-19 14:36:26.22
Source: Load Sandbox Table
Validating: 37% complete
End Progress
Progress: 2013-03-19 14:36:26.23
Source: Load Sandbox Table
Validating: 50% complete
End Progress
Progress: 2013-03-19 14:36:26.25
Source: Load Sandbox Table
Validating: 62% complete
End Progress
Progress: 2013-03-19 14:36:26.25
Source: Load Sandbox Table
Validating: 75% complete
End Progress
Progress: 2013-03-19 14:36:26.25
Source: Load Sandbox Table
Validating: 87% complete
End Progress
Progress: 2013-03-19 14:36:26.25
Source: Load Sandbox Table
Validating: 100% complete
End Progress
Warning: 2013-03-19 14:36:26.26
Code: 0x80047076
Source: Load Sandbox Table SSIS.Pipeline
Description: The output column "ITEM_OID (1)" (47) on output "Merge Join Outp
ut" (28) and component "Merge Join" (11) is not subsequently used in the Data Fl
ow task. Removing this unused output column can increase Data Flow task performa
nce.
End Warning
Progress: 2013-03-19 14:36:26.27
Source: Load Sandbox Table
Prepare for Execute: 0% complete
End Progress
Progress: 2013-03-19 14:36:26.27
Source: Load Sandbox Table
Prepare for Execute: 12% complete
End Progress
Progress: 2013-03-19 14:36:26.27
Source: Load Sandbox Table
Prepare for Execute: 25% complete
End Progress
Progress: 2013-03-19 14:36:26.27
Source: Load Sandbox Table
Prepare for Execute: 37% complete
End Progress
Progress: 2013-03-19 14:36:26.27
Source: Load Sandbox Table
Prepare for Execute: 50% complete
End Progress
Progress: 2013-03-19 14:36:26.27
Source: Load Sandbox Table
Prepare for Execute: 62% complete
End Progress
Progress: 2013-03-19 14:36:26.27
Source: Load Sandbox Table
Prepare for Execute: 75% complete
End Progress
Progress: 2013-03-19 14:36:26.27
Source: Load Sandbox Table
Prepare for Execute: 87% complete
End Progress
Progress: 2013-03-19 14:36:26.27
Source: Load Sandbox Table
Prepare for Execute: 100% complete
End Progress
Progress: 2013-03-19 14:36:26.31
Source: Load Sandbox Table
Pre-Execute: 0% complete
End Progress
Progress: 2013-03-19 14:36:26.31
Source: Load Sandbox Table
Pre-Execute: 12% complete
End Progress
Progress: 2013-03-19 14:36:26.31
Source: Load Sandbox Table
Pre-Execute: 25% complete
End Progress
Progress: 2013-03-19 14:36:26.34
Source: Load Sandbox Table
Pre-Execute: 37% complete
End Progress
Progress: 2013-03-19 14:36:45.69
Source: Load Sandbox Table
Pre-Execute: 50% complete
End Progress
その後、再びフリーズします。
解決策 (自分の質問にあと5時間答えられないので、ここに投稿します。許可されたときに答えます。)
私はついにそれを手に入れました。
検証に問題があることが判明しましたが、質問の4番目の失敗したソリューションで述べられているように、SSIS要素だけがその検証を通過するわけではありません。
CONNECTIONSも検証され、独自の遅延検証プロパティがあります。これはtrueに設定する必要があります。
その後、実行時間は40分以上または実行なしから完全なプロセスで1分未満になりました(これははるかに大きなプロセスの1つのステップにすぎません)
同じ問題を抱えている人がこの解決策を簡単に見つけられることを願っていますこの問題に遭遇し、オンラインで投稿された解決策はほとんどありません。
簡単に言うと、DB接続を含む 、タスクに関係するすべての要素で、遅延検証プロパティがTrueに設定されていることを確認します。