@@ -87,7 +87,7 @@ CREATE TABLE IF NOT EXISTS mtm.local_tables(rel_schema text, rel_name text, prim
8787CREATE OR REPLACE FUNCTION mtm .alter_sequences() RETURNSboolean AS
8888$$
8989DECLARE
90- seq_classpg_class%rowtype ;
90+ seq_classrecord ;
9191 seq_tuple record;
9292 node_idint ;
9393 max_nodesint ;
@@ -97,25 +97,20 @@ BEGIN
9797select current_setting(' multimaster.max_nodes' ) into max_nodes;
9898select id," allNodes" into node_idfrom mtm .get_cluster_state ();
9999 FOR seq_classIN
100- SELECT * FROM pg_classWHERE pg_class .relkind = ' S'
100+ SELECT ' " ' || ns . nspname || ' "." ' || seq . relname || ' " ' as seqname FROM pg_namespace ns, pg_classseq WHERE seq .relkind = ' S' and seq . relnamespace = ns . oid
101101 LOOP
102- BEGIN
103- EXECUTE' select * from' || seq_class .relname || ' ;' INTO seq_tuple;
102+ EXECUTE' select * from' || seq_class .seqname INTO seq_tuple;
104103 IFseq_tuple .increment_by != max_nodes THEN
105104 altered := true;
106105 RAISE NOTICE' Altering step for sequence % to %.' ,seq_tuple .sequence_name , max_nodes;
107- EXECUTE' ALTER SEQUENCE' || seq_class .relname || ' INCREMENT BY' || max_nodes|| ' ;' ;
106+ EXECUTE' ALTER SEQUENCE' || seq_class .seqname || ' INCREMENT BY' || max_nodes|| ' ;' ;
108107 END IF;
109108 IF (seq_tuple .last_value % max_nodes)!= node_id THEN
110109 altered := true;
111110 new_start := (seq_tuple .last_value / max_nodes+ 1 )* max_nodes+ node_id;
112111 RAISE NOTICE' Altering start for sequence % to %.' ,seq_tuple .sequence_name , new_start;
113- EXECUTE' ALTER SEQUENCE' || seq_class .relname || ' RESTART WITH' || new_start|| ' ;' ;
112+ EXECUTE' ALTER SEQUENCE' || seq_class .seqname || ' RESTART WITH' || new_start|| ' ;' ;
114113 END IF;
115- EXCEPTION
116- WHEN OTHERS THEN
117- RAISE NOTICE' Failed to alter sequence %s' ,seq_class .relname ;
118- END;
119114 END LOOP;
120115 IF altered= false THEN
121116 RAISE NOTICE' All found sequnces have proper params.' ;