RS/DSとWebkit間で通信可能なデータサイズに上限がある

フォローする

Webkitエンジンを使用したロボット(kapowbrowser.exe)とRS/DS間の通信では、通信可能なデータサイズは64MBが上限となっております。
この上限を超えた場合、DS上で下記エラー例の通り内部エラー(Internal Error)が発生し、RoboServer.logに下記例の様なメッセージが出力されます。

■エラー例

例外メッセージ:
Internal error during robot execution.

スタック トレース:
com.kapowtech.lang.ApplicationError: Internal error during robot execution.
at kapow.robot.robomaker.engine.debug.DebugExecutionController$DebugModeExecutionControllerEngineCallback.lambda$handleExecutionFatalError$0(DebugExecutionController.java:588)
at kapow.util.gui.SwingThreadUtil$1.run(SwingThreadUtil.java:56)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
at TRIGGERED_BY.invokeLater(Unknown Source)
at kapow.util.gui.SwingThreadUtil.invokeLater(SwingThreadUtil.java:50)
at kapow.robot.robomaker.engine.debug.DebugExecutionController$DebugModeExecutionControllerEngineCallback.handleExecutionFatalError(DebugExecutionController.java:580)
at kapow.robot.robomaker.engine.StudioRobotExecutionEngine.lambda$startBackgroundExecution$0(StudioRobotExecutionEngine.java:287)
at java.lang.Thread.run(Thread.java:748)
Caused by: com.kapowtech.webkit.remote.RemoteWebKitException: cannot invoke operations on closed browser
at com.kapowtech.webkit.remote.RemoteBrowserProxy.checkForClosed(RemoteBrowserProxy.java:116)
at com.kapowtech.webkit.remote.RemoteBrowserProxy.removeSnapshot(RemoteBrowserProxy.java:1403)
at com.kapowtech.webkit.remote.RemoteBrowserProxy.unuseSnapshot(RemoteBrowserProxy.java:1416)
at com.kapowtech.webkit.browser.WebKitIdBasedBrowserSnapshot.release(WebKitIdBasedBrowserSnapshot.java:58)
at kapow.robot.robomaker.state.DataState.clearSnapshot(DataState.java:884)
at kapow.robot.robomaker.state.ReferenceCountRelyingDataStateSnapshotReleaser.update(ReferenceCountRelyingDataStateSnapshotReleaser.java:41)
at kapow.robot.robomaker.engine.stackengine.StackEngine.execute(StackEngine.java:70)
at kapow.robot.robomaker.engine.StudioRobotExecutionEngine.lambda$startBackgroundExecution$0(StudioRobotExecutionEngine.java:269)
... 1 more

 

■メッセージ例

2019-12-02 12:57:04,019 INFO webkit - process 7560: arguments to dbus_message_iter_append_fixed_array() were incorrect, assertion "n_elements <= DBUS_MAXIMUM_ARRAY_LENGTH / _dbus_type_get_alignment (element_type)" failed in file n:\build\win32libs-sources\dbus-src-1.4.16-20110302\work\dbus-1.4.16\dbus\dbus-message.c line 2665.
2019-12-02 12:57:04,020 INFO webkit - This is normally a bug in some application using the D-Bus library.

 

■回避策

Webkitエンジンを使用した回避策はありません。
Webkitエンジンで読み込むファイルサイズを64MB未満にするか、DAを使用してファイルを操作してください。なおClassicエンジンでファイル読み込みを行う場合、本不具合は発生しません。

 

■改修予定

改修予定時期や修正予定バージョンは未定ですが、この不具合が改修されることでWebkitエンジンとRS/DS間の通信におけるデータサイズは無制限となる予定です。

 

区分 発生Ver 改修ID 修正Ver
不具合 9.7 , 10.1 , 10.2 , 10.3 , 10.4 1358479  
2人中1人がこの記事が役に立ったと言っています

コメント

0件のコメント

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