[pgcluster: 917] Re: JDBC ドライバ経由での2バイト文字の更新

青木俊憲 aoki @ shonai.co.jp
2006年 9月 29日 (金) 16:53:23 JST


以前お世話になった、青木と申します。

PGCluster(1.5.0rc7)の2バイト文字のレプリケーション不可の件で、
psqlのcopyコマンドでも同様の現象となります。

実際にはLinux環境(EUC_JP)にて、encodingコマンドでSJIS指定を行い、
SJISのファイルをCOPYすると、マスター側は更新されますが
スレーブ側にレプリケーションする際に
ERROR:  invalid byte sequence for encoding "EUC_JP": 0x8b67
といエラーが吐かれています。

同様にWindows環境のPostgreSQL・psqlにてcopyを行っても
同じエラーとなります。

Linuxにて同じファイルをEUC_JPにコード変換し、そのファイルをCOPY
(encodingせずに)すると
マスター・スレーブとも更新されるようです。
何か解決先がありましたら、ご教授をお願いしたいと思います。


Takeo Sakurai <saku @ msr.co.jp> wrote:

> はじめまして。
> 櫻井@MSRと申します。
> 
> #先程入会前に空のメールを送ってしましました。
> #申し訳ありませんでした。
> 
> 現在PGCluster(1.5.0rc7)の評価、検証を行っております。
> そこでJDBCドライバ経由での2バイト文字の更新時にレプリケーションが上手
> く行われないという現象が発生しており、その解決策についてご教示頂ければ
> と思います。
> 
> 
> ■現象
> 具体的には、JavaプログラムからJDBCドライバ経由でDBアクセスし、更新処理
> を行った場合に、一方のクラスタDBは正常に更新され、もう一方のクラスタDB
> はエラーにより更新されないor文字化けして更新されるという現象です。
> この問題は、2バイト文字を含む文字列を更新しようとした場合に発生します。
> 発生しているエラーは下記のようなエラーです。
> ERROR:  invalid byte sequence for encoding "EUC_JP": 0x8fb2
> 
> また、同じDBをPHPからアクセスすることも並行して検証中で、PHPからのDBア
> クセスでは正常に2バイト文字を含む文字列を更新することができます。
> PHPはEUP_JPで、JDBCドライバはUnicodeであることから、JDBCドライバ周りで
> の文字コードの問題と考えています。
> 
> 
> ■JDBCドライバによる動作の違い
> JDBCドライバは
> http://jdbc.postgresql.org/
> から
> postgresql-8.1-407.jdbc3.jar
> を取得しております。
> 
> 現象を確認してから、JDBCドライバとPGCluster[Postgres]での文字コードに
> 関する情報を参考に確認を行っておりますが、上記現象の原因となるような箇
> 所を特定することができませんでした。
> そこで、もともと検証のためのJavaプログラムはPostgresSQL(7.4.3)で稼動中
> のプロダクトであるため、そのプロダクトで使用しているJDBCドライバを使用
> してみました。
> それは同じく上記のサイトから取得した
> pg74.216.jdbc3.jar
> です。
> そうすると、正常にレプリケーションが行われました。
> 
> 
> PGCluster-1.5.0rc7がPostgreSQL-8.1.2をベースにしているとのことなので、
> JDBCドライバもそのバージョンに合わせた方がよいと判断しております。
> postgresql-8.1-407.jdbc3.jar
> を使用するためには、何か設定等が必要なのでしょうか?
> また現時点で対応していな場合、検証ということで動作確認を行いますが、
> pg74.216.jdbc3.jar
> を使用するという選択について既知の問題など、ご意見を聞かせて頂ければと
> 思います。
> 
> 
> 以上、宜しくお願い致します。
> 
> 
> 
> -- 
> No virus found in this incoming message.
> Checked by AVG Free Edition.
> Version: 7.1.394 / Virus Database: 268.10.4/396 - Release Date: 2006/07/24


_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
_/ 荘内銀行 IT企画部e−ビジネスグループ
_/_/        青 木 俊 憲 (Toshinori Aoki)
_/_/_/  〒990-2413 山形県山形市南原町2-5-15
_/_/_/_/ TEL:023-629-8020 FAX:023-629-8029
_/_/_/_/_/ mailto:aoki @ shonai.co.jp
_/_/_/_/_/_/  http://www.shonai.co.jp/
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/




pgcluster メーリングリストの案内