.NET API を利用してロボットを実行する際に、Execution IDが重複してロボット実行エラーが発生する

フォローする

事象概要

.NET APIのRequestを利用して、複数回(500回程)連続でExecute(実行)した場合に下記のような重複エラーが発生する事象が確認されています。

<エラー>

RoboServer reported the following error: ServerErrorResponse(date=yyyy/mm/dd hh:mm:ss,errorMessage="A robot with execution id xxxx is already executing, execution id's must be unique.")

 

MCの「リポジトリ(Repository)」タブから.NET APIC#)のAPIを抜粋

// Create the request
 Request request = new Request("Library:/xxxxx");
 request.StopOnConnectionLost = true;
 request.StopRobotOnApiException = true;
 request.MaxExecutionTime = 3600;

// Use the repository as Robot Library
 RepositoryRobotLibrary lib = new RepositoryRobotLibrary("http://xxxxx",
 "Default project", 60000L, repositoryUserName, repositoryPassword);
 request.RobotLibrary = lib;

// Execute the robot, and process the result
 RqlResult result = request.Execute(clusterName);

  

原因

内部で.NET API用に実行IDを生成していますが、不正なIDを生成してしまうことが原因です。

 

対処方法

手動でIDの採番ロジックを組み、実行IDを作成して、setExecutionIDメソッドを利用して実行させるか、
Java APIに変更することで対処できます。

 

参考ナレッジ

Java/.NET APIの参照資料

Java API と C# API の機能に差はありますか?

 

区分 発生Ver 改修ID 修正Ver
不具合   1328111  
0人中0人がこの記事が役に立ったと言っています

コメント

0件のコメント

ログインしてコメントを残してください。