Hiroshi Saito z-saito at guitar.ocn.ne.jp
Thu Sep 25 09:41:51 PDT 2008
Hi.

Probably, It is made the option for consideration of CVE-2006-2314.
Although management is the following, please take danger into consideration.
---postgresql.conf-----
backslash_quote = on

Regards,
Hiroshi Saito

----- Original Message ----- 
From: "Miguel d Vinci" <michael.de.guzman at gmail.com>
To: <slony1-general at lists.slony.info>
Sent: Tuesday, December 18, 2007 5:27 PM
Subject: [Slony1-general] Problem with Japanese Characters



Hi!  I'm trying to implement Slony 1.2.9 in our system application.  Recently
I have encountered a problem with Japanese characters and I'm stuck.  Please
help.

Here is my platform:
* Postgres 8.1.8
* Slony 1.2.9
* Linux kernel 2.4.32

I have no problem creating slon shema and making the replication work.  I
have a Postgres script file to insert 60,000 records of Japanese characters
into one table.  The script works fine on the Primary Node and everything
(60,000 records) is saved.  However, only about 2,300+ records was
replicated on the Slave node.

Here is the error log:

2007-12-18 14:32:19 UTC DEBUG2 remoteWorkerThread_1_1: current remote
log_status = 0
 2007-12-18 14:32:19 UTC DEBUG2 remoteHelperThread_1_1: 0.058 seconds delay
for first row
 2007-12-18 14:32:19 UTC DEBUG2 remoteHelperThread_1_1: 0.128 seconds until
close cursor
 2007-12-18 14:32:19 UTC DEBUG2 remoteHelperThread_1_1: inserts=118
updates=236 deletes=0
 2007-12-18 14:32:19 UTC ERROR remoteWorkerThread_1: "insert into
