summaryrefslogtreecommitdiff
path: root/python/londiste/setup.py
diff options
context:
space:
mode:
authorMartin Pihlak2009-03-06 13:42:38 +0000
committerMartin Pihlak2009-03-06 13:42:38 +0000
commit8d86948befdc4e2d015082db8b8d9917bcc3f998 (patch)
tree2f00bc49608cf541261d86e09ed777ed5432e725 /python/londiste/setup.py
parent7ebafed2d2051f3b133160abc4d0b052a5322968 (diff)
add-seq improvements
Diffstat (limited to 'python/londiste/setup.py')
-rw-r--r--python/londiste/setup.py13
1 files changed, 11 insertions, 2 deletions
diff --git a/python/londiste/setup.py b/python/londiste/setup.py
index 30854de2..2091b10b 100644
--- a/python/londiste/setup.py
+++ b/python/londiste/setup.py
@@ -71,7 +71,7 @@ class LondisteSetup(CascadeAdmin):
for row in pcurs.fetchall():
seq = row['seq_name']
val = row['last_value']
- q = "select * from londiste.update_seq(%s, %s, %s)"
+ q = "select * from londiste.global_update_seq(%s, %s, %s)"
ncurs.execute(q, [self.set_name, seq, val])
# done
@@ -203,13 +203,22 @@ class LondisteSetup(CascadeAdmin):
def add_seq(self, src_db, dst_db, seq, create_flags):
src_curs = src_db.cursor()
dst_curs = dst_db.cursor()
+ seq_exists = skytools.exists_sequence(dst_curs, seq)
if create_flags:
- if skytools.exists_sequence(dst_curs, seq):
+ if seq_exists:
self.log.info('Sequence %s already exist, not creating' % seq)
else:
+ if not skytools.exists_sequence(src_curs, seq):
+ # sequence not present on provider - nowhere to get the DDL from
+ self.log.warning('Sequence "%s" missing on provider, skipping' % seq)
+ return
s = skytools.SeqStruct(src_curs, seq)
src_db.commit()
s.create(dst_curs, create_flags, log = self.log)
+ elif not seq_exists:
+ self.log.warning('Sequence "%s" missing on subscriber, use --create if necessary' % seq)
+ return
+
q = "select * from londiste.local_add_seq(%s, %s)"
self.exec_cmd(dst_curs, q, [self.set_name, seq])