[fix] Re-cleanup legacy filters (#8523)

This commit is contained in:
John Bodley 2019-11-12 12:29:00 -08:00 committed by GitHub
parent a58b3920db
commit 7bfa24d0da
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
10 changed files with 85 additions and 40 deletions

View File

@ -126,7 +126,6 @@ def load_birth_names(only_metadata=False, force=False):
"since": "100 years ago",
"until": "now",
"viz_type": "table",
"where": "",
"markup_type": "markdown",
}

View File

@ -90,7 +90,6 @@ def load_country_map_data(only_metadata=False, force=False):
"granularity_sqla": "",
"since": "",
"until": "",
"where": "",
"viz_type": "country_map",
"entity": "DEPT_ID",
"metric": {

View File

@ -173,10 +173,8 @@ def load_deck_dash():
"spatial": {"type": "latlong", "lonCol": "LON", "latCol": "LAT"},
"color_picker": COLOR_RED,
"datasource": "5__table",
"filters": [],
"granularity_sqla": None,
"groupby": [],
"having": "",
"mapbox_style": "mapbox://styles/mapbox/light-v9",
"multiplier": 10,
"point_radius_fixed": {"type": "metric", "value": "count"},
@ -195,7 +193,6 @@ def load_deck_dash():
"zoom": 12.729132798697304,
},
"viz_type": "deck_scatter",
"where": "",
}
print("Creating Scatterplot slice")
@ -211,7 +208,6 @@ def load_deck_dash():
slice_data = {
"point_unit": "square_m",
"filters": [],
"row_limit": 5000,
"spatial": {"type": "latlong", "lonCol": "LON", "latCol": "LAT"},
"mapbox_style": "mapbox://styles/mapbox/dark-v9",
@ -222,8 +218,6 @@ def load_deck_dash():
"point_radius": "Auto",
"color_picker": {"a": 1, "r": 14, "b": 0, "g": 255},
"grid_size": 20,
"where": "",
"having": "",
"viewport": {
"zoom": 14.161641703941438,
"longitude": -122.41827069521386,
@ -249,7 +243,6 @@ def load_deck_dash():
slice_data = {
"spatial": {"type": "latlong", "lonCol": "LON", "latCol": "LAT"},
"filters": [],
"row_limit": 5000,
"mapbox_style": "mapbox://styles/mapbox/streets-v9",
"granularity_sqla": None,
@ -261,7 +254,6 @@ def load_deck_dash():
"color_picker": {"a": 1, "r": 14, "b": 0, "g": 255},
"grid_size": 40,
"extruded": True,
"having": "",
"viewport": {
"latitude": 37.789795085160335,
"pitch": 54.08961642447763,
@ -269,7 +261,6 @@ def load_deck_dash():
"longitude": -122.40632230075536,
"bearing": -2.3984797349335167,
},
"where": "",
"point_radius_fixed": {"type": "fix", "value": 2000},
"datasource": "5__table",
"time_grain_sqla": None,
@ -288,7 +279,6 @@ def load_deck_dash():
slice_data = {
"spatial": {"type": "latlong", "lonCol": "LON", "latCol": "LAT"},
"filters": [],
"row_limit": 5000,
"mapbox_style": "mapbox://styles/mapbox/satellite-streets-v9",
"granularity_sqla": None,
@ -300,7 +290,6 @@ def load_deck_dash():
"color_picker": {"a": 1, "r": 14, "b": 0, "g": 255},
"grid_size": 120,
"extruded": True,
"having": "",
"viewport": {
"longitude": -122.42066918995666,
"bearing": 155.80099696026355,
@ -308,7 +297,6 @@ def load_deck_dash():
"latitude": 37.7942314882596,
"pitch": 53.470800300695146,
},
"where": "",
"point_radius_fixed": {"type": "fix", "value": 2000},
"datasource": "5__table",
"time_grain_sqla": None,
@ -403,9 +391,6 @@ def load_deck_dash():
"js_onclick_href": "",
"legend_format": ".1s",
"legend_position": "tr",
"where": "",
"having": "",
"filters": [],
}
print("Creating Polygon slice")
@ -456,9 +441,6 @@ def load_deck_dash():
},
"color_picker": {"r": 0, "g": 122, "b": 135, "a": 1},
"stroke_width": 1,
"where": "",
"having": "",
"filters": [],
}
print("Creating Arc slice")
@ -508,9 +490,6 @@ def load_deck_dash():
"}));",
"js_tooltip": "",
"js_onclick_href": "",
"where": "",
"having": "",
"filters": [],
}
print("Creating Path slice")

View File

