diff --git a/caravel/models.py b/caravel/models.py index 4abc2a01426e9..7f498be90717c 100644 --- a/caravel/models.py +++ b/caravel/models.py @@ -1007,6 +1007,7 @@ def sync_to_db(cls, name, cluster): flasher("Adding new datasource [{}]".format(name), "success") else: flasher("Refreshing datasource [{}]".format(name), "info") + session.flush() datasource.cluster = cluster cols = datasource.latest_metadata() @@ -1028,8 +1029,10 @@ def sync_to_db(cls, name, cluster): col_obj.filterable = True if col_obj: col_obj.type = cols[col]['type'] + session.flush() col_obj.datasource = datasource col_obj.generate_metrics() + session.flush() def query( # druid self, groupby, metrics, @@ -1382,7 +1385,7 @@ def generate_metrics(self): metric.datasource_name = self.datasource_name if not m: session.add(metric) - session.commit() + session.flush() class FavStar(Model):