databrickslabs / ucx

Automated migrations to Unity Catalog
Other
237 stars 83 forks source link

Test failure: `test_running_legacy_validate_groups_permissions_job` #3363

Closed github-actions[bot] closed 3 days ago

github-actions[bot] commented 3 days ago
❌ test_running_legacy_validate_groups_permissions_job: databricks.labs.blueprint.parallel.ManyError: Detected 7 failures: AttributeError: 'dict' object has no attribute 'as_dict' (1m48.524s) ``` databricks.labs.blueprint.parallel.ManyError: Detected 7 failures: AttributeError: 'dict' object has no attribute 'as_dict' 10:04 INFO [databricks.sdk] Using Databricks Metadata Service authentication 10:04 INFO [databricks.sdk] Using Databricks Metadata Service authentication [gw0] linux -- Python 3.10.15 /home/runner/work/ucx/ucx/.venv/bin/python 10:04 INFO [databricks.sdk] Using Databricks Metadata Service authentication 10:04 INFO [databricks.sdk] Using Databricks Metadata Service authentication 10:04 INFO [databricks.labs.pytester.fixtures.baseline] Created dummy-udtv-ra78a57f28@example.com: https://DATABRICKS_HOST/#settings/workspace/identity-and-access/users/4464044391219940 10:04 INFO [databricks.labs.pytester.fixtures.iam] Workspace group ucx-YwwQ-ra78a57f28: https://DATABRICKS_HOST#setting/accounts/groups/563969068587611 10:04 INFO [databricks.labs.pytester.fixtures.iam] Account group ucx-YwwQ-ra78a57f28: https://accounts.CLOUD_ENVdatabricks.net/users/groups/84311183409853/members 10:04 INFO [databricks.labs.pytester.fixtures.baseline] Created hive_metastore.dummy_smqub schema: https://DATABRICKS_HOST/#explore/data/hive_metastore/dummy_smqub 10:04 INFO [databricks.labs.pytester.fixtures.baseline] Created hive_metastore.dummy_smqub.dummy_t3qym schema: https://DATABRICKS_HOST/#explore/data/hive_metastore/dummy_smqub/dummy_t3qym 10:04 INFO [databricks.labs.pytester.fixtures.baseline] Created dummy_query_QnXFE query: https://DATABRICKS_HOST/#sql/editor/5c5d2230-8855-4e1b-9e05-0c229a32f1a8 10:04 INFO [databricks.labs.pytester.fixtures.baseline] Created dummy-oqOC-ra78a57f28: https://DATABRICKS_HOST/setting/clusters/cluster-policies/view/000571805BB52BEE 10:04 INFO [databricks.labs.pytester.fixtures.baseline] Created hive_metastore.dummy_sgjao schema: https://DATABRICKS_HOST/#explore/data/hive_metastore/dummy_sgjao 10:04 INFO [databricks.labs.pytester.fixtures.baseline] Created hive_metastore.dummy_sgjao.dummy_tdbyz schema: https://DATABRICKS_HOST/#explore/data/hive_metastore/dummy_sgjao/dummy_tdbyz 10:04 INFO [databricks.labs.pytester.fixtures.baseline] Created hive_metastore.dummy_sic5a schema: https://DATABRICKS_HOST/#explore/data/hive_metastore/dummy_sic5a 10:04 DEBUG [databricks.labs.ucx.install] Cannot find previous installation: Path (/Users/0a330eb5-dd51-4d97-b6e4-c474356b1d5d/.qfWp/config.yml) doesn't exist. 10:04 INFO [databricks.labs.ucx.install] Please answer a couple of questions to configure Unity Catalog migration 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Inventory Database stored in hive_metastore 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Catalog to store UCX artifacts in 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Log level 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Number of threads 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Backup prefix 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Choose how to map the workspace groups: [0] Match by Name [1] Apply a Prefix [2] Apply a Suffix [3] Match by External ID [4] Regex Substitution [5] Regex Matching Enter a number between 0 and 5 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Enter a prefix to add to the workspace group name 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Comma-separated list of workspace group names to migrate. If not specified, we'll use all account-level groups with matching names to workspace-level groups 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Comma-separated list of databases to migrate. If not specified, we'll use all databases in hive_metastore 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Does given workspace 4095808988021766 block Internet access? 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Do you want to trigger assessment job after installation? 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Reconciliation threshold, in percentage 10:05 INFO [databricks.labs.ucx.installer.hms_lineage] HMS Lineage feature creates one system table named system.hms_to_uc_migration.table_access and helps in your migration process from HMS to UC by allowing you to programmatically query HMS lineage data. 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: No HMS lineage collection init script exists, do you want to create one? 10:05 INFO [databricks.labs.ucx.install] Fetching installations... 10:05 INFO [databricks.labs.blueprint.parallel] finding qfWp installations 100/108, rps: 186.973/sec 10:05 INFO [databricks.labs.blueprint.parallel] finding qfWp installations 108/108, rps: 185.415/sec 10:05 INFO [databricks.labs.blueprint.parallel] Finished 'finding qfWp installations' tasks: 0% results available (0/108). Took 0:00:00.583115 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Select PRO or SERVERLESS SQL warehouse to run assessment dashboards on [0] [Create new PRO SQL warehouse] [1] DEFAULT Test Warehouse (TEST_DEFAULT_WAREHOUSE_ID, SERVERLESS, RUNNING) Enter a number between 0 and 1 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Instance pool id to be set in cluster policy for all workflow clusters 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: We have identified one or more cluster policies set up for an external metastore. Would you like to set UCX to connect to the external metastore? 10:05 INFO [databricks.labs.ucx.installer.policy] Creating UCX cluster policy. 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: If hive_metastore contains managed table with external location paths (not dbfs root), please select which migration option to choose from [0] Convert MANAGED HMS table to EXTERNAL HMS table and migrate as EXTERNAL UC table. Once the relevant HMS tables are deleted, the underlying data won't get deleted anymore, consider the impact of this change on your data workloads [1] Copy data from MANAGED HMS to MANAGED UC table [2] Migrate MANAGED HMS table as EXTERNAL UC table. This option would require you to convert MANAGED HMS tables to EXTERNAL HMS tables once UC migration is complete, otherwise deleting HMS MANAGED table would delete the migrated UC table Enter a number between 0 and 2 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Parallelism for migrating dbfs root delta tables with deep clone 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Min workers for auto-scale job cluster for table migration 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Max workers for auto-scale job cluster for table migration 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Open config file in the browser and continue installing? https://DATABRICKS_HOST/#workspace/Users/0a330eb5-dd51-4d97-b6e4-c474356b1d5d/.qfWp/config.yml 10:05 DEBUG [tests.integration.conftest] Waiting for clusters to start... 10:05 INFO [databricks.labs.blueprint.parallel] ensure clusters running 3/3, rps: 61.949/sec 10:05 INFO [databricks.labs.blueprint.parallel] Finished 'ensure clusters running' tasks: 0% results available (0/3). Took 0:00:00.048719 10:05 DEBUG [tests.integration.conftest] Waiting for clusters to start... 10:05 INFO [databricks.labs.pytester.fixtures.baseline] Created ucx_8UgeVKX1EhNtfo2s catalog: https://DATABRICKS_HOST/#explore/data/ucx_8UgeVKX1EhNtfo2s 10:05 INFO [databricks.labs.ucx.install] Installing UCX v0.50.1+320241119100517 10:05 INFO [databricks.labs.ucx.install] Creating ucx schemas... 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a database exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.CLOUD_ENV_service_principals table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.clusters table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.global_init_scripts table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.jobs table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.pipelines table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.external_locations table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.mounts table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.grants table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.groups table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.tables table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.table_size table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.table_failures table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.workspace_objects table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.permissions table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.submit_runs table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.policies table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.migration_status table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.workflow_problems table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.query_problems table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.udfs table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.logs table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.recon_results table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.directfs_in_paths table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.directfs_in_queries table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.used_tables_in_paths table exists 10:05 INFO [databricks.labs.blueprint.parallel] deploy tables 10/27, rps: 5.856/sec 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.used_tables_in_queries table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.inferred_grants table exists 10:05 INFO [databricks.labs.blueprint.parallel] deploy tables 20/27, rps: 6.855/sec 10:05 INFO [databricks.labs.blueprint.parallel] deploy tables 27/27, rps: 8.677/sec 10:05 INFO [databricks.labs.blueprint.parallel] Finished 'deploy tables' tasks: 0% results available (0/27). Took 0:00:03.111977 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.grant_detail view matches queries/views/grant_detail.sql contents 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=remove-workspace-local-backup-groups 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=assessment 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.objects view matches queries/views/objects.sql contents 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=failing 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=validate-groups-permissions 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.table_estimates view matches queries/views/table_estimates.sql contents 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=migrate-external-hiveserde-tables-in-place-experimental 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=migration-progress-experimental 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.misc_patterns view matches queries/views/misc_patterns.sql contents 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=migrate-groups 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=migrate-tables-in-mounts-experimental 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.code_patterns view matches queries/views/code_patterns.sql contents 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=scan-tables-in-mounts-experimental 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=migrate-tables 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.reconciliation_results view matches queries/views/reconciliation_results.sql contents 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=migrate-external-tables-ctas 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=migrate-data-reconciliation 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=migrate-groups-legacy 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.directfs view matches queries/views/directfs.sql contents 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.used_tables view matches queries/views/used_tables.sql contents 10:05 INFO [databricks.labs.ucx.install] Creating dashboards... 10:05 DEBUG [databricks.labs.ucx.install] Reading step folder /home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/views... 10:05 DEBUG [databricks.labs.ucx.install] Reading step folder /home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/assessment... 10:05 DEBUG [databricks.labs.ucx.install] Reading step folder /home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/migration... 10:05 DEBUG [databricks.labs.ucx.install] Reading step folder /home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/progress... 10:05 INFO [databricks.labs.ucx.install] Creating dashboard in /home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/assessment/interactive... 10:05 INFO [databricks.labs.ucx.install] Creating dashboard in /home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/assessment/estimates... 10:05 INFO [databricks.labs.ucx.install] Creating dashboard in /home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/assessment/main... 10:05 INFO [databricks.labs.ucx.install] Creating dashboard in /home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/assessment/CLOUD_ENV... 10:05 INFO [databricks.labs.ucx.install] Creating dashboard in /home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/migration/groups... 10:05 INFO [databricks.labs.ucx.install] Creating dashboard in /home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/migration/main... 10:05 INFO [databricks.labs.ucx.install] Creating dashboard in /home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/progress/main... 10:05 INFO [databricks.labs.ucx.installer.mixins] Fetching warehouse_id from a config 10:05 ERROR [databricks.labs.blueprint.parallel] installing dashboards(PosixPath('/home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/assessment/CLOUD_ENV'), parent_path='/Users/0a330eb5-dd51-4d97-b6e4-c474356b1d5d/.qfWp/dashboards') task failed: 'dict' object has no attribute 'as_dict' Traceback (most recent call last): File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/blueprint/parallel.py", line 158, in inner return func(*args, **kwargs), None File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 54, in wrapper raise err File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 33, in wrapper return func(*args, **kwargs) File "/home/runner/work/ucx/ucx/src/databricks/labs/ucx/install.py", line 653, in _create_dashboard dashboard = Dashboards(self._ws).create_dashboard( File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/lsql/dashboards.py", line 1138, in create_dashboard sdk_dashboard = self._ws.lakeview.create(dashboard=dashboard_to_create.as_dict()) # type: ignore File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/service/dashboards.py", line 1147, in create body = dashboard.as_dict() AttributeError: 'dict' object has no attribute 'as_dict' 10:05 INFO [databricks.labs.ucx.installer.mixins] Fetching warehouse_id from a config 10:05 ERROR [databricks.labs.blueprint.parallel] installing dashboards(PosixPath('/home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/migration/groups'), parent_path='/Users/0a330eb5-dd51-4d97-b6e4-c474356b1d5d/.qfWp/dashboards') task failed: 'dict' object has no attribute 'as_dict' Traceback (most recent call last): File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/blueprint/parallel.py", line 158, in inner return func(*args, **kwargs), None File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 54, in wrapper raise err File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 33, in wrapper return func(*args, **kwargs) File "/home/runner/work/ucx/ucx/src/databricks/labs/ucx/install.py", line 653, in _create_dashboard dashboard = Dashboards(self._ws).create_dashboard( File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/lsql/dashboards.py", line 1138, in create_dashboard sdk_dashboard = self._ws.lakeview.create(dashboard=dashboard_to_create.as_dict()) # type: ignore File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/service/dashboards.py", line 1147, in create body = dashboard.as_dict() AttributeError: 'dict' object has no attribute 'as_dict' 10:05 INFO [databricks.labs.ucx.installer.mixins] Fetching warehouse_id from a config 10:05 ERROR [databricks.labs.blueprint.parallel] installing dashboards(PosixPath('/home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/assessment/interactive'), parent_path='/Users/0a330eb5-dd51-4d97-b6e4-c474356b1d5d/.qfWp/dashboards') task failed: 'dict' object has no attribute 'as_dict' Traceback (most recent call last): File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/blueprint/parallel.py", line 158, in inner return func(*args, **kwargs), None File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 54, in wrapper raise err File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 33, in wrapper return func(*args, **kwargs) File "/home/runner/work/ucx/ucx/src/databricks/labs/ucx/install.py", line 653, in _create_dashboard dashboard = Dashboards(self._ws).create_dashboard( File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/lsql/dashboards.py", line 1138, in create_dashboard sdk_dashboard = self._ws.lakeview.create(dashboard=dashboard_to_create.as_dict()) # type: ignore File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/service/dashboards.py", line 1147, in create body = dashboard.as_dict() AttributeError: 'dict' object has no attribute 'as_dict' 10:05 INFO [databricks.labs.ucx.installer.mixins] Fetching warehouse_id from a config 10:05 ERROR [databricks.labs.blueprint.parallel] installing dashboards(PosixPath('/home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/migration/main'), parent_path='/Users/0a330eb5-dd51-4d97-b6e4-c474356b1d5d/.qfWp/dashboards') task failed: 'dict' object has no attribute 'as_dict' Traceback (most recent call last): File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/blueprint/parallel.py", line 158, in inner return func(*args, **kwargs), None File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 54, in wrapper raise err File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 33, in wrapper return func(*args, **kwargs) File "/home/runner/work/ucx/ucx/src/databricks/labs/ucx/install.py", line 653, in _create_dashboard dashboard = Dashboards(self._ws).create_dashboard( File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/lsql/dashboards.py", line 1138, in create_dashboard sdk_dashboard = self._ws.lakeview.create(dashboard=dashboard_to_create.as_dict()) # type: ignore File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/service/dashboards.py", line 1147, in create body = dashboard.as_dict() AttributeError: 'dict' object has no attribute 'as_dict' 10:05 INFO [databricks.labs.ucx.installer.mixins] Fetching warehouse_id from a config 10:05 ERROR [databricks.labs.blueprint.parallel] installing dashboards(PosixPath('/home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/assessment/estimates'), parent_path='/Users/0a330eb5-dd51-4d97-b6e4-c474356b1d5d/.qfWp/dashboards') task failed: 'dict' object has no attribute 'as_dict' Traceback (most recent call last): File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/blueprint/parallel.py", line 158, in inner return func(*args, **kwargs), None File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 54, in wrapper raise err File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 33, in wrapper return func(*args, **kwargs) File "/home/runner/work/ucx/ucx/src/databricks/labs/ucx/install.py", line 653, in _create_dashboard dashboard = Dashboards(self._ws).create_dashboard( File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/lsql/dashboards.py", line 1138, in create_dashboard sdk_dashboard = self._ws.lakeview.create(dashboard=dashboard_to_create.as_dict()) # type: ignore File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/service/dashboards.py", line 1147, in create body = dashboard.as_dict() AttributeError: 'dict' object has no attribute 'as_dict' 10:05 INFO [databricks.labs.ucx.installer.mixins] Fetching warehouse_id from a config 10:05 ERROR [databricks.labs.blueprint.parallel] installing dashboards(PosixPath('/home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/progress/main'), parent_path='/Users/0a330eb5-dd51-4d97-b6e4-c474356b1d5d/.qfWp/dashboards') task failed: 'dict' object has no attribute 'as_dict' Traceback (most recent call last): File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/blueprint/parallel.py", line 158, in inner return func(*args, **kwargs), None File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 54, in wrapper raise err File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 33, in wrapper return func(*args, **kwargs) File "/home/runner/work/ucx/ucx/src/databricks/labs/ucx/install.py", line 653, in _create_dashboard dashboard = Dashboards(self._ws).create_dashboard( File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/lsql/dashboards.py", line 1138, in create_dashboard sdk_dashboard = self._ws.lakeview.create(dashboard=dashboard_to_create.as_dict()) # type: ignore File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/service/dashboards.py", line 1147, in create body = dashboard.as_dict() AttributeError: 'dict' object has no attribute 'as_dict' 10:05 INFO [databricks.labs.ucx.installer.mixins] Fetching warehouse_id from a config 10:05 ERROR [databricks.labs.blueprint.parallel] installing dashboards(PosixPath('/home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/assessment/main'), parent_path='/Users/0a330eb5-dd51-4d97-b6e4-c474356b1d5d/.qfWp/dashboards') task failed: 'dict' object has no attribute 'as_dict' Traceback (most recent call last): File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/blueprint/parallel.py", line 158, in inner return func(*args, **kwargs), None File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 54, in wrapper raise err File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 33, in wrapper return func(*args, **kwargs) File "/home/runner/work/ucx/ucx/src/databricks/labs/ucx/install.py", line 653, in _create_dashboard dashboard = Dashboards(self._ws).create_dashboard( File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/lsql/dashboards.py", line 1138, in create_dashboard sdk_dashboard = self._ws.lakeview.create(dashboard=dashboard_to_create.as_dict()) # type: ignore File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/service/dashboards.py", line 1147, in create body = dashboard.as_dict() AttributeError: 'dict' object has no attribute 'as_dict' 10:05 INFO [databricks.labs.blueprint.parallel] installing dashboards 7/7, rps: 3.950/sec 10:05 CRITICAL [databricks.labs.blueprint.parallel] All 'installing dashboards' tasks failed!!! 10:05 ERROR [databricks.labs.blueprint.parallel] installing components task failed: Detected 7 failures: AttributeError: 'dict' object has no attribute 'as_dict' Traceback (most recent call last): File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/blueprint/parallel.py", line 158, in inner return func(*args, **kwargs), None File "/home/runner/work/ucx/ucx/src/databricks/labs/ucx/install.py", line 540, in _create_database_and_dashboards Threads.strict("installing dashboards", list(self._get_create_dashboard_tasks())) File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/blueprint/parallel.py", line 63, in strict raise ManyError(errs) databricks.labs.blueprint.parallel.ManyError: Detected 7 failures: AttributeError: 'dict' object has no attribute 'as_dict' 10:05 INFO [databricks.labs.blueprint.parallel] installing components 2/2, rps: 0.151/sec 10:05 ERROR [databricks.labs.blueprint.parallel] More than half 'installing components' tasks failed: 0% results available (0/2). Took 0:00:13.264038 10:04 INFO [databricks.sdk] Using Databricks Metadata Service authentication 10:04 INFO [databricks.sdk] Using Databricks Metadata Service authentication 10:04 INFO [databricks.labs.pytester.fixtures.baseline] Created dummy-udtv-ra78a57f28@example.com: https://DATABRICKS_HOST/#settings/workspace/identity-and-access/users/4464044391219940 10:04 INFO [databricks.labs.pytester.fixtures.iam] Workspace group ucx-YwwQ-ra78a57f28: https://DATABRICKS_HOST#setting/accounts/groups/563969068587611 10:04 INFO [databricks.labs.pytester.fixtures.iam] Account group ucx-YwwQ-ra78a57f28: https://accounts.CLOUD_ENVdatabricks.net/users/groups/84311183409853/members 10:04 INFO [databricks.labs.pytester.fixtures.baseline] Created hive_metastore.dummy_smqub schema: https://DATABRICKS_HOST/#explore/data/hive_metastore/dummy_smqub 10:04 INFO [databricks.labs.pytester.fixtures.baseline] Created hive_metastore.dummy_smqub.dummy_t3qym schema: https://DATABRICKS_HOST/#explore/data/hive_metastore/dummy_smqub/dummy_t3qym 10:04 INFO [databricks.labs.pytester.fixtures.baseline] Created dummy_query_QnXFE query: https://DATABRICKS_HOST/#sql/editor/5c5d2230-8855-4e1b-9e05-0c229a32f1a8 10:04 INFO [databricks.labs.pytester.fixtures.baseline] Created dummy-oqOC-ra78a57f28: https://DATABRICKS_HOST/setting/clusters/cluster-policies/view/000571805BB52BEE 10:04 INFO [databricks.labs.pytester.fixtures.baseline] Created hive_metastore.dummy_sgjao schema: https://DATABRICKS_HOST/#explore/data/hive_metastore/dummy_sgjao 10:04 INFO [databricks.labs.pytester.fixtures.baseline] Created hive_metastore.dummy_sgjao.dummy_tdbyz schema: https://DATABRICKS_HOST/#explore/data/hive_metastore/dummy_sgjao/dummy_tdbyz 10:04 INFO [databricks.labs.pytester.fixtures.baseline] Created hive_metastore.dummy_sic5a schema: https://DATABRICKS_HOST/#explore/data/hive_metastore/dummy_sic5a 10:04 DEBUG [databricks.labs.ucx.install] Cannot find previous installation: Path (/Users/0a330eb5-dd51-4d97-b6e4-c474356b1d5d/.qfWp/config.yml) doesn't exist. 10:04 INFO [databricks.labs.ucx.install] Please answer a couple of questions to configure Unity Catalog migration 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Inventory Database stored in hive_metastore 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Catalog to store UCX artifacts in 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Log level 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Number of threads 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Backup prefix 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Choose how to map the workspace groups: [0] Match by Name [1] Apply a Prefix [2] Apply a Suffix [3] Match by External ID [4] Regex Substitution [5] Regex Matching Enter a number between 0 and 5 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Enter a prefix to add to the workspace group name 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Comma-separated list of workspace group names to migrate. If not specified, we'll use all account-level groups with matching names to workspace-level groups 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Comma-separated list of databases to migrate. If not specified, we'll use all databases in hive_metastore 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Does given workspace 4095808988021766 block Internet access? 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Do you want to trigger assessment job after installation? 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Reconciliation threshold, in percentage 10:05 INFO [databricks.labs.ucx.installer.hms_lineage] HMS Lineage feature creates one system table named system.hms_to_uc_migration.table_access and helps in your migration process from HMS to UC by allowing you to programmatically query HMS lineage data. 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: No HMS lineage collection init script exists, do you want to create one? 10:05 INFO [databricks.labs.ucx.install] Fetching installations... 10:05 INFO [databricks.labs.blueprint.parallel] finding qfWp installations 100/108, rps: 186.973/sec 10:05 INFO [databricks.labs.blueprint.parallel] finding qfWp installations 108/108, rps: 185.415/sec 10:05 INFO [databricks.labs.blueprint.parallel] Finished 'finding qfWp installations' tasks: 0% results available (0/108). Took 0:00:00.583115 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Select PRO or SERVERLESS SQL warehouse to run assessment dashboards on [0] [Create new PRO SQL warehouse] [1] DEFAULT Test Warehouse (TEST_DEFAULT_WAREHOUSE_ID, SERVERLESS, RUNNING) Enter a number between 0 and 1 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Instance pool id to be set in cluster policy for all workflow clusters 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: We have identified one or more cluster policies set up for an external metastore. Would you like to set UCX to connect to the external metastore? 10:05 INFO [databricks.labs.ucx.installer.policy] Creating UCX cluster policy. 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: If hive_metastore contains managed table with external location paths (not dbfs root), please select which migration option to choose from [0] Convert MANAGED HMS table to EXTERNAL HMS table and migrate as EXTERNAL UC table. Once the relevant HMS tables are deleted, the underlying data won't get deleted anymore, consider the impact of this change on your data workloads [1] Copy data from MANAGED HMS to MANAGED UC table [2] Migrate MANAGED HMS table as EXTERNAL UC table. This option would require you to convert MANAGED HMS tables to EXTERNAL HMS tables once UC migration is complete, otherwise deleting HMS MANAGED table would delete the migrated UC table Enter a number between 0 and 2 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Parallelism for migrating dbfs root delta tables with deep clone 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Min workers for auto-scale job cluster for table migration 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Max workers for auto-scale job cluster for table migration 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Open config file in the browser and continue installing? https://DATABRICKS_HOST/#workspace/Users/0a330eb5-dd51-4d97-b6e4-c474356b1d5d/.qfWp/config.yml 10:05 DEBUG [tests.integration.conftest] Waiting for clusters to start... 10:05 INFO [databricks.labs.blueprint.parallel] ensure clusters running 3/3, rps: 61.949/sec 10:05 INFO [databricks.labs.blueprint.parallel] Finished 'ensure clusters running' tasks: 0% results available (0/3). Took 0:00:00.048719 10:05 DEBUG [tests.integration.conftest] Waiting for clusters to start... 10:05 INFO [databricks.labs.pytester.fixtures.baseline] Created ucx_8UgeVKX1EhNtfo2s catalog: https://DATABRICKS_HOST/#explore/data/ucx_8UgeVKX1EhNtfo2s 10:05 INFO [databricks.labs.ucx.install] Installing UCX v0.50.1+320241119100517 10:05 INFO [databricks.labs.ucx.install] Creating ucx schemas... 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a database exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.CLOUD_ENV_service_principals table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.clusters table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.global_init_scripts table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.jobs table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.pipelines table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.external_locations table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.mounts table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.grants table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.groups table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.tables table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.table_size table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.table_failures table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.workspace_objects table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.permissions table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.submit_runs table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.policies table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.migration_status table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.workflow_problems table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.query_problems table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.udfs table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.logs table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.recon_results table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.directfs_in_paths table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.directfs_in_queries table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.used_tables_in_paths table exists 10:05 INFO [databricks.labs.blueprint.parallel] deploy tables 10/27, rps: 5.856/sec 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.used_tables_in_queries table exists 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.inferred_grants table exists 10:05 INFO [databricks.labs.blueprint.parallel] deploy tables 20/27, rps: 6.855/sec 10:05 INFO [databricks.labs.blueprint.parallel] deploy tables 27/27, rps: 8.677/sec 10:05 INFO [databricks.labs.blueprint.parallel] Finished 'deploy tables' tasks: 0% results available (0/27). Took 0:00:03.111977 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.grant_detail view matches queries/views/grant_detail.sql contents 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=remove-workspace-local-backup-groups 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=assessment 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.objects view matches queries/views/objects.sql contents 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=failing 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=validate-groups-permissions 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.table_estimates view matches queries/views/table_estimates.sql contents 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=migrate-external-hiveserde-tables-in-place-experimental 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=migration-progress-experimental 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.misc_patterns view matches queries/views/misc_patterns.sql contents 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=migrate-groups 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=migrate-tables-in-mounts-experimental 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.code_patterns view matches queries/views/code_patterns.sql contents 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=scan-tables-in-mounts-experimental 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=migrate-tables 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.reconciliation_results view matches queries/views/reconciliation_results.sql contents 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=migrate-external-tables-ctas 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=migrate-data-reconciliation 10:05 INFO [databricks.labs.ucx.installer.workflows] Creating new job configuration for step=migrate-groups-legacy 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.directfs view matches queries/views/directfs.sql contents 10:05 INFO [databricks.labs.lsql.deployment] Ensuring hive_metastore.dummy_sic5a.used_tables view matches queries/views/used_tables.sql contents 10:05 INFO [databricks.labs.ucx.install] Creating dashboards... 10:05 DEBUG [databricks.labs.ucx.install] Reading step folder /home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/views... 10:05 DEBUG [databricks.labs.ucx.install] Reading step folder /home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/assessment... 10:05 DEBUG [databricks.labs.ucx.install] Reading step folder /home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/migration... 10:05 DEBUG [databricks.labs.ucx.install] Reading step folder /home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/progress... 10:05 INFO [databricks.labs.ucx.install] Creating dashboard in /home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/assessment/interactive... 10:05 INFO [databricks.labs.ucx.install] Creating dashboard in /home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/assessment/estimates... 10:05 INFO [databricks.labs.ucx.install] Creating dashboard in /home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/assessment/main... 10:05 INFO [databricks.labs.ucx.install] Creating dashboard in /home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/assessment/CLOUD_ENV... 10:05 INFO [databricks.labs.ucx.install] Creating dashboard in /home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/migration/groups... 10:05 INFO [databricks.labs.ucx.install] Creating dashboard in /home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/migration/main... 10:05 INFO [databricks.labs.ucx.install] Creating dashboard in /home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/progress/main... 10:05 INFO [databricks.labs.ucx.installer.mixins] Fetching warehouse_id from a config 10:05 ERROR [databricks.labs.blueprint.parallel] installing dashboards(PosixPath('/home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/assessment/CLOUD_ENV'), parent_path='/Users/0a330eb5-dd51-4d97-b6e4-c474356b1d5d/.qfWp/dashboards') task failed: 'dict' object has no attribute 'as_dict' Traceback (most recent call last): File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/blueprint/parallel.py", line 158, in inner return func(*args, **kwargs), None File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 54, in wrapper raise err File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 33, in wrapper return func(*args, **kwargs) File "/home/runner/work/ucx/ucx/src/databricks/labs/ucx/install.py", line 653, in _create_dashboard dashboard = Dashboards(self._ws).create_dashboard( File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/lsql/dashboards.py", line 1138, in create_dashboard sdk_dashboard = self._ws.lakeview.create(dashboard=dashboard_to_create.as_dict()) # type: ignore File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/service/dashboards.py", line 1147, in create body = dashboard.as_dict() AttributeError: 'dict' object has no attribute 'as_dict' 10:05 INFO [databricks.labs.ucx.installer.mixins] Fetching warehouse_id from a config 10:05 ERROR [databricks.labs.blueprint.parallel] installing dashboards(PosixPath('/home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/migration/groups'), parent_path='/Users/0a330eb5-dd51-4d97-b6e4-c474356b1d5d/.qfWp/dashboards') task failed: 'dict' object has no attribute 'as_dict' Traceback (most recent call last): File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/blueprint/parallel.py", line 158, in inner return func(*args, **kwargs), None File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 54, in wrapper raise err File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 33, in wrapper return func(*args, **kwargs) File "/home/runner/work/ucx/ucx/src/databricks/labs/ucx/install.py", line 653, in _create_dashboard dashboard = Dashboards(self._ws).create_dashboard( File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/lsql/dashboards.py", line 1138, in create_dashboard sdk_dashboard = self._ws.lakeview.create(dashboard=dashboard_to_create.as_dict()) # type: ignore File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/service/dashboards.py", line 1147, in create body = dashboard.as_dict() AttributeError: 'dict' object has no attribute 'as_dict' 10:05 INFO [databricks.labs.ucx.installer.mixins] Fetching warehouse_id from a config 10:05 ERROR [databricks.labs.blueprint.parallel] installing dashboards(PosixPath('/home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/assessment/interactive'), parent_path='/Users/0a330eb5-dd51-4d97-b6e4-c474356b1d5d/.qfWp/dashboards') task failed: 'dict' object has no attribute 'as_dict' Traceback (most recent call last): File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/blueprint/parallel.py", line 158, in inner return func(*args, **kwargs), None File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 54, in wrapper raise err File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 33, in wrapper return func(*args, **kwargs) File "/home/runner/work/ucx/ucx/src/databricks/labs/ucx/install.py", line 653, in _create_dashboard dashboard = Dashboards(self._ws).create_dashboard( File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/lsql/dashboards.py", line 1138, in create_dashboard sdk_dashboard = self._ws.lakeview.create(dashboard=dashboard_to_create.as_dict()) # type: ignore File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/service/dashboards.py", line 1147, in create body = dashboard.as_dict() AttributeError: 'dict' object has no attribute 'as_dict' 10:05 INFO [databricks.labs.ucx.installer.mixins] Fetching warehouse_id from a config 10:05 ERROR [databricks.labs.blueprint.parallel] installing dashboards(PosixPath('/home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/migration/main'), parent_path='/Users/0a330eb5-dd51-4d97-b6e4-c474356b1d5d/.qfWp/dashboards') task failed: 'dict' object has no attribute 'as_dict' Traceback (most recent call last): File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/blueprint/parallel.py", line 158, in inner return func(*args, **kwargs), None File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 54, in wrapper raise err File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 33, in wrapper return func(*args, **kwargs) File "/home/runner/work/ucx/ucx/src/databricks/labs/ucx/install.py", line 653, in _create_dashboard dashboard = Dashboards(self._ws).create_dashboard( File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/lsql/dashboards.py", line 1138, in create_dashboard sdk_dashboard = self._ws.lakeview.create(dashboard=dashboard_to_create.as_dict()) # type: ignore File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/service/dashboards.py", line 1147, in create body = dashboard.as_dict() AttributeError: 'dict' object has no attribute 'as_dict' 10:05 INFO [databricks.labs.ucx.installer.mixins] Fetching warehouse_id from a config 10:05 ERROR [databricks.labs.blueprint.parallel] installing dashboards(PosixPath('/home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/assessment/estimates'), parent_path='/Users/0a330eb5-dd51-4d97-b6e4-c474356b1d5d/.qfWp/dashboards') task failed: 'dict' object has no attribute 'as_dict' Traceback (most recent call last): File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/blueprint/parallel.py", line 158, in inner return func(*args, **kwargs), None File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 54, in wrapper raise err File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 33, in wrapper return func(*args, **kwargs) File "/home/runner/work/ucx/ucx/src/databricks/labs/ucx/install.py", line 653, in _create_dashboard dashboard = Dashboards(self._ws).create_dashboard( File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/lsql/dashboards.py", line 1138, in create_dashboard sdk_dashboard = self._ws.lakeview.create(dashboard=dashboard_to_create.as_dict()) # type: ignore File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/service/dashboards.py", line 1147, in create body = dashboard.as_dict() AttributeError: 'dict' object has no attribute 'as_dict' 10:05 INFO [databricks.labs.ucx.installer.mixins] Fetching warehouse_id from a config 10:05 ERROR [databricks.labs.blueprint.parallel] installing dashboards(PosixPath('/home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/progress/main'), parent_path='/Users/0a330eb5-dd51-4d97-b6e4-c474356b1d5d/.qfWp/dashboards') task failed: 'dict' object has no attribute 'as_dict' Traceback (most recent call last): File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/blueprint/parallel.py", line 158, in inner return func(*args, **kwargs), None File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 54, in wrapper raise err File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 33, in wrapper return func(*args, **kwargs) File "/home/runner/work/ucx/ucx/src/databricks/labs/ucx/install.py", line 653, in _create_dashboard dashboard = Dashboards(self._ws).create_dashboard( File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/lsql/dashboards.py", line 1138, in create_dashboard sdk_dashboard = self._ws.lakeview.create(dashboard=dashboard_to_create.as_dict()) # type: ignore File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/service/dashboards.py", line 1147, in create body = dashboard.as_dict() AttributeError: 'dict' object has no attribute 'as_dict' 10:05 INFO [databricks.labs.ucx.installer.mixins] Fetching warehouse_id from a config 10:05 ERROR [databricks.labs.blueprint.parallel] installing dashboards(PosixPath('/home/runner/work/ucx/ucx/src/databricks/labs/ucx/queries/assessment/main'), parent_path='/Users/0a330eb5-dd51-4d97-b6e4-c474356b1d5d/.qfWp/dashboards') task failed: 'dict' object has no attribute 'as_dict' Traceback (most recent call last): File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/blueprint/parallel.py", line 158, in inner return func(*args, **kwargs), None File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 54, in wrapper raise err File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/retries.py", line 33, in wrapper return func(*args, **kwargs) File "/home/runner/work/ucx/ucx/src/databricks/labs/ucx/install.py", line 653, in _create_dashboard dashboard = Dashboards(self._ws).create_dashboard( File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/lsql/dashboards.py", line 1138, in create_dashboard sdk_dashboard = self._ws.lakeview.create(dashboard=dashboard_to_create.as_dict()) # type: ignore File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/sdk/service/dashboards.py", line 1147, in create body = dashboard.as_dict() AttributeError: 'dict' object has no attribute 'as_dict' 10:05 INFO [databricks.labs.blueprint.parallel] installing dashboards 7/7, rps: 3.950/sec 10:05 CRITICAL [databricks.labs.blueprint.parallel] All 'installing dashboards' tasks failed!!! 10:05 ERROR [databricks.labs.blueprint.parallel] installing components task failed: Detected 7 failures: AttributeError: 'dict' object has no attribute 'as_dict' Traceback (most recent call last): File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/blueprint/parallel.py", line 158, in inner return func(*args, **kwargs), None File "/home/runner/work/ucx/ucx/src/databricks/labs/ucx/install.py", line 540, in _create_database_and_dashboards Threads.strict("installing dashboards", list(self._get_create_dashboard_tasks())) File "/home/runner/work/ucx/ucx/.venv/lib/python3.10/site-packages/databricks/labs/blueprint/parallel.py", line 63, in strict raise ManyError(errs) databricks.labs.blueprint.parallel.ManyError: Detected 7 failures: AttributeError: 'dict' object has no attribute 'as_dict' 10:05 INFO [databricks.labs.blueprint.parallel] installing components 2/2, rps: 0.151/sec 10:05 ERROR [databricks.labs.blueprint.parallel] More than half 'installing components' tasks failed: 0% results available (0/2). Took 0:00:13.264038 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Do you want to uninstall ucx from the workspace too, this would remove ucx project folder, dashboards, queries and jobs 10:05 INFO [databricks.labs.ucx.install] Deleting UCX v0.50.1+320241119100517 from https://DATABRICKS_HOST 10:05 INFO [databricks.labs.blueprint.tui] Asking prompt: Do you want to delete the inventory database dummy_sic5a too? 10:05 INFO [databricks.labs.ucx.install] Deleting inventory database dummy_sic5a 10:05 INFO [databricks.labs.lsql.deployment] Deleting hive_metastore.dummy_sic5a database 10:05 INFO [databricks.labs.ucx.installer.workflows] Removing job_id=786888925055293, as it is no longer needed 10:05 INFO [databricks.labs.ucx.installer.workflows] Removing job_id=985040672320422, as it is no longer needed 10:05 INFO [databricks.labs.ucx.installer.workflows] Removing job_id=139247273952676, as it is no longer needed 10:05 INFO [databricks.labs.ucx.installer.workflows] Removing job_id=201578159925010, as it is no longer needed 10:05 INFO [databricks.labs.ucx.installer.workflows] Removing job_id=774390023921886, as it is no longer needed 10:05 INFO [databricks.labs.ucx.installer.workflows] Removing job_id=848024337147249, as it is no longer needed 10:05 INFO [databricks.labs.ucx.installer.workflows] Removing job_id=953802259865923, as it is no longer needed 10:05 INFO [databricks.labs.ucx.installer.workflows] Removing job_id=910625870877457, as it is no longer needed 10:05 INFO [databricks.labs.ucx.installer.workflows] Removing job_id=846792804346561, as it is no longer needed 10:05 INFO [databricks.labs.ucx.installer.workflows] Removing job_id=904450226916312, as it is no longer needed 10:05 INFO [databricks.labs.ucx.installer.workflows] Removing job_id=663498663851334, as it is no longer needed 10:05 INFO [databricks.labs.ucx.installer.workflows] Removing job_id=361750651271831, as it is no longer needed 10:05 INFO [databricks.labs.ucx.installer.workflows] Removing job_id=945142314976699, as it is no longer needed 10:05 INFO [databricks.labs.ucx.install] Deleting cluster policy 10:05 INFO [databricks.labs.ucx.install] Deleting secret scope 10:05 INFO [databricks.labs.ucx.install] UnInstalling UCX complete [gw0] linux -- Python 3.10.15 /home/runner/work/ucx/ucx/.venv/bin/python ```

Running from nightly #276