|
From: yazuna <ya...@gm...> - 2012-12-12 14:25:32
|
Hello,
I'm testing postgres-xc to become eventually the main
storage/analytical solution for astronomical project dealing with
multiterabyte observational and processed astronomical data, so have
high hopes linked with it.
For the start I setup 3 datanodes, 1coordinator on the same box.
After minor tweaking I managed to port the schema to be compatible
(removed triggers, added distribution keys to unique indices) with XC
and managed to upload some data using copy interface.
I noticed however that sth like (extracted from the bash script):
psql -U $OUTHOST_DBUSER -d surveys -h $OUTHOST -p $OUTHOST_PORT -1 -c
"copy (select * from catalog where catalogid in (select * from
getAllSubCatalogs('$CATALOG_OUT'))) to stdin with null as '' csv" |
psql -U $INHOST_DBUSER -d $INHOST_DB -h $INHOST -p $INHOST_PORT -1 -e
-c "set constraints all deferred; copy catalog from stdout with csv;
update catalog set fowningcatalog=TRUE, fparentcatalog_catalogid =
null where catalogid = getcatalogid('$CATALOG_OUT');"
where the piped the Xc is the 2nd psql here we are pipe into
coordinator hangs and only sigkill is able to stop it. removing 'set
constraints all deferred;' (which works on PG9.1) seemed to heal the
problem and copy worked, it boils down to the pooler being in the
indefinite loop, consuming 100% of CPU.
(gdb)
262 while ((result = PQgetResult((PGconn *) conn)) != NULL)
(gdb)
265 PQclear(result);
(gdb)
262 while ((result = PQgetResult((PGconn *) conn)) != NULL)
(gdb)
265 PQclear(result);
(gdb)
262 while ((result = PQgetResult((PGconn *) conn)) != NULL)
(gdb) bt
#0 PGXCNodeSendSetQuery (conn=0x1082810, sql_command=<value optimized
out>) at pgxcnode.c:262
#1 0x00000000005c8fe7 in send_local_commands (agent=0x1071b10,
s=<value optimized out>) at poolmgr.c:1572
#2 agent_handle_input (agent=0x1071b10, s=<value optimized out>) at
poolmgr.c:1115
#3 0x00000000005c9d0f in PoolerLoop () at poolmgr.c:2402
#4 PoolManagerInit () at poolmgr.c:237
#5 0x00000000004c9d74 in AuxiliaryProcessMain (argc=2,
argv=0x7ffffa3e4a90) at bootstrap.c:421
#6 0x00000000006318d3 in StartChildProcess (type=PoolerProcess) at
postmaster.c:4713
#7 0x0000000000636204 in PostmasterMain (argc=<value optimized out>,
argv=<value optimized out>) at postmaster.c:1191
#8 0x00000000005cf3b0 in main (argc=5, argv=0x1050060) at main.c:199
Let me know if you need more data.
Cheers
Krzysztof
|