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 |