@ -77,12 +77,10 @@ def load_energy(only_metadata=False, force=False):
"source",
"target"
],
"having": "",
"metric": "sum__value",
"row_limit": "5000",
"slice_name": "Energy Sankey",
"viz_type": "sankey",
"where": ""
"viz_type": "sankey"
}
"""
),
@ -104,13 +102,11 @@ def load_energy(only_metadata=False, force=False):
"source",
"target"
],
"having": "",
"link_length": "200",
"metric": "sum__value",
"row_limit": "5000",
"slice_name": "Force",
"viz_type": "directed_force",
"where": ""
"viz_type": "directed_force"
}
"""
),
@ -130,13 +126,11 @@ def load_energy(only_metadata=False, force=False):
"all_columns_y": "target",
"canvas_image_rendering": "pixelated",
"collapsed_fieldsets": "",
"having": "",
"linear_color_scheme": "blue_white_yellow",
"metric": "sum__value",
"normalize_across": "heatmap",
"slice_name": "Heatmap",
"viz_type": "heatmap",
"where": "",
"xscale_interval": "1",
"yscale_interval": "1"
}

View File

@ -96,7 +96,6 @@ def load_long_lat_data(only_metadata=False, force=False):
"granularity_sqla": "day",
"since": "2014-01-01",
"until": "now",
"where": "",
"viz_type": "mapbox",
"all_columns_x": "LON",
"all_columns_y": "LAT",

View File

@ -98,7 +98,6 @@ def load_multiformat_time_series(only_metadata=False, force=False):
"row_limit": config["ROW_LIMIT"],
"since": "2015",
"until": "2016",
"where": "",
"viz_type": "cal_heatmap",
"domain_granularity": "month",
"subdomain_granularity": "day",

View File

@ -62,7 +62,6 @@ def load_random_time_series_data(only_metadata=False, force=False):
"since": "1 year ago",
"until": "now",
"metric": "count",
"where": "",
"viz_type": "cal_heatmap",
"domain_granularity": "month",
"subdomain_granularity": "day",

View File

@ -90,7 +90,6 @@ def load_unicode_test_data(only_metadata=False, force=False):
"row_limit": config["ROW_LIMIT"],
"since": "100 years ago",
"until": "now",
"where": "",
"viz_type": "word_cloud",
"size_from": "10",
"series": "short_phrase",

View File

@ -108,7 +108,6 @@ def load_world_bank_health_n_pop(only_metadata=False, force=False):
"since": "2014-01-01",
"until": "2014-01-02",
"time_range": "2014-01-01 : 2014-01-02",
"where": "",
"markup_type": "markdown",
"country_fieldtype": "cca3",
"secondary_metric": {
@ -226,10 +225,12 @@ def load_world_bank_health_n_pop(only_metadata=False, force=False):
y="sum__SP_DYN_LE00_IN",
size="sum__SP_POP_TOTL",
max_bubble_size="50",
filters=[
adhoc_filters=[
{
"col": "country_code",
"val": [
"clause": "WHERE",
"expressionType": "SIMPLE",
"filterOptionName": "2745eae5",
"comparator": [
"TCA",
"MNP",
"DMA",
@ -245,7 +246,8 @@ def load_world_bank_health_n_pop(only_metadata=False, force=False):
"AMA",
"PLW",
],
"op": "not in",
"operator": "not in",
"subject": "country_code",
}
],
),

View File

@ -0,0 +1,76 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
"""reconvert legacy filters into adhoc
Revision ID: 78ee127d0d1d
Revises: c2acd2cf3df2
Create Date: 2019-11-06 15:23:26.497876
"""
# revision identifiers, used by Alembic.
revision = "78ee127d0d1d"
down_revision = "c2acd2cf3df2"
import copy
import json
import logging
import uuid
from collections import defaultdict
from alembic import op
from sqlalchemy import Column, Integer, Text
from sqlalchemy.ext.declarative import declarative_base
from superset import db
from superset.utils.core import (
convert_legacy_filters_into_adhoc,
split_adhoc_filters_into_base_filters,
)
Base = declarative_base()
class Slice(Base):
__tablename__ = "slices"
id = Column(Integer, primary_key=True)
params = Column(Text)
def upgrade():
bind = op.get_bind()
session = db.Session(bind=bind)
for slc in session.query(Slice).all():
if slc.params:
try:
source = json.loads(slc.params)
target = copy.deepcopy(source)
convert_legacy_filters_into_adhoc(target)
if source != target:
slc.params = json.dumps(target, sort_keys=True)
except Exception as ex:
logging.warn(ex)
session.commit()
session.close()
def downgrade():
pass