<p dir="ltr">Do you have any idea ?</p>
<div class="gmail_quote">06 авг. 2015 г. 6:20 пользователь "Yura Ivanovskiy" <<a href="mailto:freemanlutsk@gmail.com">freemanlutsk@gmail.com</a>> написал:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>This is not easy, because this random  not all inserts with problem.</div><div>For example If i tried insert manualy (with psql or ruby console) - all works fine:</div><div><br></div><div>Aug  5 09:18:20 pg1 pgpool: 2015-08-05 09:18:20: pid 14744: LOG:  pool_send_and_wait: Error or notice message from backend: : DB node id: 0 backend pid: 14884 statement: "INSERT INTO "clic" ("android_id", "app_id", "campaign_image_id", "campaign_url_id", "country_id", "created_at", "device_id", "ip", "type", "ua", "updated_at", "user_only", "white_sdk", "x_forwarded") VALUES ('ee543782-ace7-41fb-85e7-21022d132244', 5468, 937, 568, 42, '2015-08-05 09:18:20.501305', 673012, '85.99.1.1', 2, 'Dalvik/1.6.0 (Linux; U; Android 4.1.2; GT-I9105P Build/JZO54K)', '2015-08-05 09:18:20.501305', 'f', 't', '85.99.1.1') RETURNING "id"" message: "invalid byte sequence for encoding "UTF8": 0xe5 0x02"</div><div><br></div><div>INSERT INTO "clic" ("android_id", "app_id", "campaign_image_id", "campaign_url_id", "country_id", "created_at", "device_id", "ip", "type", "ua", "updated_at", "user_only", "white_sdk", "x_forwarded") VALUES ('ee543782-ace7-41fb-85e7-21022d132244', 5468, 937, 568, 42, '2015-08-05 09:18:20.501305', 673012, '85.99.1.1', 2, 'Dalvik/1.6.0 (Linux; U; Android 4.1.2; GT-I9105P Build/JZO54K)', '2015-08-05 09:18:20.501305', 'f', 't', '85.99.1.1') RETURNING "id";</div><div>    id    </div><div>----------</div><div> 59095624</div><div>(1 row)</div><div><br></div><div>Why "pgpool"  giving error?</div></div><div class="gmail_extra"><br><div class="gmail_quote">2015-08-06 6:00 GMT+03:00 Tatsuo Ishii <span dir="ltr"><<a href="mailto:ishii@postgresql.org" target="_blank">ishii@postgresql.org</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I need the INSERT statement your application sent to pgpool-II so that<br>
I could reproduce the problem. Please attach the statement (not<br>
include in the mail).<br>
<div><div><br>
Best regards,<br>
--<br>
Tatsuo Ishii<br>
SRA OSS, Inc. Japan<br>
English: <a href="http://www.sraoss.co.jp/index_en.php" rel="noreferrer" target="_blank">http://www.sraoss.co.jp/index_en.php</a><br>
Japanese:<a href="http://www.sraoss.co.jp" rel="noreferrer" target="_blank">http://www.sraoss.co.jp</a><br>
<br>
> How I can resolve this issue?<br>
><br>
> 2015-08-05 13:17 GMT+03:00 Yura Ivanovskiy <<a href="mailto:freemanlutsk@gmail.com" target="_blank">freemanlutsk@gmail.com</a>>:<br>
><br>
>> Yes, in the application<br>
>>  encoding: unicode<br>
>><br>
>> 2015-08-05 12:46 GMT+03:00 Tatsuo Ishii <<a href="mailto:ishii@postgresql.org" target="_blank">ishii@postgresql.org</a>>:<br>
>><br>
>>> > thanx for answers<br>
>>> > please look at this part of log<br>
>>> > that is, data mangled and don't sending to backend, right?<br>
>>><br>
>>> No. The message "invalid byte sequence for encoding "UTF8": 0xe5 0x02"<br>
>>> comes from backend and pgpool-II just shows it. You did't mention if<br>
>>> 1) is your case or not. So I ask you again: Do you set client encoding<br>
>>> to other than UTF-8?<br>
>>><br>
>>> Best regards,<br>
>>> --<br>
>>> Tatsuo Ishii<br>
>>> SRA OSS, Inc. Japan<br>
>>> English: <a href="http://www.sraoss.co.jp/index_en.php" rel="noreferrer" target="_blank">http://www.sraoss.co.jp/index_en.php</a><br>
>>> Japanese:<a href="http://www.sraoss.co.jp" rel="noreferrer" target="_blank">http://www.sraoss.co.jp</a><br>
>>><br>
>>> > Aug  5 09:18:20 pg1 pgpool: 2015-08-05 09:18:20: pid 14483: LOG:  fetch<br>
>>> > from memory cache<br>
>>> > Aug  5 09:18:20 pg1 pgpool: 2015-08-05 09:18:20: pid 14483: DETAIL:<br>
>>> query<br>
>>> > result fetched from cache. statement: SELECT 1<br>
>>> ><br>
>>> ><br>
>>> > Aug  5 09:18:20 pg1 pgpool: 2015-08-05 09:18:20: pid 14744: LOG:  DB<br>
>>> node<br>
>>> > id: 0 backend pid: 14884 statement: Parse: INSERT INTO "clic"<br>
>>> > ("android_id", "app_id", "campaign_image_id", "campaign_url_id",<br>
>>> > "country_id", "created_at", "device_id", "ip", "type", "ua",<br>
>>> "updated_at",<br>
>>> > "user_only", "white_sdk", "x_forwarded") VALUES<br>
>>> > ('ee543782-ace7-41fb-85e7-21022d132244', 5468, 937, 568, 42, '2015-08-05<br>
>>> > 09:18:20.501305', 673012, '85.99.1.1', 2, 'Dalvik/1.6.0 (Linux; U;<br>
>>> Android<br>
>>> > 4.1.2; GT-I9105P Build/JZO54K)', '2015-08-05 09:18:20.501305', 'f', 't',<br>
>>> > '85.99.1.1') RETURNING "id"<br>
>>> ><br>
>>> ><br>
>>> > Aug  5 09:18:20 pg1 pgpool: 2015-08-05 09:18:20: pid 14744: LOG:<br>
>>> >  pool_send_and_wait: Error or notice message from backend: : DB node<br>
>>> id: 0<br>
>>> > backend pid: 14884 statement: "INSERT INTO "clic" ("android_id",<br>
>>> "app_id",<br>
>>> > "campaign_image_id", "campaign_url_id", "country_id", "created_at",<br>
>>> > "device_id", "ip", "type", "ua", "updated_at", "user_only", "white_sdk",<br>
>>> > "x_forwarded") VALUES ('ee543782-ace7-41fb-85e7-21022d132244', 5468,<br>
>>> 937,<br>
>>> > 568, 42, '2015-08-05 09:18:20.501305', 673012, '85.99.1.1', 2,<br>
>>> > 'Dalvik/1.6.0 (Linux; U; Android 4.1.2; GT-I9105P Build/JZO54K)',<br>
>>> > '2015-08-05 09:18:20.501305', 'f', 't', '85.99.1.1') RETURNING "id""<br>
>>> > message: "invalid byte sequence for encoding "UTF8": 0xe5 0x02"<br>
>>> ><br>
>>> ><br>
>>> > Aug  5 09:18:20 pg1 pgpool: 2015-08-05 09:18:20: pid 14744: LOG:  Parse:<br>
>>> > Error or notice message from backend: : DB node id: 0 backend pid: 14884<br>
>>> > statement: "INSERT INTO "clic" ("android_id", "app_id",<br>
>>> > "campaign_image_id", "campaign_url_id", "country_id", "crHå#002"<br>
>>> message:<br>
>>> > "invalid byte sequence for encoding "UTF8": 0xe5 0x02"<br>
>>> ><br>
>>> > Aug  5 09:18:20 pg1 pgpool: 2015-08-05 09:18:20: pid 14744: LOG:<br>
>>> >  statement: ROLLBACK<br>
>>> > Aug  5 09:18:20 pg1 pgpool: 2015-08-05 09:18:20: pid 14744: LOG:  DB<br>
>>> node<br>
>>> > id: 0 backend pid: 14884 statement: ROLLBACK<br>
>>> ><br>
>>> ><br>
>>> > in /var/log/postgresql/postgresql-9.3-main.log only<br>
>>> ><br>
>>> > 2015-08-05 09:18:20 UTC ERROR:  invalid byte sequence for encoding<br>
>>> "UTF8":<br>
>>> > 0xe5 0x02<br>
>>> > ...<br>
>>> ><br>
>>> > 2015-08-05 11:50 GMT+03:00 Tatsuo Ishii <<a href="mailto:ishii@postgresql.org" target="_blank">ishii@postgresql.org</a>>:<br>
>>> ><br>
>>> >> I meant the "od" command.<br>
>>> >><br>
>>> >> Best regards,<br>
>>> >> --<br>
>>> >> Tatsuo Ishii<br>
>>> >> SRA OSS, Inc. Japan<br>
>>> >> English: <a href="http://www.sraoss.co.jp/index_en.php" rel="noreferrer" target="_blank">http://www.sraoss.co.jp/index_en.php</a><br>
>>> >> Japanese:<a href="http://www.sraoss.co.jp" rel="noreferrer" target="_blank">http://www.sraoss.co.jp</a><br>
>>> >><br>
>>> >> >> You may want to use od to grab exact data.<br>
>>> >> ><br>
>>> >> > I don't fully understood it. "od"- ?<br>
>>> >> ><br>
>>> >> > 2015-08-05 10:28 GMT+03:00 Tatsuo Ishii <<a href="mailto:ishii@postgresql.org" target="_blank">ishii@postgresql.org</a>>:<br>
>>> >> ><br>
>>> >> >> There are two possibilites.<br>
>>> >> >><br>
>>> >> >> 1) you are using "client_encoding": ie. your frontend uses<br>
>>> ISO-8859-1<br>
>>> >> >>    or something like that and PostgreSQL uses UTF-8. Unfortunately<br>
>>> >> >>    pgpool-II does not support client_encoding.<br>
>>> >> >><br>
>>> >> >> 2) The data you sent is mungled somewhere between pgpool and<br>
>>> >> >>    PostgreSQL. You can check that by comparing 'Dalvik/<a href="http://1.6.0." rel="noreferrer" target="_blank">1.6.0.</a>..'<br>
>>> (the<br>
>>> >> >>    original data in your INSERT statement), that one in the pgool<br>
>>> log<br>
>>> >> >>    and that one in the PostgreSQL log. You may want to use od to<br>
>>> grab<br>
>>> >> >>    exact data.<br>
>>> >> >><br>
>>> >> >> Best regards,<br>
>>> >> >> --<br>
>>> >> >> Tatsuo Ishii<br>
>>> >> >> SRA OSS, Inc. Japan<br>
>>> >> >> English: <a href="http://www.sraoss.co.jp/index_en.php" rel="noreferrer" target="_blank">http://www.sraoss.co.jp/index_en.php</a><br>
>>> >> >> Japanese:<a href="http://www.sraoss.co.jp" rel="noreferrer" target="_blank">http://www.sraoss.co.jp</a><br>
>>> >> >><br>
>>> >> >> > Hi all!<br>
>>> >> >> > I have trouble with pgpool.<br>
>>> >> >> > For now I use it in testing mode, at first sight all works fine.<br>
>>> But<br>
>>> >> some<br>
>>> >> >> > query ("inserts"), finishing with error<br>
>>> >> >> ><br>
>>> >> >> > Aug  4 18:18:43 pg1 pgpool: 2015-08-04 18:18:43: pid 18878: LOG:<br>
>>> >> Parse:<br>
>>> >> >> > Error or notice message from backend: : DB node id: 0 backend pid:<br>
>>> >> 18915<br>
>>> >> >> > statement:<br>
>>> >> >> > "INSERT INTO "clic" ("a_id", "app_id", "c_image_id", "c_url_id",<br>
>>> >> >> > "count_id", "created_at", "dev_id", "ip", "type", "ua",<br>
>>> "updated_at",<br>
>>> >> >> > "ur_only", "w_sk", "x_fd") VALUES<br>
>>> >> >> ('a1a99f3e-f0b5-44b1-98bb-2c10a9bd2112',<br>
>>> >> >> > 4313, 403, 174, 24, '2015-08-04 18:18:43.766423', 711675,<br>
>>> >> '119.161.65.6',<br>
>>> >> >> > 1, 'Dalvik/1.6.0 H�#002" message: "invalid byte sequence for<br>
>>> encoding<br>
>>> >> >> > "UTF8": 0xe5 0x02"<br>
>>> >> >> ><br>
>>> >> >> > What I doing wrong?<br>
>>> >> >> ><br>
>>> >> >> > If I connect application without pgpool - all works without any<br>
>>> >> errors.<br>
>>> >> >> ><br>
>>> >> >> > Thanx in advance for any help!<br>
>>> >> >> ><br>
>>> >> >> > pgpool-II version 3.4.2 (tataraboshi)<br>
>>> >> >> ><br>
>>> >> >> > listen_addresses = '*'<br>
>>> >> >> > port = 5434<br>
>>> >> >> > socket_dir = '/var/run/postgresql'<br>
>>> >> >> > listen_backlog_multiplier = 2<br>
>>> >> >> > pcp_listen_addresses = '*'<br>
>>> >> >> > pcp_port = 9898<br>
>>> >> >> > pcp_socket_dir = '/var/run/postgresql'<br>
>>> >> >> > backend_hostname0 = '10.0.0.1'<br>
>>> >> >> > backend_port0 = 5432<br>
>>> >> >> > backend_weight0 = 1<br>
>>> >> >> > backend_data_directory0 = '/var/lib/postgresql/9.3/main/'<br>
>>> >> >> > backend_flag0 = 'ALLOW_TO_FAILOVER'<br>
>>> >> >> > enable_pool_hba = off<br>
>>> >> >> > pool_passwd = 'pool_passwd'<br>
>>> >> >> > authentication_timeout = 60<br>
>>> >> >> > ssl = on<br>
>>> >> >> > ssl_key = '/etc/ssl/private/ssl-cert-snakeoil.key'<br>
>>> >> >> > ssl_cert = '/etc/ssl/certs/ssl-cert-snakeoil.pem'<br>
>>> >> >> > num_init_children = 48<br>
>>> >> >> > max_pool = 5<br>
>>> >> >> > child_life_time = 300<br>
>>> >> >> > child_max_connections = 0<br>
>>> >> >> > connection_life_time = 0<br>
>>> >> >> > client_idle_limit = 0<br>
>>> >> >> > log_destination = 'stderr'<br>
>>> >> >> > log_connections = off<br>
>>> >> >> > log_hostname = off<br>
>>> >> >> > log_statement = off<br>
>>> >> >> > log_per_node_statement = off<br>
>>> >> >> > log_standby_delay = 'none'<br>
>>> >> >> > syslog_facility = 'LOCAL0'<br>
>>> >> >> > syslog_ident = 'pgpool'<br>
>>> >> >> > debug_level = 1<br>
>>> >> >> > pid_file_name = '/var/run/postgresql/pgpool.pid'<br>
>>> >> >> > logdir = '/var/log/postgresql'<br>
>>> >> >> > connection_cache = on<br>
>>> >> >> > reset_query_list = 'ABORT; DISCARD ALL'<br>
>>> >> >> > replication_mode = off<br>
>>> >> >> > replicate_select = off<br>
>>> >> >> > insert_lock = on<br>
>>> >> >> > lobj_lock_table = ''<br>
>>> >> >> > replication_stop_on_mismatch = off<br>
>>> >> >> > failover_if_affected_tuples_mismatch = off<br>
>>> >> >> > load_balance_mode = on<br>
>>> >> >> > ignore_leading_white_space = on<br>
>>> >> >> > white_function_list = ''<br>
>>> >> >> > black_function_list = 'nextval,setval,nextval,setval'<br>
>>> >> >> > database_redirect_preference_list = ''<br>
>>> >> >> > app_name_redirect_preference_list = ''<br>
>>> >> >> > allow_sql_comments = off<br>
>>> >> >> > master_slave_mode = on<br>
>>> >> >> > master_slave_sub_mode = 'stream'<br>
>>> >> >> > sr_check_period = 0<br>
>>> >> >> > sr_check_user = 'postgres'<br>
>>> >> >> > sr_check_password = ''<br>
>>> >> >> > delay_threshold = 0<br>
>>> >> >> > follow_master_command = ''<br>
>>> >> >> > health_check_period = 0<br>
>>> >> >> > health_check_timeout = 20<br>
>>> >> >> > health_check_user = 'postgres'<br>
>>> >> >> > health_check_password = ''<br>
>>> >> >> > health_check_max_retries = 0<br>
>>> >> >> > health_check_retry_delay = 1<br>
>>> >> >> > connect_timeout = 10000<br>
>>> >> >> > failover_command = ''<br>
>>> >> >> > failback_command = ''<br>
>>> >> >> > fail_over_on_backend_error = on<br>
>>> >> >> > search_primary_node_timeout = 10<br>
>>> >> >> > recovery_user = 'postgres'<br>
>>> >> >> > recovery_password = ''<br>
>>> >> >> > recovery_1st_stage_command = ''<br>
>>> >> >> > recovery_2nd_stage_command = ''<br>
>>> >> >> > recovery_timeout = 90<br>
>>> >> >> > client_idle_limit_in_recovery = 0<br>
>>> >> >> > use_watchdog = off<br>
>>> >> >> > trusted_servers = ''<br>
>>> >> >> > ping_path = '/bin'<br>
>>> >> >> > wd_hostname = ''<br>
>>> >> >> > wd_port = 9000<br>
>>> >> >> > wd_authkey = ''<br>
>>> >> >> > delegate_IP = ''<br>
>>> >> >> > ifconfig_path = '/sbin'<br>
>>> >> >> > if_up_cmd = 'ifconfig eth0:0 inet $_IP_$ netmask 255.255.255.0'<br>
>>> >> >> > if_down_cmd = 'ifconfig eth0:0 down'<br>
>>> >> >> > arping_cmd = 'arping -U $_IP_$ -w 1'<br>
>>> >> >> > clear_memqcache_on_escalation = on<br>
>>> >> >> > wd_escalation_command = ''<br>
>>> >> >> > wd_lifecheck_method = 'heartbeat'<br>
>>> >> >> > wd_interval = 10<br>
>>> >> >> > wd_heartbeat_port = 9694<br>
>>> >> >> > wd_heartbeat_keepalive = 2<br>
>>> >> >> > wd_heartbeat_deadtime = 30<br>
>>> >> >> > heartbeat_destination0 = 'host0_ip1'<br>
>>> >> >> > heartbeat_destination_port0 = 9694<br>
>>> >> >> > heartbeat_device0 = ''<br>
>>> >> >> > wd_life_point = 3<br>
>>> >> >> > wd_lifecheck_query = 'SELECT 1'<br>
>>> >> >> > wd_lifecheck_dbname = 'template1'<br>
>>> >> >> > wd_lifecheck_user = 'postgres'<br>
>>> >> >> > wd_lifecheck_password = ''<br>
>>> >> >> > relcache_expire = 0<br>
>>> >> >> > relcache_size = 256<br>
>>> >> >> > check_temp_table = on<br>
>>> >> >> > check_unlogged_table = on<br>
>>> >> >> > memory_cache_enabled = on<br>
>>> >> >> > memqcache_method = 'shmem'<br>
>>> >> >> > memqcache_memcached_host = 'localhost'<br>
>>> >> >> > memqcache_memcached_port = 11211<br>
>>> >> >> > memqcache_total_size = 67108864<br>
>>> >> >> > memqcache_max_num_cache = 1000000<br>
>>> >> >> > memqcache_expire = 0<br>
>>> >> >> > memqcache_auto_cache_invalidation = on<br>
>>> >> >> > memqcache_maxcache = 409600<br>
>>> >> >> > memqcache_cache_block_size = 10485760<br>
>>> >> >> > memqcache_oiddir = '/var/log/pgpool/oiddir'<br>
>>> >> >> > white_memqcache_table_list = ''<br>
>>> >> >> > black_memqcache_table_list = ''<br>
>>> >> >><br>
>>> >> ><br>
>>> >> ><br>
>>> >> ><br>
>>> >> > --<br>
>>> >><br>
>>> ><br>
>>> ><br>
>>> ><br>
>>> > --<br>
>>><br>
>><br>
>><br>
>><br>
>> --<br>
>><br>
>><br>
><br>
><br>
</div></div>> --<br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div><img src="http://i052.radikal.ru/1204/a6/7d6272bc9330.png"><br></div>
</div>
</blockquote></div>