fix(prometheus): the migration removing sign-in targets runs on a new database, where the metric tables may not exist yet (#6747)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -17,11 +17,13 @@ depends_on: Union[str, Sequence[str], None] = None
|
|||||||
|
|
||||||
def upgrade() -> None:
|
def upgrade() -> None:
|
||||||
# Left in place, such a target would ask with no token, and some services ban
|
# Left in place, such a target would ask with no token, and some services ban
|
||||||
# an address for that. Its newest values go with it; history ages out.
|
# an address for that. Its newest values go with it; history ages out. On a new
|
||||||
op.execute("""
|
# database the metric tables may not exist yet, and there is nothing to remove.
|
||||||
DELETE FROM plugin_metric_latest l USING prometheus_targets t
|
if sa.inspect(op.get_bind()).has_table("plugin_metric_latest"):
|
||||||
WHERE t.token_from IS NOT NULL AND l.source_module = 'prometheus'
|
op.execute("""
|
||||||
AND (l.resource_name = t.name OR left(l.resource_name, length(t.name) + 1) = t.name || ':')""")
|
DELETE FROM plugin_metric_latest l USING prometheus_targets t
|
||||||
|
WHERE t.token_from IS NOT NULL AND l.source_module = 'prometheus'
|
||||||
|
AND (l.resource_name = t.name OR left(l.resource_name, length(t.name) + 1) = t.name || ':')""")
|
||||||
op.execute("DELETE FROM prometheus_targets WHERE token_from IS NOT NULL")
|
op.execute("DELETE FROM prometheus_targets WHERE token_from IS NOT NULL")
|
||||||
op.drop_column("prometheus_targets", "token_from")
|
op.drop_column("prometheus_targets", "token_from")
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user