stsadm -o execadmsvcjobs batchコマンドの一部として
-
16-10-2019 - |
質問
stsadm -o execadmsvcjobsをバッチコマンドの一部として使用する場合、コマンドがすべてのジョブが実行されていると言っても、ジョブは必ずしも完了していないことがわかります。
これは、ソリューションが時間内に展開されていないため、たとえばアクティブ化機能などの次のバッチジョブが失敗する可能性があることを意味します。
現在、これを解決するためにバッチファイルに遅延がありますが、より良い解決策があるかどうかを知りたいと思います。
ではごきげんよう
解決
EASJにはいくつかの問題があります。
まず第一に、EASJを実行した後に展開が成功したという保証はありません。酵素を呼び出して、XMLを解析して、展開が適切に展開されるかどうかを確認する必要があります。
第二に、EASJは、現在のWebフロントエンドサーバーのSpadMinistrationServiceJobDefinitionCollectionでのジョブのみをチェックします。これはおそらく、機能をアクティブにするときに悲しみを引き起こしているものです。仕事は現在のWFEで終了する可能性がありますが、すべてのWFEではそうではありません。これのもう1つのバリエーションは、WFE#1で以前にソリューションを展開し、その仕事が何らかの形で停止し、WFE#2でソリューションを再デプロイすると、係争中の仕事などについて奇妙な警告が得られることです。 これが、常に同じWFEから展開することが重要である理由です!
STSADM Extension GuruとMVP Gary Lapointeは、後の問題に対処する拡張機能を作成しました。http://stsadm.blogspot.com/2008/10/better-execadmsvcjobs-stsadm-command.html
AFAICS彼は、展開中に展開が発生する可能性があるという事実に対処していません。
Powershellソリューションについて:魅力的に聞こえますが、非常に速く複雑になる可能性があります(Powershellで展開ソリューションを作成し、私を信頼しています。また、展開に関するロジックの多くは、内部クラス(sptimerstoreなど)です。しかし、それは間違いなく実行可能ですが、:-)