Hola de nuevo,
 
siento ser pesado con este tema, pero llevo varios días con esto y sigo sin 
poder replicar mis tablas particionadas y me canso :(. 
 
Explico hasta donde he llegado a ver si a alguien se le ocurre algo.
 
Tengo el siguiente bash script que simplemente llama a slonik para que ejecute 
la consulta que necesito:
 
#!/bin/sh
slonik <<_EOF_
CLUSTER NAME = cluster_dat_testsad;
NODE 11 ADMIN CONNINFO = 'host=master port=5432 dbname=lecturas_testsad 
user=postgres password=X';
NODE 111 ADMIN CONNINFO = 'host=slave port=5432 dbname=lecturas_testsad 
user=postgres password=X';
EXECUTE SCRIPT (
        SET ID = 2, 
        FILENAME = '/home/usuario/consulta',
        EVENT NODE = 11
);
_EOF_
 
donde:
 11 es el ID del nodo origen
 111 es el del nodo destino
 2 es el id del conjunto de replicación
 y /home/usuario/consulta contiene:

    select _cluster_dat_testsad.add_empty_table_to_partition(2, 33223, 
'TS_SAD'::text, 'proba'::text, NULL::text, NULL::text);
 
donde:
    2 es el id del conjunto de replicación
    33223 es el id de la tabla 'proba'
    TS_SAD es el nombre del tablespace donde están las tablas a replicar
    'proba' es la tabla vacía que quiero añadir al conjunto de replicación
 
Si lo pruebo con un query tipo CREATE TABLE, la tabla se crea con éxito en 
todos los nodos (11 y 111). En cambio no logro que se ejecute el 
add_empty_table_to_partition. Para evitar un viaje, en la ayuda pone:
 
 
add_empty_table_to_replication (set_id, tab_id, nspname, tabname, idxname, 
comment); 
 
This is the "base" function; you must specify the set ID, table ID, namespace 
name, table name, index name, and a comment, and this table will be added to 
replication. 
 
Note that the index name is optional; if NULL, the function will look up the 
primary key for the table, assuming one exists, and fail if it does not exist.
 
¿Alguien ve en qué estoy fallando?
 
Saludos,
Jorge
 
 


Responder a