diff options
| author | Martin Pihlak | 2009-03-06 13:42:38 +0000 |
|---|---|---|
| committer | Martin Pihlak | 2009-03-06 13:42:38 +0000 |
| commit | 8d86948befdc4e2d015082db8b8d9917bcc3f998 (patch) | |
| tree | 2f00bc49608cf541261d86e09ed777ed5432e725 /python/londiste/setup.py | |
| parent | 7ebafed2d2051f3b133160abc4d0b052a5322968 (diff) | |
add-seq improvements
Diffstat (limited to 'python/londiste/setup.py')
| -rw-r--r-- | python/londiste/setup.py | 13 |
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]) |
