アカウント名:
パスワード:
そんなことありうる? 配列インデックスのオーバーフロー的なことが起きたのでは? と指摘されてるな
スラドの文章上のことだけからいえば、DBとしてのインデックス機能じゃなくてアプリとしてのインデックス用途テーブルに見える。
COBOLでしょ。文字通りインデックスファイルというものがあった気がする。
記者会見によると、CとJavaを使ってたらしいよ。
50年間も守り続けているのだから、てっきりメインフレームのアセンブラだと思っていたよ。
それをまさに今回の改修でオープンシステムとJavaに置き換えようとしていたので
RC17時点でオープンシステムに置き換え済みだけどね。
仕様を把握してCとJavaで一から作り直すのはもはや仕様が迷宮クラスで不可能なので、COBOLで書かれたプログラムを、インデックスファイルの仕様や処理も含めCとJavaで機械的にエミュレーションしてるだけだったりして…よく知らないけど、一般論としてはそういうのわりとあるって話を旧名twitter現Xで見かけました。(全銀のこれがそうなのかは不明)
そういう作りだと、当然元のCOBOLのプログラムよりもさらに読みづらいプログラムになってるわけで原因調査中だけどよく分からんってのも普通にありえそう。
元の仕様を洗ったところでどうしようもないですよ。JavaでCOBOLのコードをエミュレートしているのならそこにバグがあると見るべきでは無いかと。10進演算のBigDecimal型オブジェクトが使用後もヒープに残り続けてメモリ空間を圧迫するとか怪しいポイントを想定して洗っていくしかないと思います。
この手のシステムって外部インターフェイス部分がC(COBOLは可変長文字列が扱えないのでそれに合わせたデータ修正が必要)だから、CとJavaって事はJP1のCOBOLジョブをそのままJavaで置き換えたような作りなのかな?
COBOLで作ってうまく動いていた者を、COBOLを切るためにJavaに変えようとして(Javaという選択も相当おかしいが)大失敗したという話なんだろうか。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
UNIXはシンプルである。必要なのはそのシンプルさを理解する素質だけである -- Dennis Ritchie
メモリー不足で不正な値に (スコア:0)
そんなことありうる? 配列インデックスのオーバーフロー的なことが起きたのでは? と指摘されてるな
Re:メモリー不足で不正な値に (スコア:0)
スラドの文章上のことだけからいえば、DBとしてのインデックス機能じゃなくてアプリとしてのインデックス用途テーブルに見える。
Re:メモリー不足で不正な値に (スコア:1)
COBOLでしょ。文字通りインデックスファイルというものがあった気がする。
Re: (スコア:0)
記者会見によると、CとJavaを使ってたらしいよ。
Re:メモリー不足で不正な値に (スコア:1)
50年間も守り続けているのだから、てっきりメインフレームのアセンブラだと思っていたよ。
Re: (スコア:0)
それをまさに今回の改修でオープンシステムとJavaに置き換えようとしていたので
Re: (スコア:0)
RC17時点でオープンシステムに置き換え済みだけどね。
Re:メモリー不足で不正な値に (スコア:1)
仕様を把握してCとJavaで一から作り直すのはもはや仕様が迷宮クラスで不可能なので、
COBOLで書かれたプログラムを、インデックスファイルの仕様や処理も含め
CとJavaで機械的にエミュレーションしてるだけだったりして…
よく知らないけど、一般論としてはそういうのわりとあるって話を旧名twitter現Xで見かけました。
(全銀のこれがそうなのかは不明)
そういう作りだと、当然元のCOBOLのプログラムよりもさらに読みづらいプログラムになってるわけで
原因調査中だけどよく分からんってのも普通にありえそう。
Re: (スコア:0)
元の仕様を洗ったところでどうしようもないですよ。
JavaでCOBOLのコードをエミュレートしているのならそこにバグがあると見るべきでは無いかと。
10進演算のBigDecimal型オブジェクトが使用後もヒープに残り続けてメモリ空間を圧迫するとか
怪しいポイントを想定して洗っていくしかないと思います。
Re: (スコア:0)
この手のシステムって外部インターフェイス部分がC(COBOLは可変長文字列が扱えないのでそれに合わせたデータ修正が必要)だから、
CとJavaって事はJP1のCOBOLジョブをそのままJavaで置き換えたような作りなのかな?
Re: (スコア:0)
COBOLで作ってうまく動いていた者を、COBOLを切るためにJavaに変えようとして(Javaという選択も相当おかしいが)大失敗したという話なんだろうか。