Question

InFusion_Admin on Fri, 18 Apr 2014 02:59:25


お世話になります。

Azureの東日本リージョンでSQLデータベースを利用しております。
DAC Webサービス(REST)を使用してbacpacのImportを行いたいのですが、下記のエラーが頻発してしまいます。

使用しているRESTエンドポイント:
https://kw1-1prod-dacsvc.azure.com/DACWebService.svc

エラー内容:
Error encountered during the service operation. 
  Could not import package.
Error SQL72014: .Net SqlClient Data Provider: Msg 2714, Level 16, State 3, Procedure (ストアドプロジージャ名), Line 19 There is already an object named '(ストアドプロジージャ名)' in the database.
Error SQL72045: Script execution error.  The executed script:
CREATE PROCEDURE ~

エラーは「すでに同名のオブジェクトがDB内にある」との事ですが、同名のDB自体存在しない状態でインポートしていますので、何故このようなエラーになるのか分かりません。
また、時々成功することがあったり、別のストアドプロジージャ名が表示されることもあります。
別のbacpacではキーのデータが重複しているというエラーが出る場合もあります(下記)が、元データではそのようなことはありません。
Error encountered during the service operation.
 Data plan execution failed with message One or more errors occurred.
  Violation of PRIMARY KEY constraint '(PK名)'. Cannot insert duplicate key in object '(テーブル名)'. The duplicate key value is (値).
The statement has been terminated.

bacpacは全て正常にエクスポートできたものを使用しており、
SQL Server Management Studio を使用すると正常にインポートできます。

※ちなみに、RESTエンドポイント( https://kw1-1prod-dacsvc.azure.com/DACWebService.svc )はこの方のツイート( https://twitter.com/satonaoki/status/446139900526874624 )で知りましたが、他に情報が見当たらないため正式公開されているものかどうかも若干不安です。

以上、どういった原因が考えられますでしょうか?
お手数をお掛けしますが、よろしくお願いいたします。


Sponsored



Replies

InFusion_Admin on Wed, 07 May 2014 04:11:30


自己解決しましたので追記いたします。
Importの直前にExportを行っていたことが原因だったようです。
Export完了から数十秒時間をあけてImportを実行すれば成功することが分かりました。

ちなみに、Export処理はステータスが"Completed"になるのを確認してからImportを開始していますので
その後さらに一定時間待たなければならないという点が腑に落ちませんが、
取り急ぎ対処はできました。

以上、ありがとうございました。