From 74eb8aa08c19da6ae086c250a78b716d2b783b7b Mon Sep 17 00:00:00 2001 From: Benjamin Dauvergne Date: Fri, 13 May 2022 14:57:47 +0200 Subject: [PATCH] feeder: do not use UNLOGGED tables for persistent data (#65220) --- wcs_olap/feeder.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/wcs_olap/feeder.py b/wcs_olap/feeder.py index 6dc82c0..cc78882 100644 --- a/wcs_olap/feeder.py +++ b/wcs_olap/feeder.py @@ -429,8 +429,11 @@ class WcsOlapFeeder(object): WHERE dates.date IS NULL''', vars=[first_date, last_date]) - def create_table(self, name, columns, inherits=None, comment=None): - sql = 'CREATE UNLOGGED TABLE %s' % quote(name) + def create_table(self, name, columns, inherits=None, comment=None, unlogged=True): + if unlogged: + sql = 'CREATE UNLOGGED TABLE %s' % quote(name) + else: + sql = 'CREATE TABLE %s' % quote(name) sql += '(' + ', '.join('%s %s' % (quote(n), t) for n, t in columns) + ')' if inherits: sql += ' INHERITS (%s)' % quote(inherits) @@ -450,7 +453,7 @@ class WcsOlapFeeder(object): def create_labeled_table_serial(self, name, comment): self.create_table( - name, [['id', 'serial primary key'], ['label', 'varchar']], comment=comment) + name, [['id', 'serial primary key'], ['label', 'varchar']], comment=comment, unlogged=False) if self.prev_table_exists(name): # Insert data from previous table @@ -465,7 +468,6 @@ class WcsOlapFeeder(object): new_fields = [['id', 'serial primary key'], ['ref', 'varchar UNIQUE']] + fields self.create_table(name, new_fields, comment=comment) - def do_referenced_data(self, name, data, result_column, update_column='label'): to_insert = [] @@ -503,7 +505,7 @@ class WcsOlapFeeder(object): [ ['id', 'integer primary key'], ['label', 'varchar'] - ], comment=comment) + ], comment=comment, unlogged=False) if self.prev_table_exists(name): # Insert data from previous table -- 2.35.1