"public"."icitem"
(ean,sourceean,instorecode,classcode,departmentcode,subdepartmentcode,itemname,standard,capname,capacity,unitname,unitcap,suppliercode,orderpoint,orderday,packqty,shelfcode,shelflevel,linelevel,stickertype,freedataa,freedatab,freedatac,freedata1,freedata2,freedata3,taxrate,deldate,unitprice,unitpricemem,salesprice,ordprice,promocode,promostartdate,promostarttime,promoenddate,promoendtime,lastprice,costprice,lastupdate,memprice,promotype,orddate,ordqty,delsched,stock,paperprintdate,isinitialized,initctr,promoqty,suppliername)
values ('4562176951037','','','0','5','0','カワモト プレミアム干芋
80G','','0','0.00','0','0.00','0','0','','0','','0','0','0','','','','0','0','0','0.00','','0.00','0.00','1757','0','0','','','','','0','0','2007-12-18','0','0','','0','','0','','f','0','0','');
 update only "public"."icdepartment" set ctr='544' where departmentcode='5'
and subdepartmentcode='0' and classcode='0';
 update only "public"."icstats" set allitems='3327' where cd='1';
 insert into "public"."icitem"
(ean,sourceean,instorecode,classcode,departmentcode,subdepartmentcode,itemname,standard,capname,capacity,unitname,unitcap,suppliercode,orderpoint,orderday,packqty,shelfcode,shelflevel,linelevel,stickertype,freedataa,freedatab,freedatac,freedata1,freedata2,freedata3,taxrate,deldate,unitprice,unitpricemem,salesprice,ordprice,promocode,promostartdate,promostarttime,promoenddate,promoendtime,lastprice,costprice,lastupdate,memprice,promotype,orddate,ordqty,delsched,stock,paperprintdate,isinitialized,initctr,promoqty,suppliername)
values ('4901925133025','','','0','4','0','大忠 きざみ昆布
18g','','0','0.00','0','0.00','0','0','','0','','0','0','0','','','','0','0','0','0.00','','0.00','0.00','982','0','0','','','','','0','0','2007-12-18','0','0','','0','','0','','f','0','0','');
 update only "public"."icdepartment" set ctr='425' where departmentcode='4'
and subdepartmentcode='0' and classcode='0';
 update only "public"."icstats" set allitems='3328' where cd='1';
 insert into "public"."icitem"
(ean,sourceean,instorecode,classcode,departmentcode,subdepartmentcode,itemname,standard,capname,capacity,unitname,unitcap,suppliercode,orderpoint,orderday,packqty,shelfcode,shelflevel,linelevel,stickertype,freedataa,freedatab,freedatac,freedata1,freedata2,freedata3,taxrate,deldate,unitprice,unitpricemem,salesprice,ordprice,promocode,promostartdate,promostarttime,promoenddate,promoendtime,lastprice,costprice,lastupdate,memprice,promotype,orddate,ordqty,delsched,stock,paperprintdate,isinitialized,initctr,promoqty,suppliername)
values ('4902881407144','','','0','4','0','明星 すうどんでっせ  
77g','','0','0.00','0','0.00','0','0','','0','','0','0','0','','','','0','0','0','0.00','','0.00','0.00','6261','0','0','','','','','0','0','2007-12-18','0','0','','0','','0','','f','0','0','');
 update only "public"."icdepartment" set ctr='426' where departmentcode='4'
and subdepartmentcode='0' and classcode='0';
 update only "public"."icstats" set allitems='3329' where cd='1';
 insert into "public"."icitem"
(ean,sourceean,instorecode,classcode,departmentcode,subdepartmentcode,itemname,standard,capname,capacity,unitname,unitcap,suppliercode,orderpoint,orderday,packqty,shelfcode,shelflevel,linelevel,stickertype,freedataa,freedatab,freedatac,freedata1,freedata2,freedata3,taxrate,deldate,unitprice,unitpricemem,salesprice,ordprice,promocode,promostartdate,promostarttime,promoenddate,promoendtime,lastprice,costprice,lastupdate,memprice,promotype,orddate,ordqty,delsched,stock,paperprintdate,isinitialized,initctr,promoqty,suppliername)
values
('4903333035762','','','0','5','0','ロッテふんわりブッセチョコ&エスプレッソ','','0','0.00','0','0.00','0','0','','0','','0','0','0','','','','0','0','0','0.00','','0.00','0.00','6417','0','0','','','','','0','0','2007-12-18','0','0','','0','','0','','f','0','0','');
 " ERROR: unsafe use of \' in a string literal at character 4778
 HINT: Use '' to write quotes in strings. \' is insecure in client-only
encodings.
  - qualification was:
 2007-12-18 14:32:19 UTC ERROR remoteWorkerThread_1: "insert into
"public"."icitem"
(ean,sourceean,instorecode,classcode,departmentcode,subdepartmentcode,itemname,standard,capname,capacity,unitname,unitcap,suppliercode,orderpoint,orderday,packqty,shelfcode,shelflevel,linelevel,stickertype,freedataa,freedatab,freedatac,freedata1,freedata2,freedata3,taxrate,deldate,unitprice,unitpricemem,salesprice,ordprice,promocode,promostartdate,promostarttime,promoenddate,promoendtime,lastprice,costprice,lastupdate,memprice,promotype,orddate,ordqty,delsched,stock,paperprintdate,isinitialized,initctr,promoqty,suppliername)
values ('4562176951037','','','0','5','0','カワモト プレミアム干芋
80G','','0','0.00','0','0.00','0','0','','0','','0','0','0','','','','0','0','0','0.00','','0.00','0.00','1757','0','0','','','','','0','0','2007-12-18','0','0','','0','','0','','f','0','0','');
 update only "public"."icdepartment" set ctr='544' where departmentcode='5'
and subdepartmentcode='0' and classcode='0';
 update only "public"."icstats" set allitems='3327' where cd='1';
 insert into "public"."icitem"
(ean,sourceean,instorecode,classcode,departmentcode,subdepartmentcode,itemname,standard,capname,capacity,unitname,unitcap,suppliercode,orderpoint,orderday,packqty,shelfcode,shelflevel,linelevel,stickertype,freedataa,freedatab,freedatac,freedata1,freedata2,freedata3,taxrate,deldate,unitprice,unitpricemem,salesprice,ordprice,promocode,promostartdate,promostarttime,promoenddate,promoendtime,lastprice,costprice,lastupdate,memprice,promotype,orddate,ordqty,delsched,stock,paperprintdate,isinitialized,initctr,promoqty,suppliername)
values ('4901925133025','','','0','4','0','大忠 きざみ昆布
18g','','0','0.00','0','0.00','0','0','','0','','0','0','0','','','','0','0','0','0.00','','0.00','0.00','982','0','0','','','','','0','0','2007-12-18','0','0','','0','','0','','f','0','0','');
 update only "public"."icdepartment" set ctr='425' where departmentcode='4'
and subdepartmentcode='0' and classcode='0';
 update only "public"."icstats" set allitems='3328' where cd='1';
 insert into "public"."icitem"
(ean,sourceean,instorecode,classcode,departmentcode,subdepartmentcode,itemname,standard,capname,capacity,unitname,unitcap,suppliercode,orderpoint,orderday,packqty,shelfcode,shelflevel,linelevel,stickertype,freedataa,freedatab,freedatac,freedata1,freedata2,freedata3,taxrate,deldate,unitprice,unitpricemem,salesprice,ordprice,promocode,promostartdate,promostarttime,promoenddate,promoendtime,lastprice,costprice,lastupdate,memprice,promotype,orddate,ordqty,delsched,stock,paperprintdate,isinitialized,initctr,promoqty,suppliername)
values ('4902881407144','','','0','4','0','明星 すうどんでっせ  
77g','','0','0.00','0','0.00','0','0','','0','','0','0','0','','','','0','0','0','0.00','','0.00','0.00','6261','0','0','','','','','0','0','2007-12-18','0','0','','0','','0','','f','0','0','');
 update only "public"."icdepartment" set ctr='426' where departmentcode='4'
and subdepartmentcode='0' and classcode='0';
 update only "public"."icstats" set allitems='3329' where cd='1';
 insert into "public"."icitem"
(ean,sourceean,instorecode,classcode,departmentcode,subdepartmentcode,itemname,standard,capname,capacity,unitname,unitcap,suppliercode,orderpoint,orderday,packqty,shelfcode,shelflevel,linelevel,stickertype,freedataa,freedatab,freedatac,freedata1,freedata2,freedata3,taxrate,deldate,unitprice,unitpricemem,salesprice,ordprice,promocode,promostartdate,promostarttime,promoenddate,promoendtime,lastprice,costprice,lastupdate,memprice,promotype,orddate,ordqty,delsched,stock,paperprintdate,isinitialized,initctr,promoqty,suppliername)
values
('4903333035762','','','0','5','0','ロッテふんわりブッセチョコ&エスプレッソ','','0','0.00','0','0.00','0','0','','0','','0','0','0','','','','0','0','0','0.00','','0.00','0.00','6417','0','0','','','','','0','0','2007-12-18','0','0','','0','','0','','f','0','0','');
 " ERROR: current transaction is aborted, commands ignored until end of
transaction block
  - qualification was:
 2007-12-18 14:32:19 UTC ERROR remoteWorkerThread_1: SYNC aborted
 2007-12-18 14:32:20 UTC DEBUG2 syncThread: new sl_action_seq 1 - SYNC 13
 2007-12-18 14:32:21 UTC DEBUG2 remoteListenThread_1: queue event 1,106 SYNC
 2007-12-18 14:32:23 UTC DEBUG2 remoteListenThread_1: queue event 1,107 SYNC
 2007-12-18 14:32:25 UTC DEBUG2 remoteListenThread_1: queue event 1,108 SYNC
 2007-12-18 14:32:26 UTC DEBUG2 localListenThread: Received event 2,13 SYNC

>From this log, the error "ERROR: unsafe use of \' in a string literal at
character 4778
 HINT: Use '' to write quotes in strings. \' is insecure in client-only
encodings." was reflected.  What confuses me is that the Secondary server
has the same database settings with the Primary Server.  Both servers have
database were created with UTF-8 encoding.  CLIENT-ENCODING (in
postgresql.conf) for both servers were set to SJIS.

Another weird part is this:  I dropped slony schema and recreated the
database on the Secondary Server.  I re-created slony and run slon.  After a
few moments, I checked the table in the Secondary Node and everything was
replicated.  So it means that the problem is triggered somewhere during the
actual INSERTing of records.

I'm really stuck with this problem and I would really appreciate it if
someone could tell me how to fix it.

Thanks in advance.

;) Miguel
-- 
View this message in context: 
http://www.nabble.com/Problem-with-Japanese-Characters-tp14384536p14384536.html
Sent from the Slony-I -- General mailing list archive at Nabble.com.

_______________________________________________
Slony1-general mailing list
Slony1-general at lists.slony.info
http://lists.slony.info/mailman/listinfo/slony1-general 



More information about the Slony1-general mailing list