|
From: Aaron J. <aja...@re...> - 2014-04-08 20:02:19
|
My apologies if this seems far too simple. I'm looking at Postgres-XC 1.2beta to build out a datastore. I've been through the documentation several times and I built out what I believed was a reasonable first step, with a GTM, single coordinator and two data nodes on an amazon i2 instance. I start all four instances (gtm, coord, data_node_1 and data_node_2), add the nodes to the coordinator and build my schema - to this point, everything is scripted. At this point, I already see failures to find a procs in the database logs. The failures match transactions that are coming in and are as follows: STATEMENT: COMMIT PREPARED 'T10010' LOG: failed to find proc 0x7f6bcbc0a7c0 in ProcArray STATEMENT: COMMIT PREPARED 'T10012' LOG: failed to find proc 0x7f6bcbc0a7c0 in ProcArray STATEMENT: COMMIT PREPARED 'T10014' LOG: failed to find proc 0x7f6bcbc0a7c0 in ProcArray STATEMENT: COMMIT PREPARED 'T10016' As these appear to be mostly benign (I'm sure they're not). I begin building the tables in my schema and this is usually about the point I begin to experience a breakdown, usually resulting with the coordinator reporting that the database is in recovery mode. There is nothing special about the DDL - for example, it can be as simple as the following: DROP TABLE IF EXISTS Foo.Bar; CREATE TABLE Foo.Bar( Foo int NOT NULL, Bar smallint NOT NULL ) DISTRIBUTE HASH( Foo ); The first message to come back is "PANIC: sorry, too many clients already" - followed shortly thereafter by "FATAL: the database system is in recovery mode" The configurations were built using initdb or initgtm directly. gtm/gtm.conf ---------------------------------------- nodename = 'one' port = 6666 data_coord/postgresql.conf ---------------------------------------- max_connections = 100 shared_buffers = 128MB max_prepared_transactions = 20 log_destination = 'stderr' logging_collector = on log_directory = 'pg_log' log_timezone = 'UTC' datestyle = 'iso, mdy' timezone = 'UTC' lc_messages = 'en_US.UTF-8' lc_monetary = 'en_US.UTF-8' lc_numeric = 'en_US.UTF-8' lc_time = 'en_US.UTF-8' default_text_search_config = 'pg_catalog.english' min_pool_size = 20 max_pool_size = 200 pgxc_node_name = 'coord_1' data_node_1/postgresql.conf ---------------------------------------- port = 15432 max_connections = 100 shared_buffers = 128MB max_prepared_transactions = 100 log_destination = 'stderr' logging_collector = on log_directory = 'pg_log' log_timezone = 'UTC' datestyle = 'iso, mdy' timezone = 'UTC' lc_messages = 'en_US.UTF-8' lc_monetary = 'en_US.UTF-8' lc_numeric = 'en_US.UTF-8' lc_time = 'en_US.UTF-8' default_text_search_config = 'pg_catalog.english' min_pool_size = 1 max_pool_size = 100 pgxc_node_name = 'node_1' data_node_2/postgresql.conf ---------------------------------------- port = 15433 max_connections = 100 shared_buffers = 128MB max_prepared_transactions = 100 log_destination = 'stderr' logging_collector = on log_directory = 'pg_log' log_timezone = 'UTC' datestyle = 'iso, mdy' timezone = 'UTC' lc_messages = 'en_US.UTF-8' lc_monetary = 'en_US.UTF-8' lc_numeric = 'en_US.UTF-8' lc_time = 'en_US.UTF-8' default_text_search_config = 'pg_catalog.english' min_pool_size = 1 max_pool_size = 100 pgxc_node_name = 'node_2' Any insight would be helpful in understanding what I've done wrong here. Thank you, Aaron |