From 7f30b48955e249f972b1764697893aa54a43fb4c Mon Sep 17 00:00:00 2001 From: "Yuance.Li" Date: Wed, 13 Jun 2018 23:10:58 +0800 Subject: [PATCH] fetch datasources from broker endpoint when refresh new datasources (#5183) * fetch datasources from broker endpoint when refresh new datasources * remove get_base_coordinator_url as out of use * add broker_endpoint in get_test_cluster_obj --- superset/connectors/druid/models.py | 8 ++++---- tests/druid_tests.py | 5 +++-- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/superset/connectors/druid/models.py b/superset/connectors/druid/models.py index d958730db1..fd66bd6159 100644 --- a/superset/connectors/druid/models.py +++ b/superset/connectors/druid/models.py @@ -121,10 +121,10 @@ class DruidCluster(Model, AuditMixinNullable, ImportMixin): url = '{0}:{1}'.format(host, port) if port else host return url - def get_base_coordinator_url(self): + def get_base_broker_url(self): base_url = self.get_base_url( - self.coordinator_host, self.coordinator_port) - return '{base_url}/{self.coordinator_endpoint}'.format(**locals()) + self.broker_host, self.broker_port) + return '{base_url}/{self.broker_endpoint}'.format(**locals()) def get_pydruid_client(self): cli = PyDruid( @@ -133,7 +133,7 @@ class DruidCluster(Model, AuditMixinNullable, ImportMixin): return cli def get_datasources(self): - endpoint = self.get_base_coordinator_url() + '/datasources' + endpoint = self.get_base_broker_url() + '/datasources' return json.loads(requests.get(endpoint).text) def get_druid_version(self): diff --git a/tests/druid_tests.py b/tests/druid_tests.py index e50e1dbac5..bb932f3176 100644 --- a/tests/druid_tests.py +++ b/tests/druid_tests.py @@ -94,6 +94,7 @@ class DruidTests(SupersetTestCase): coordinator_port=7979, broker_host='localhost', broker_port=7980, + broker_endpoint='druid/v2', metadata_last_refreshed=datetime.now()) def get_cluster(self, PyDruid): @@ -456,8 +457,8 @@ class DruidTests(SupersetTestCase): 'https://localhost:9999') self.assertEquals( - cluster.get_base_coordinator_url(), - 'http://localhost:7979/druid/coordinator/v1/metadata') + cluster.get_base_broker_url(), + 'http://localhost:7980/druid/v2') if __name__ == '__main__':