Sometimes it is necessary to change the name or a location of an explore and usually Content Validator is powerful enough to change the content to point to the right place, step by step.
Lately, however, I have been having problems with Dashboard Tiles that contain Merge Queries.
This is usually my process:
Then I repeat this process once the change goes live. I think the merge queries didn’t even show up in Content Validator at first, though it could be that I just didn’t notice.
The problem was that a Merge Query can be build from different models but when we get an error “unknown field/explore/model” it feels like the Content Validator changes models for all queries. Basically I ended up in an endless loop changing models and explores back and forth, trying to get it to work. I even tried changing it in JSON and using API calls to make changes. Eventually I had to give up.
Has anybody had any experience with Content Validator and Merge Queries? How should we approach modelling changes? I have been successful in making some complicated changes and then working with Content Validator to fix Dashboards, Looks, and Tiles. Merge Queries seem to be a different class 😄
I also face this problem.
Is there any progress on this matter?
You can see in System Activity where Merged Results are being used to create dashboard tiles. If you use the URL below, you can filter for the name of the explore that you want to remove/update, and see which dashboard tiles will be affected by any changes you make:
YOUR_INSTANCE_NAME.COM/explore/system__activity/history?fields=history.query_run_count,history.created_date,result_maker.is_merge_query,result_maker.merge_query_id,merge_query_source_query.id,merge_query_source_query.name,query.view,dashboard.link,dashboard.title,source_query.view&f[result_maker.is_merge_query]=Yes&f[source_query.view]=&sorts=history.created_date&limit=500&column_limit=50&vis=%7B%22show_view_names%22%3Afalse%2C%22show_row_numbers%22%3Atrue%2C%22transpose%22%3Afalse%2C%22truncate_text%22%3Atrue%2C%22hide_totals%22%3Afalse%2C%22hide_row_totals%22%3Afalse%2C%22size_to_fit%22%3Atrue%2C%22table_theme%22%3A%22white%22%2C%22limit_displayed_rows%22%3Afalse%2C%22enable_conditional_formatting%22%3Afalse%2C%22header_text_alignment%22%3A%22left%22%2C%22header_font_size%22%3A12%2C%22rows_font_size%22%3A12%2C%22conditional_formatting_include_totals%22%3Afalse%2C%22conditional_formatting_include_nulls%22%3Afalse%2C%22x_axis_gridlines%22%3Afalse%2C%22y_axis_gridlines%22%3Atrue%2C%22show_y_axis_labels%22%3Atrue%2C%22show_y_axis_ticks%22%3Atrue%2C%22y_axis_tick_density%22%3A%22default%22%2C%22y_axis_tick_density_custom%22%3A5%2C%22show_x_axis_label%22%3Afalse%2C%22show_x_axis_ticks%22%3Atrue%2C%22y_axis_scale_mode%22%3A%22linear%22%2C%22x_axis_reversed%22%3Afalse%2C%22y_axis_reversed%22%3Afalse%2C%22plot_size_by_field%22%3Afalse%2C%22trellis%22%3A%22%22%2C%22stacking%22%3A%22normal%22%2C%22legend_position%22%3A%22right%22%2C%22point_style%22%3A%22none%22%2C%22show_value_labels%22%3Afalse%2C%22label_density%22%3A25%2C%22x_axis_scale%22%3A%22auto%22%2C%22y_axis_combined%22%3Atrue%2C%22ordering%22%3A%22none%22%2C%22show_null_labels%22%3Afalse%2C%22show_totals_labels%22%3Atrue%2C%22show_silhouette%22%3Afalse%2C%22totals_color%22%3A%22%23808080%22%2C%22type%22%3A%22looker_grid%22%2C%22y_axes%22%3A%5B%7B%22label%22%3A%22Errors%22%2C%22orientation%22%3A%22bottom%22%2C%22series%22%3A%5B%7B%22axisId%22%3A%22API+3+-+history.query_run_count%22%2C%22id%22%3A%22API+3+-+history.query_run_count%22%2C%22name%22%3A%22API+3%22%2C%22__FILE%22%3A%22system__activity%2Ferrors_and_broken_content.dashboard.lookml%22%2C%22__LINE_NUM%22%3A267%7D%2C%7B%22axisId%22%3A%22CSV+Dashboard+Download+-+history.query_run_count%22%2C%22id%22%3A%22CSV+Dashboard+Download+-+history.query_run_count%22%2C%22name%22%3A%22CSV+Dashboard+Download%22%2C%22__FILE%22%3A%22system__activity%2Ferrors_and_broken_content.dashboard.lookml%22%2C%22__LINE_NUM%22%3A268%7D%2C%7B%22axisId%22%3A%22Dashboard+-+history.query_run_count%22%2C%22id%22%3A%22Dashboard+-+history.query_run_count%22%2C%22name%22%3A%22Dashboard%22%2C%22__FILE%22%3A%22system__activity%2Ferrors_and_broken_content.dashboard.lookml%22%2C%22__LINE_NUM%22%3A270%7D%2C%7B%22axisId%22%3A%22Dashboard+Prefetch+-+history.query_run_count%22%2C%22id%22%3A%22Dashboard+Prefetch+-+history.query_run_count%22%2C%22name%22%3A%22Dashboard+Prefetch%22%2C%22__FILE%22%3A%22system__activity%2Ferrors_and_broken_content.dashboard.lookml%22%2C%22__LINE_NUM%22%3A271%7D%2C%7B%22axisId%22%3A%22Drill+Modal+-+history.query_run_count%22%2C%22id%22%3A%22Drill+Modal+-+history.query_run_count%22%2C%22name%22%3A%22Drill+Modal%22%2C%22__FILE%22%3A%22system__activity%2Ferrors_and_broken_content.dashboard.lookml%22%2C%22__LINE_NUM%22%3A273%7D%2C%7B%22axisId%22%3A%22Explore+-+history.query_run_count%22%2C%22id%22%3A%22Explore+-+history.query_run_count%22%2C%22name%22%3A%22Explore%22%2C%22__FILE%22%3A%22system__activity%2Ferrors_and_broken_content.dashboard.lookml%22%2C%22__LINE_NUM%22%3A274%7D%2C%7B%22axisId%22%3A%22Merge+Query+-+history.query_run_count%22%2C%22id%22%3A%22Merge+Query+-+history.query_run_count%22%2C%22name%22%3A%22Merge+Query%22%2C%22__FILE%22%3A%22system__activity%2Ferrors_and_broken_content.dashboard.lookml%22%2C%22__LINE_NUM%22%3A276%7D%2C%7B%22axisId%22%3A%22Other+-+history.query_run_count%22%2C%22id%22%3A%22Other+-+history.query_run_count%22%2C%22name%22%3A%22Other%22%2C%22__FILE%22%3A%22system__activity%2Ferrors_and_broken_content.dashboard.lookml%22%2C%22__LINE_NUM%22%3A277%7D%2C%7B%22axisId%22%3A%22PDT+Regenerator+-+history.query_run_count%22%2C%22id%22%3A%22PDT+Regenerator+-+history.query_run_count%22%2C%22name%22%3A%22PDT+Regenerator%22%2C%22__FILE%22%3A%22system__activity%2Ferrors_and_broken_content.dashboard.lookml%22%2C%22__LINE_NUM%22%3A278%7D%2C%7B%22axisId%22%3A%22Private+Embed+-+history.query_run_count%22%2C%22id%22%3A%22Private+Embed+-+history.query_run_count%22%2C%22name%22%3A%22Private+Embed%22%2C%22__FILE%22%3A%22system__activity%2Ferrors_and_broken_content.dashboard.lookml%22%2C%22__LINE_NUM%22%3A280%7D%2C%7B%22axisId%22%3A%22Public+Embed+-+history.query_run_count%22%2C%22id%22%3A%22Public+Embed+-+history.query_run_count%22%2C%22name%22%3A%22Public+Embed%22%2C%22__FILE%22%3A%22system__activity%2Ferrors_and_broken_content.dashboard.lookml%22%2C%22__LINE_NUM%22%3A281%7D%2C%7B%22axisId%22%3A%22Query+-+history.query_run_count%22%2C%22id%22%3A%22Query+-+history.query_run_count%22%2C%22name%22%3A%22Query%22%2C%22__FILE%22%3A%22system__activity%2Ferrors_and_broken_content.dashboard.lookml%22%2C%22__LINE_NUM%22%3A283%7D%2C%7B%22axisId%22%3A%22Renderer+-+history.query_run_count%22%2C%22id%22%3A%22Renderer+-+history.query_run_count%22%2C%22name%22%3A%22Renderer%22%2C%22__FILE%22%3A%22system__activity%2Ferrors_and_broken_content.dashboard.lookml%22%2C%22__LINE_NUM%22%3A284%7D%2C%7B%22axisId%22%3A%22Saved+Look+-+history.query_run_count%22%2C%22id%22%3A%22Saved+Look+-+history.query_run_count%22%2C%22name%22%3A%22Saved+Look%22%2C%22__FILE%22%3A%22system__activity%2Ferrors_and_broken_content.dashboard.lookml%22%2C%22__LINE_NUM%22%3A285%7D%2C%7B%22axisId%22%3A%22Scheduled+Task+-+history.query_run_count%22%2C%22id%22%3A%22Scheduled+Task+-+history.query_run_count%22%2C%22name%22%3A%22Scheduled+Task%22%2C%22__FILE%22%3A%22system__activity%2Ferrors_and_broken_content.dashboard.lookml%22%2C%22__LINE_NUM%22%3A287%7D%2C%7B%22axisId%22%3A%22SQL+Runner+-+history.query_run_count%22%2C%22id%22%3A%22SQL+Runner+-+history.query_run_count%22%2C%22name%22%3A%22SQL+Runner%22%2C%22__FILE%22%3A%22system__activity%2Ferrors_and_broken_content.dashboard.lookml%22%2C%22__LINE_NUM%22%3A289%7D%2C%7B%22axisId%22%3A%22Suggest+Filter+-+history.query_run_count%22%2C%22id%22%3A%22Suggest+Filter+-+history.query_run_count%22%2C%22name%22%3A%22Suggest+Filter%22%2C%22__FILE%22%3A%22system__activity%2Ferrors_and_broken_content.dashboard.lookml%22%2C%22__LINE_NUM%22%3A290%7D%5D%2C%22showLabels%22%3Atrue%2C%22showValues%22%3Atrue%2C%22unpinAxis%22%3Afalse%2C%22tickDensity%22%3A%22default%22%2C%22tickDensityCustom%22%3A5%2C%22type%22%3A%22linear%22%2C%22__FILE%22%3A%22system__activity%2Ferrors_and_broken_content.dashboard.lookml%22%2C%22__LINE_NUM%22%3A267%7D%5D%2C%22hidden_series%22%3A%5B%22API+3+-+history.query_run_count%22%2C%22Dashboard+Prefetch+-+history.query_run_count%22%2C%22Other+-+history.query_run_count%22%2C%22Private+Embed+-+history.query_run_count%22%2C%22Public+Embed+-+history.query_run_count%22%2C%22Query+-+history.query_run_count%22%2C%22Renderer+-+history.query_run_count%22%2C%22SQL+Runner+-+history.query_run_count%22%2C%22Suggest+Filter+-+history.query_run_count%22%5D%2C%22colors%22%3A%5B%22%2375E2E2%22%2C%22%233EB0D5%22%2C%22%234276BE%22%2C%22%23462C9D%22%2C%22%239174F0%22%2C%22%23B1399E%22%2C%22%23B32F37%22%2C%22%23E57947%22%2C%22%23FBB555%22%2C%22%23FFD95F%22%2C%22%23C2DD67%22%2C%22%2372D16D%22%5D%2C%22series_types%22%3A%7B%7D%2C%22series_colors%22%3A%7B%7D%2C%22defaults_version%22%3A1%2C%22hidden_pivots%22%3A%7B%7D%7D&filter_config=%7B%22result_maker.is_merge_query%22%3A%5B%7B%22type%22%3A%22is%22%2C%22values%22%3A%5B%7B%22constant%22%3A%22Yes%22%7D%2C%7B%7D%5D%2C%22id%22%3A26%7D%5D%2C%22source_query.view%22%3A%5B%7B%22type%22%3A%22%3D%22%2C%22values%22%3A%5B%7B%22constant%22%3A%22%22%7D%2C%7B%7D%5D%2C%22id%22%3A27%7D%5D%7D&dynamic_fields=%5B%5D&origin=share-expanded