Hello,<div><br></div><div>I&#39;m current running pgpool-II version 3.2.0 (namameboshi). I&#39;m currently running in load_balance_mode=on, parallel_mode=on, replicaton_mode=off. The following command fails when i execute it:</div>

<div><br></div><div>COPY base_time_table FROM STDIN WITH CSV</div><div><div><br class="Apple-interchange-newline"><b>The data i&#39;m trying to pass in on STDIN is formatted like:</b></div><div>0,0,Boston</div><div>1,1,Detroit</div>

<div>etc...</div></div><div><br></div><div><b>The error i am getting in /tmp/pgpool.log is:</b></div><div><div>2012-08-17 16:08:20 LOG:   pid 9333: DB node id: 0 backend pid: 22780 statement: COPY base_time_table FROM STDIN WITH CSV;</div>

<div>2012-08-17 16:08:20 DEBUG: pid 9333: wait_for_query_response: waiting for backend 0 completing the query</div><div>2012-08-17 16:08:20 DEBUG: pid 9333: detect_error: kind: G</div><div>2012-08-17 16:08:20 DEBUG: pid 9333: detect_error: kind: G</div>

<div>2012-08-17 16:08:20 DEBUG: pid 9333: detect_error: kind: G</div><div>2012-08-17 16:08:20 DEBUG: pid 9333: detect_error: kind: G</div><div>2012-08-17 16:08:20 LOG:   pid 9333: DB node id: 1 backend pid: 23689 statement: COPY base_time_table FROM STDIN WITH CSV;</div>

<div>2012-08-17 16:08:20 DEBUG: pid 9333: wait_for_query_response: waiting for backend 1 completing the query</div><div>2012-08-17 16:08:20 DEBUG: pid 9333: read_kind_from_backend: kind: G from 0 th backend</div><div>2012-08-17 16:08:20 DEBUG: pid 9333: read_kind_from_backend: read kind from 0 th backend G NUM_BACKENDS: 2</div>

<div>2012-08-17 16:08:20 DEBUG: pid 9333: read_kind_from_backend: kind: G from 1 th backend</div><div>2012-08-17 16:08:20 DEBUG: pid 9333: read_kind_from_backend: read kind from 1 th backend G NUM_BACKENDS: 2</div><div>2012-08-17 16:08:20 DEBUG: pid 9333: ProcessBackendResponse: kind from backend: G</div>

<div>2012-08-17 16:08:44 DEBUG: pid 9333: <b>parse_copy_data: divide key value is 0,0,Boston</b></div><div>2012-08-17 16:08:44 ERROR: pid 9333: <b>PQexecPrepared failed: ERROR:  invalid input syntax for integer: &quot;0,0,Boston&quot;</b></div>

<div><br></div><div>2012-08-17 16:08:44 DEBUG: pid 9333: CopyDataRow: copying id: -1</div><div>2012-08-17 16:08:44 ERROR: pid 9333: pool_is_node_to_be_sent: invalid node id:-1</div><div>2012-08-17 16:08:44 DEBUG: pid 8774: reap_handler called</div>

<div>2012-08-17 16:08:44 DEBUG: pid 8774: reap_handler: call wait3</div><div>2012-08-17 16:08:44 DEBUG: pid 8774: child 9333 exits with status 256</div><div>2012-08-17 16:08:44 DEBUG: pid 8774: fork a new child pid 9345</div>

<div>2012-08-17 16:08:44 DEBUG: pid 8774: reap_handler: normally exited</div></div><div><br></div><div><b>My table has the following structure:</b></div><div><div>test# \d base_time_table;</div><div>  Table &quot;public.base_time_table&quot;</div>

<div>   Column    |  Type  | Modifiers </div><div>-------------+--------+-----------</div><div> base_time   | bigint | </div><div> base_id     | bigint | </div><div> base_source | text   | </div></div><div><br></div><div>

<b>My pgpool_catalog.dist_def entry is:</b></div><div><div>pgpool=# select * from  pgpool_catalog.dist_def;</div><div> dbname | schema_name |   table_name    | col_name  |            col_list             |      type_lis</div>

<div>t       |   dist_def_func    </div><div>--------+-------------+-----------------+-----------+---------------------------------+--------------</div><div>--------+--------------------</div><div> rr     | public      | base_time_table | base_time | {base_time,base_id,base_source} | {bigint,bigin</div>

<div>t,text} | dist_def_base_time</div></div><div><br></div><div><b>My dist_def_base_time function is:</b></div><div><div>CREATE OR REPLACE FUNCTION dist_def_base_time(anyelement)</div><div>RETURNS integer AS $$</div><div>

    SELECT CASE WHEN $1 &gt; 5000 THEN 0</div><div>        ELSE 0</div><div>    END;</div><div>$$ LANGUAGE sql;</div></div><div><br></div><div><br></div><div>I noticed that if i change the command to:</div><div>COPY base_time_table FROM STDIN;</div>

<div><br></div><div>And use the PostgreSQL Text Format for COPY things work just fine.</div><div><br></div><div>Also, if i remove my entry from pgpool_catalog.dist_def for base_time_table and restart pgpool the COPY WITH CSV works fine also (except it sends the data to all nodes).</div>

<div><br></div><div><br></div><div>Any help would be greatly appreciated,</div><div>Nick</div>