DS利用中にjava.lang.StackOverflowErrorが発生する。

フォローする

概要

DSでロボット開発中、内部エラーが発生する事があります。
これによりDAステップの編集が行えないといった影響が出る事があります。

エラーメッセージ


エラーリポートには次のエラーが記録されます。
java.lang.StackOverflowError

スタックトレースには数十行ごとに同じ処理を繰り返すような処理が記録されます。
<参考:10.7.0.4事例でのスタック>

java.lang.StackOverflowError
 at org.bitbucket.inkytonik.kiama.relation.Relation.unapplySeq(Relation.scala:137)
 at org.bitbucket.inkytonik.kiama.attribution.Decorators.indflt$1(Decorators.scala:125)
 at org.bitbucket.inkytonik.kiama.attribution.Decorators.$anonfun$chain$3(Decorators.scala:135)
at com.kapowtech.da.language.analysis.RobotAnalyser$$anonfun$environmentInput$1.applyOrElse(RobotAnalyser.scala:307)
at com.kapowtech.da.language.analysis.RobotAnalyser$$anonfun$environmentInput$1.applyOrElse(RobotAnalyser.scala:276)
at org.bitbucket.inkytonik.kiama.attribution.Decorators.$anonfun$chain$2(Decorators.scala:135)
at org.bitbucket.inkytonik.kiama.attribution.AttributionCore$CachedAttribute.apply(AttributionCore.scala:56)
at org.bitbucket.inkytonik.kiama.attribution.Decorators.outdflt$1(Decorators.scala:142)
at org.bitbucket.inkytonik.kiama.attribution.Decorators.$anonfun$chain$6(Decorators.scala:147)
at com.kapowtech.da.language.analysis.RobotAnalyser$$anonfun$environmentOutput$1.applyOrElse(RobotAnalyser.scala:348)
at com.kapowtech.da.language.analysis.RobotAnalyser$$anonfun$environmentOutput$1.applyOrElse(RobotAnalyser.scala:316)
at org.bitbucket.inkytonik.kiama.attribution.Decorators.$anonfun$chain$5(Decorators.scala:147)
at org.bitbucket.inkytonik.kiama.attribution.AttributionCore$CachedAttribute.apply(AttributionCore.scala:56)
at org.bitbucket.inkytonik.kiama.attribution.Decorators.outdflt$1(Decorators.scala:140)
at org.bitbucket.inkytonik.kiama.attribution.Decorators.$anonfun$chain$6(Decorators.scala:147)
at com.kapowtech.da.language.analysis.RobotAnalyser$$anonfun$environmentOutput$1.applyOrElse(RobotAnalyser.scala:348)
at com.kapowtech.da.language.analysis.RobotAnalyser$$anonfun$environmentOutput$1.applyOrElse(RobotAnalyser.scala:316)
at org.bitbucket.inkytonik.kiama.attribution.Decorators.$anonfun$chain$5(Decorators.scala:147)
at org.bitbucket.inkytonik.kiama.attribution.AttributionCore$CachedAttribute.apply(AttributionCore.scala:56)
at org.bitbucket.inkytonik.kiama.attribution.Decorators.outdflt$1(Decorators.scala:140)
at org.bitbucket.inkytonik.kiama.attribution.Decorators.$anonfun$chain$6(Decorators.scala:147)
at com.kapowtech.da.language.analysis.RobotAnalyser$$anonfun$environmentOutput$1.applyOrElse(RobotAnalyser.scala:348)
at com.kapowtech.da.language.analysis.RobotAnalyser$$anonfun$environmentOutput$1.applyOrElse(RobotAnalyser.scala:316)
at org.bitbucket.inkytonik.kiama.attribution.Decorators.$anonfun$chain$5(Decorators.scala:147)
at org.bitbucket.inkytonik.kiama.attribution.AttributionCore$CachedAttribute.apply(AttributionCore.scala:56)
at org.bitbucket.inkytonik.kiama.attribution.Decorators.indflt$1(Decorators.scala:126)
at org.bitbucket.inkytonik.kiama.attribution.Decorators.$anonfun$chain$3(Decorators.scala:135)
at com.kapowtech.da.language.analysis.RobotAnalyser$$anonfun$environmentInput$1.applyOrElse(RobotAnalyser.scala:307)
at com.kapowtech.da.language.analysis.RobotAnalyser$$anonfun$environmentInput$1.applyOrElse(RobotAnalyser.scala:276)
at org.bitbucket.inkytonik.kiama.attribution.Decorators.$anonfun$chain$2(Decorators.scala:135)
at org.bitbucket.inkytonik.kiama.attribution.AttributionCore$CachedAttribute.apply(AttributionCore.scala:56)
at org.bitbucket.inkytonik.kiama.attribution.Decorators.indflt$1(Decorators.scala:128)
at org.bitbucket.inkytonik.kiama.attribution.Decorators.$anonfun$chain$3(Decorators.scala:135)
at com.kapowtech.da.language.analysis.RobotAnalyser$$anonfun$environmentInput$1.applyOrElse(RobotAnalyser.scala:307)
at com.kapowtech.da.language.analysis.RobotAnalyser$$anonfun$environmentInput$1.applyOrElse(RobotAnalyser.scala:276)
at org.bitbucket.inkytonik.kiama.attribution.Decorators.$anonfun$chain$2(Decorators.scala:135)
at org.bitbucket.inkytonik.kiama.attribution.AttributionCore$CachedAttribute.apply(AttributionCore.scala:56)
at org.bitbucket.inkytonik.kiama.attribution.Decorators.indflt$1(Decorators.scala:128)
at org.bitbucket.inkytonik.kiama.attribution.Decorators.$anonfun$chain$3(Decorators.scala:135)
at com.kapowtech.da.language.analysis.RobotAnalyser$$anonfun$environmentInput$1.applyOrElse(RobotAnalyser.scala:307)
at com.kapowtech.da.language.analysis.RobotAnalyser$$anonfun$environmentInput$1.applyOrElse(RobotAnalyser.scala:276)
at org.bitbucket.inkytonik.kiama.attribution.Decorators.$anonfun$chain$2(Decorators.scala:135)
at org.bitbucket.inkytonik.kiama.attribution.AttributionCore$CachedAttribute.apply(AttributionCore.scala:56)
at org.bitbucket.inkytonik.kiama.attribution.Decorators.indflt$1(Decorators.scala:128)
at org.bitbucket.inkytonik.kiama.attribution.Decorators.$anonfun$chain$3(Decorators.scala:135)
at com.kapowtech.da.language.analysis.RobotAnalyser$$anonfun$environmentInput$1.applyOrElse(RobotAnalyser.scala:307)
at com.kapowtech.da.language.analysis.RobotAnalyser$$anonfun$environmentInput$1.applyOrElse(RobotAnalyser.scala:276)
at org.bitbucket.inkytonik.kiama.attribution.Decorators.$anonfun$chain$2(Decorators.scala:135)
at org.bitbucket.inkytonik.kiama.attribution.AttributionCore$CachedAttribute.apply(AttributionCore.scala:56)
 at org.bitbucket.inkytonik.kiama.attribution.Decorators.indflt$1(Decorators.scala:128)
 at org.bitbucket.inkytonik.kiama.attribution.Decorators.$anonfun$chain$3(Decorators.scala:135)
 at com.kapowtech.da.language.analysis.RobotAnalyser$$anonfun$environmentInput$1.applyOrElse(RobotAnalyser.scala:307)
 at com.kapowtech.da.language.analysis.RobotAnalyser$$anonfun$environmentInput$1.applyOrElse(RobotAnalyser.scala:276)
 at org.bitbucket.inkytonik.kiama.attribution.Decorators.$anonfun$chain$2(Decorators.scala:135)
 at org.bitbucket.inkytonik.kiama.attribution.AttributionCore$CachedAttribute.apply(AttributionCore.scala:56)
 at org.bitbucket.inkytonik.kiama.attribution.Decorators.outdflt$1(Decorators.scala:142)
  :

 

対処方法

以下の設定追加により事象が解消されるかご確認をお願い致します。
4096Kはあくまで例となりますので、環境によってはより大きなサイズの指定が必要となる可能性もございます。

■設定先
<製品インストールフォルダ>\bin\DesignStudio.conf

■設定値
wrapper.java.additional.1=-Xss4096K

※DesignStudio.confの初期設定ではスタック領域は未指定となっております。
※他にwrapper.java.additional.*の設定がある場合、
 wrapper.java.additional.1の数字部分は.2や.3など重複しない数字を指定ください。
※4096Kの「K」はKBの単位を示しております。

注意事項

デフォルトのC:\Program Files配下にインストールされている場合、
ユーザ権限によっては定義ファイルを直接編集できない可能性がある為、
一度定義ファイルをデスクトップ上にコピーしてから編集し、
元の場所に戻すといった作業が必要になる場合がございますのでご注意下さい。

参考

スタックサイズをチューニングする方法について、ドキュメントに記載がされていない

区分 確認Ver
トラブルシュート 10.3.0.7,10.3.0.8,10.7.0.4