トラブルシューティング

ヒストリー表示の時にエラー

例えば、次のエラーが発生する場合があります。

 

ヒストリーを表示する際に、エラーが発生しました。

'', hexadecimal value 0x08, is an invalid character. Line 7092, position 115.

 

この原因は、表示できない文字が使われているからです。

このエラーメッセージの意味は、制御文字の「BS」(16進数の文字コードでは、0x08)は、無効な文字と示しています。

 

制御文字は通常入力する時は、入力されるものではありません。しかし、なんらかの原因で、そうした文字が紛れます。例えば、他のテキストをコピー&ペーストしても、制御文字が残っているならそのままペーストされてしまいます。

 

解決するには、その文字を削除すれば良いのですが、表示されないので分からないことも多いです。対応しているソフトでないと表示されません。

VCRUNTIME140_1.dllが見つからない

VCRUNTIME140_1.dllが見つからないため、コードの実行を続行できません。プログラムを再インストールすると、この問題が解決する可能性があります。

と、エラーダイアログが表示されることがあります。

その時は、

サポートされている最新の Visual C++ 再頒布可能パッケージのダウンロード | Microsoft Learn

にある、64bit用の、

X64https://aka.ms/vs/17/release/vc_redist.x64.exe

を、ダウンロードしてインストールして下さい。

Exception while reading from stream

このエラーは、PostgreSQL(正確には、Npgsql)で、ストリーム(データ)を読み取るときに、例外が発生しました、ということです。

データを読み取る時に、タイムアウトしたのでこの例外が発生することが多いようです。

タイムアウトの秒数を伸ばすために、

 

Timeout=300; CommandTimeout=300;

を、

サーバー設定>接続設定>接続詳細>接続オプションに設定してみて下さい。

参照:Connection String Parameters: Timeouts and keepalive

では、タイムアウト(時間切れで、処理が中断される)の原因はなんでしょうか?

おそらく、原因は様々です。ここでは、いくつか原因を想定してみました。

  • HDDからの読み取りに失敗している。物理的に故障している可能性がある。
  • CPUの処理が追いつかず、処理がオーバーしている。
  • LANで、通信の不具合が発生している。ネットワークの設定の不具合や、ネットワーク上にある機器が原因の可能性がある。
    That was definelty some firewalls dropping packages between the server I have the client installed and the database. I asked firewall team to open the route between source and destination and It worked properly.
    参考:Postgresql: Exception while reading from stream