Problem
As of November 19, 2024, you notice your jobs are setting a tag for a specific table according to the following structure.
ALTER TABLE customer.profile.activity_by_guid
SET TAGS('LOB' = 'Non-Specific')
This same ALTER TABLE
worked without issue before November 19. When you check your driver logs, you see the following exception.
2024/11/19 19:06:16.270 WARN com.databricks.elasticspark.runoutput.PersistedRunOutputHelper$[tenant=XXXX traceId=XXXX spanId=XXXX requestId=XXXX serverEventId=XXXX parentServerEventId=XXXX thread=jobsApiStorageThreadPool-47]: Failed to parse [RequestId=XXXX ErrorClass=INVALID_PARAMETER_VALUE.INVALID_PARAMETER_VALUE] Duplicate tag keys are not allowed
JVM stacktrace:
com.databricks.sql.managedcatalog.UnityCatalogServiceException
Cause
Databricks started enabling case sensitivity in workspaces as of November 19, 2024. All new tag keys created need to be lower case. All existing tags need to be converted to lower case.
This policy change is why “LOB”
fails with the SET TAG
command, even though “LOB”
exists on the table.
Solution
Use lower case when setting tag keys.
ALTER TABLE customer.profile.activity_by_guid
SET TAGS ('lob' = 'Non-Specific')