Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Metabase can't decrypt the data when adding an encryption key after a failed migration #42612

Closed
paoliniluis opened this issue May 13, 2024 · 2 comments · Fixed by #42617
Closed
Assignees
Labels
.Escalation Operation/Database Migrations Issues with application DB migrations when launching Metabase Priority:P1 Security holes w/o exploit, crashing, setup/upgrade, login, broken common features, correctness .Regression Bugs that were previously fixed and/or bugs unintentionally shipped with new features. .Team/BackendComponents also known as BEC Type:Bug Product defects
Milestone

Comments

@paoliniluis
Copy link
Contributor

Describe the bug

If you start a migration without an encryption key and you add it afterwards, it seems that Metabase isn't using it

To Reproduce

  1. Start v48.9 with an encryption key, initialize it
  2. Remove encryption key and start 49.10, it won't work, as it doesn't have the encryption key
  3. Now add the key and start 49.10 again, it won't work

Expected behavior

It should work

Logs


2024-05-13 21:46:53,652 ERROR liquibase.changelog :: ChangeSet migrations/001_update_migrations.yaml::v49.2024-04-09T10:00:03::qnkhuat encountered an exception.

UPDATE SUMMARY
Run:                          2
Previously run:             268
Filtered out:                17
-------------------------------
Total change sets:          287


FILTERED CHANGE SETS SUMMARY
DBMS mismatch:               17

2024-05-13 21:46:53,682 ERROR metabase.core :: Metabase Initialization FAILED
liquibase.exception.CommandExecutionException: liquibase.exception.LiquibaseException: liquibase.exception.MigrationFailedException: Migration failed for changeset migrations/001_update_migrations.yaml::v49.2024-04-09T10:00:03::qnkhuat:
     Reason: clojure.lang.ExceptionInfo: Unrecognized token 'KglemLU5XpyL': was expecting (JSON String, Number, Array, Object or token 'null', 'true' or 'false')
 at [Source: REDACTED (`StreamReadFeature.INCLUDE_SOURCE_IN_LOCATION` disabled); line: 1, column: 13] {:toucan2/context-trace [["resolve connection" {:toucan2.connection/connectable org.postgresql.jdbc.PgConnection}] ["resolve connection" {:toucan2.connection/connectable nil}]]}
	at liquibase.command.CommandScope.execute(CommandScope.java:253)
	at liquibase.Liquibase.lambda$update$0(Liquibase.java:245)
	at liquibase.Scope.lambda$child$0(Scope.java:186)
	at liquibase.Scope.child(Scope.java:195)
	at liquibase.Scope.child(Scope.java:185)
	at liquibase.Scope.child(Scope.java:164)
	at liquibase.Liquibase.runInScope(Liquibase.java:1419)
	at liquibase.Liquibase.update(Liquibase.java:234)
	at liquibase.Liquibase.update(Liquibase.java:212)
	at liquibase.Liquibase.update(Liquibase.java:194)
	at metabase.db.liquibase$migrate_up_if_needed_BANG_.invokeStatic(liquibase.clj:305)
	at metabase.db.liquibase$migrate_up_if_needed_BANG_.invoke(liquibase.clj:287)
	at metabase.db.setup$migrate_BANG_$fn__51146.invoke(setup.clj:80)
	at metabase.db.liquibase$do_with_liquibase$f_STAR___48822.invoke(liquibase.clj:139)
	at metabase.db.liquibase$do_with_liquibase.invokeStatic(liquibase.clj:142)
	at metabase.db.liquibase$do_with_liquibase.invoke(liquibase.clj:130)
	at metabase.db.setup$migrate_BANG_.invokeStatic(setup.clj:75)
	at metabase.db.setup$migrate_BANG_.doInvoke(setup.clj:56)
	at clojure.lang.RestFn.invoke(RestFn.java:445)
	at metabase.db.setup$run_schema_migrations_BANG_.invokeStatic(setup.clj:147)
	at metabase.db.setup$run_schema_migrations_BANG_.invoke(setup.clj:141)
	at metabase.db.setup$setup_db_BANG_$fn__51174$fn__51175.invoke(setup.clj:165)
	at metabase.util.jvm$do_with_us_locale.invokeStatic(jvm.clj:239)
	at metabase.util.jvm$do_with_us_locale.invoke(jvm.clj:225)
	at metabase.db.setup$setup_db_BANG_$fn__51174.invoke(setup.clj:160)
	at metabase.db.setup$setup_db_BANG_.invokeStatic(setup.clj:159)
	at metabase.db.setup$setup_db_BANG_.invoke(setup.clj:153)
	at metabase.db$setup_db_BANG_$fn__51194.invoke(db.clj:69)
	at metabase.db$setup_db_BANG_.invokeStatic(db.clj:64)
	at metabase.db$setup_db_BANG_.invoke(db.clj:55)
	at metabase.core$init_BANG__STAR_.invokeStatic(core.clj:116)
	at metabase.core$init_BANG__STAR_.invoke(core.clj:101)
	at metabase.core$init_BANG_.invokeStatic(core.clj:159)
	at metabase.core$init_BANG_.invoke(core.clj:154)
	at metabase.core$start_normally.invokeStatic(core.clj:171)
	at metabase.core$start_normally.invoke(core.clj:165)
	at metabase.core$entrypoint.invokeStatic(core.clj:204)
	at metabase.core$entrypoint.doInvoke(core.clj:198)
	at clojure.lang.RestFn.invoke(RestFn.java:397)
	at clojure.lang.AFn.applyToHelper(AFn.java:152)
	at clojure.lang.RestFn.applyTo(RestFn.java:132)
	at clojure.lang.Var.applyTo(Var.java:705)
	at clojure.core$apply.invokeStatic(core.clj:667)
	at clojure.core$apply.invoke(core.clj:662)
	at metabase.bootstrap$_main.invokeStatic(bootstrap.clj:31)
	at metabase.bootstrap$_main.doInvoke(bootstrap.clj:28)
	at clojure.lang.RestFn.invoke(RestFn.java:397)
	at clojure.lang.AFn.applyToHelper(AFn.java:152)
	at clojure.lang.RestFn.applyTo(RestFn.java:132)
	at metabase.bootstrap.main(Unknown Source)
Caused by: liquibase.exception.LiquibaseException: liquibase.exception.MigrationFailedException: Migration failed for changeset migrations/001_update_migrations.yaml::v49.2024-04-09T10:00:03::qnkhuat:
     Reason: clojure.lang.ExceptionInfo: Unrecognized token 'KglemLU5XpyL': was expecting (JSON String, Number, Array, Object or token 'null', 'true' or 'false')
 at [Source: REDACTED (`StreamReadFeature.INCLUDE_SOURCE_IN_LOCATION` disabled); line: 1, column: 13] {:toucan2/context-trace [["resolve connection" {:toucan2.connection/connectable org.postgresql.jdbc.PgConnection}] ["resolve connection" {:toucan2.connection/connectable nil}]]}
	at liquibase.changelog.ChangeLogIterator.run(ChangeLogIterator.java:151)
	at liquibase.command.core.AbstractUpdateCommandStep.lambda$run$0(AbstractUpdateCommandStep.java:110)
	at liquibase.Scope.lambda$child$0(Scope.java:186)
	at liquibase.Scope.child(Scope.java:195)
	at liquibase.Scope.child(Scope.java:185)
	at liquibase.Scope.child(Scope.java:164)
	at liquibase.command.core.AbstractUpdateCommandStep.run(AbstractUpdateCommandStep.java:108)
	at liquibase.command.core.UpdateCommandStep.run(UpdateCommandStep.java:105)
	at liquibase.command.CommandScope.execute(CommandScope.java:217)
	... 49 more
Caused by: liquibase.exception.MigrationFailedException: Migration failed for changeset migrations/001_update_migrations.yaml::v49.2024-04-09T10:00:03::qnkhuat:
     Reason: clojure.lang.ExceptionInfo: Unrecognized token 'KglemLU5XpyL': was expecting (JSON String, Number, Array, Object or token 'null', 'true' or 'false')
 at [Source: REDACTED (`StreamReadFeature.INCLUDE_SOURCE_IN_LOCATION` disabled); line: 1, column: 13] {:toucan2/context-trace [["resolve connection" {:toucan2.connection/connectable org.postgresql.jdbc.PgConnection}] ["resolve connection" {:toucan2.connection/connectable nil}]]}
	at liquibase.changelog.ChangeSet.execute(ChangeSet.java:797)
	at liquibase.changelog.visitor.UpdateVisitor.executeAcceptedChange(UpdateVisitor.java:119)
	at liquibase.changelog.visitor.UpdateVisitor.visit(UpdateVisitor.java:68)
	at liquibase.changelog.ChangeLogIterator$2.lambda$run$0(ChangeLogIterator.java:133)
	at liquibase.Scope.lambda$child$0(Scope.java:186)
	at liquibase.Scope.child(Scope.java:195)
	at liquibase.Scope.child(Scope.java:185)
	at liquibase.Scope.child(Scope.java:164)
	at liquibase.changelog.ChangeLogIterator$2.run(ChangeLogIterator.java:122)
	at liquibase.Scope.lambda$child$0(Scope.java:186)
	at liquibase.Scope.child(Scope.java:195)
	at liquibase.Scope.child(Scope.java:185)
	at liquibase.Scope.child(Scope.java:164)
	at liquibase.Scope.child(Scope.java:252)
	at liquibase.Scope.child(Scope.java:256)
	at liquibase.changelog.ChangeLogIterator.run(ChangeLogIterator.java:89)
	... 57 more
Caused by: clojure.lang.ExceptionInfo: Unrecognized token 'KglemLU5XpyL': was expecting (JSON String, Number, Array, Object or token 'null', 'true' or 'false')
 at [Source: REDACTED (`StreamReadFeature.INCLUDE_SOURCE_IN_LOCATION` disabled); line: 1, column: 13] {:toucan2/context-trace [["resolve connection" {:toucan2.connection/connectable org.postgresql.jdbc.PgConnection}] ["resolve connection" {:toucan2.connection/connectable nil}]]}
	at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:2481)
	at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:762)
	at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._reportInvalidToken(ReaderBasedJsonParser.java:3042)
	at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:2085)
	at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:812)
	at cheshire.parse$parse.invokeStatic(parse.clj:90)
	at cheshire.parse$parse.invoke(parse.clj:88)
	at cheshire.core$parse_string.invokeStatic(core.clj:208)
	at cheshire.core$parse_string.invoke(core.clj:194)
	at cheshire.core$parse_string.invokeStatic(core.clj:205)
	at cheshire.core$parse_string.invoke(core.clj:194)
	at metabase.db.custom_migrations.DeleteScanFieldValuesTriggerForDBThatTurnItOff$with_connection_STAR___48605$with_transaction_STAR___48606$fn__48607.invoke(custom_migrations.clj:1079)
	at clojure.core$filter$fn__5962.invoke(core.clj:2834)
	at clojure.lang.LazySeq.sval(LazySeq.java:42)
	at clojure.lang.LazySeq.seq(LazySeq.java:51)
	at clojure.lang.RT.seq(RT.java:535)
	at clojure.core$seq__5467.invokeStatic(core.clj:139)
	at clojure.core$seq__5467.invoke(core.clj:139)
	at metabase.db.custom_migrations.DeleteScanFieldValuesTriggerForDBThatTurnItOff$with_connection_STAR___48605$with_transaction_STAR___48606.invoke(custom_migrations.clj:1079)
	at toucan2.connection$bind_current_connectable_fn$fn__21143.invoke(connection.clj:104)
	at metabase.db.connection$do_transaction$thunk__32323.invoke(connection.clj:150)
	at metabase.db.connection$do_transaction.invokeStatic(connection.clj:165)
	at metabase.db.connection$do_transaction.invoke(connection.clj:146)
	at metabase.db.connection$do_with_transaction_primary_method_java_sql_Connection.invokeStatic(connection.clj:199)
	at metabase.db.connection$do_with_transaction_primary_method_java_sql_Connection.invoke(connection.clj:172)
	at clojure.lang.AFn.applyToHelper(AFn.java:165)
	at clojure.lang.AFn.applyTo(AFn.java:144)
	at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
	at clojure.lang.RestFn.invoke(RestFn.java:457)
	at clojure.core$partial$fn__5908.invoke(core.clj:2643)
	at clojure.lang.AFn.applyToHelper(AFn.java:160)
	at clojure.lang.RestFn.applyTo(RestFn.java:132)
	at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
	at clojure.lang.RestFn.invoke(RestFn.java:436)
	at methodical.impl.combo.threaded$fn__18233$fn__18234$fn__18237.invoke(threaded.clj:71)
	at methodical.impl.combo.threaded$reducer_fn$fn__18203$fn__18207.invoke(threaded.clj:23)
	at clojure.lang.ArrayChunk.reduce(ArrayChunk.java:58)
	at clojure.core.protocols$fn__8244.invokeStatic(protocols.clj:136)
	at clojure.core.protocols$fn__8244.invoke(protocols.clj:124)
	at clojure.core.protocols$fn__8204$G__8199__8213.invoke(protocols.clj:19)
	at clojure.core.protocols$seq_reduce.invokeStatic(protocols.clj:31)
	at clojure.core.protocols$fn__8236.invokeStatic(protocols.clj:75)
	at clojure.core.protocols$fn__8236.invoke(protocols.clj:75)
	at clojure.core.protocols$fn__8178$G__8173__8191.invoke(protocols.clj:13)
	at clojure.core$reduce.invokeStatic(core.clj:6887)
	at clojure.core$reduce.invoke(core.clj:6869)
	at methodical.impl.combo.threaded$reducer_fn$fn__18203.invoke(threaded.clj:21)
	at clojure.core$comp$fn__5876.invoke(core.clj:2588)
	at methodical.impl.combo.threaded$combine_with_threader$fn__18213.invoke(threaded.clj:44)
	at clojure.lang.AFn.applyToHelper(AFn.java:160)
	at clojure.lang.RestFn.applyTo(RestFn.java:132)
	at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
	at clojure.lang.RestFn.invoke(RestFn.java:436)
	at toucan2.connection$do_with_transaction_around_method_toucan2_connection_default.invokeStatic(connection.clj:249)
	at toucan2.connection$do_with_transaction_around_method_toucan2_connection_default.invoke(connection.clj:245)
	at clojure.lang.AFn.applyToHelper(AFn.java:165)
	at clojure.lang.AFn.applyTo(AFn.java:144)
	at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
	at clojure.lang.RestFn.invoke(RestFn.java:457)
	at clojure.core$partial$fn__5908.invoke(core.clj:2643)
	at clojure.lang.AFn.applyToHelper(AFn.java:160)
	at clojure.lang.RestFn.applyTo(RestFn.java:132)
	at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
	at clojure.lang.RestFn.invoke(RestFn.java:436)
	at methodical.impl.standard$invoke_multifn.invokeStatic(standard.clj:58)
	at methodical.impl.standard$invoke_multifn.invoke(standard.clj:47)
	at methodical.impl.standard.StandardMultiFn.invoke(standard.clj:195)
	at metabase.db.custom_migrations.DeleteScanFieldValuesTriggerForDBThatTurnItOff$with_connection_STAR___48605.invoke(custom_migrations.clj:1073)
	at toucan2.connection$bind_current_connectable_fn$fn__21143.invoke(connection.clj:104)
	at toucan2.connection$bind_current_connectable_fn$fn__21143.invoke(connection.clj:104)
	at toucan2.jdbc.connection$do_with_connection_primary_method_java_sql_Connection.invokeStatic(connection.clj:13)
	at toucan2.jdbc.connection$do_with_connection_primary_method_java_sql_Connection.invoke(connection.clj:11)
	at clojure.lang.AFn.applyToHelper(AFn.java:160)
	at clojure.lang.AFn.applyTo(AFn.java:144)
	at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
	at clojure.lang.RestFn.invoke(RestFn.java:436)
	at clojure.core$partial$fn__5908.invoke(core.clj:2642)
	at clojure.lang.AFn.applyToHelper(AFn.java:156)
	at clojure.lang.RestFn.applyTo(RestFn.java:132)
	at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
	at clojure.lang.RestFn.invoke(RestFn.java:421)
	at methodical.impl.combo.threaded$fn__18233$fn__18234$fn__18235.invoke(threaded.clj:70)
	at methodical.impl.combo.threaded$reducer_fn$fn__18203$fn__18207.invoke(threaded.clj:23)
	at clojure.lang.ArrayChunk.reduce(ArrayChunk.java:58)
	at clojure.core.protocols$fn__8244.invokeStatic(protocols.clj:136)
	at clojure.core.protocols$fn__8244.invoke(protocols.clj:124)
	at clojure.core.protocols$fn__8204$G__8199__8213.invoke(protocols.clj:19)
	at clojure.core.protocols$seq_reduce.invokeStatic(protocols.clj:31)
	at clojure.core.protocols$fn__8236.invokeStatic(protocols.clj:75)
	at clojure.core.protocols$fn__8236.invoke(protocols.clj:75)
	at clojure.core.protocols$fn__8178$G__8173__8191.invoke(protocols.clj:13)
	at clojure.core$reduce.invokeStatic(core.clj:6887)
	at clojure.core$reduce.invoke(core.clj:6869)
	at methodical.impl.combo.threaded$reducer_fn$fn__18203.invoke(threaded.clj:21)
	at clojure.core$comp$fn__5876.invoke(core.clj:2587)
	at methodical.impl.combo.threaded$combine_with_threader$fn__18213.invoke(threaded.clj:43)
	at clojure.lang.AFn.applyToHelper(AFn.java:156)
	at clojure.lang.RestFn.applyTo(RestFn.java:132)
	at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
	at clojure.lang.RestFn.invoke(RestFn.java:421)
	at toucan2.connection$do_with_connection_around_method_toucan2_connection_default.invokeStatic(connection.clj:118)
	at toucan2.connection$do_with_connection_around_method_toucan2_connection_default.invoke(connection.clj:106)
	at clojure.lang.AFn.applyToHelper(AFn.java:160)
	at clojure.lang.AFn.applyTo(AFn.java:144)
	at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
	at clojure.lang.RestFn.invoke(RestFn.java:436)
	at clojure.core$partial$fn__5908.invoke(core.clj:2642)
	at clojure.lang.AFn.applyToHelper(AFn.java:156)
	at clojure.lang.RestFn.applyTo(RestFn.java:132)
	at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
	at clojure.lang.RestFn.invoke(RestFn.java:421)
	at methodical.impl.standard$invoke_multifn.invokeStatic(standard.clj:55)
	at methodical.impl.standard$invoke_multifn.invoke(standard.clj:47)
	at methodical.impl.standard.StandardMultiFn.invoke(standard.clj:193)
	at toucan2.connection$do_with_connection_primary_method_.invokeStatic(connection.clj:204)
	at toucan2.connection$do_with_connection_primary_method_.invoke(connection.clj:194)
	at clojure.lang.AFn.applyToHelper(AFn.java:160)
	at clojure.lang.AFn.applyTo(AFn.java:144)
	at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
	at clojure.lang.RestFn.invoke(RestFn.java:436)
	at clojure.core$partial$fn__5908.invoke(core.clj:2642)
	at clojure.lang.AFn.applyToHelper(AFn.java:156)
	at clojure.lang.RestFn.applyTo(RestFn.java:132)
	at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
	at clojure.lang.RestFn.invoke(RestFn.java:421)
	at methodical.impl.combo.threaded$fn__18233$fn__18234$fn__18235.invoke(threaded.clj:70)
	at methodical.impl.combo.threaded$reducer_fn$fn__18203$fn__18207.invoke(threaded.clj:23)
	at clojure.lang.ArrayChunk.reduce(ArrayChunk.java:58)
	at clojure.core.protocols$fn__8244.invokeStatic(protocols.clj:136)
	at clojure.core.protocols$fn__8244.invoke(protocols.clj:124)
	at clojure.core.protocols$fn__8204$G__8199__8213.invoke(protocols.clj:19)
	at clojure.core.protocols$seq_reduce.invokeStatic(protocols.clj:31)
	at clojure.core.protocols$fn__8236.invokeStatic(protocols.clj:75)
	at clojure.core.protocols$fn__8236.invoke(protocols.clj:75)
	at clojure.core.protocols$fn__8178$G__8173__8191.invoke(protocols.clj:13)
	at clojure.core$reduce.invokeStatic(core.clj:6887)
	at clojure.core$reduce.invoke(core.clj:6869)
	at methodical.impl.combo.threaded$reducer_fn$fn__18203.invoke(threaded.clj:21)
	at clojure.core$comp$fn__5876.invoke(core.clj:2587)
	at methodical.impl.combo.threaded$combine_with_threader$fn__18213.invoke(threaded.clj:43)
	at clojure.lang.AFn.applyToHelper(AFn.java:156)
	at clojure.lang.RestFn.applyTo(RestFn.java:132)
	at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
	at clojure.lang.RestFn.invoke(RestFn.java:421)
	at toucan2.connection$do_with_connection_around_method_toucan2_connection_default.invokeStatic(connection.clj:118)
	at toucan2.connection$do_with_connection_around_method_toucan2_connection_default.invoke(connection.clj:106)
	at clojure.lang.AFn.applyToHelper(AFn.java:160)
	at clojure.lang.AFn.applyTo(AFn.java:144)
	at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
	at clojure.lang.RestFn.invoke(RestFn.java:436)
	at clojure.core$partial$fn__5908.invoke(core.clj:2642)
	at clojure.lang.AFn.applyToHelper(AFn.java:156)
	at clojure.lang.RestFn.applyTo(RestFn.java:132)
	at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
	at clojure.lang.RestFn.invoke(RestFn.java:421)
	at methodical.impl.standard$invoke_multifn.invokeStatic(standard.clj:55)
	at methodical.impl.standard$invoke_multifn.invoke(standard.clj:47)
	at methodical.impl.standard.StandardMultiFn.invoke(standard.clj:193)
	at metabase.db.custom_migrations.DeleteScanFieldValuesTriggerForDBThatTurnItOff.execute(custom_migrations.clj:1073)
	at liquibase.change.custom.CustomChangeWrapper.generateStatements(CustomChangeWrapper.java:169)
	at liquibase.database.AbstractJdbcDatabase.executeStatements(AbstractJdbcDatabase.java:1271)
	at liquibase.changelog.ChangeSet.execute(ChangeSet.java:755)
	... 72 more
Caused by: com.fasterxml.jackson.core.JsonParseException: Unrecognized token 'KglemLU5XpyL': was expecting (JSON String, Number, Array, Object or token 'null', 'true' or 'false')
 at [Source: REDACTED (`StreamReadFeature.INCLUDE_SOURCE_IN_LOCATION` disabled); line: 1, column: 13]
	... 234 more
2024-05-13 21:46:53,901 INFO metabase.core :: Metabase Shutting Down ...

Information about your Metabase installation

v48 migrating to v49

Severity

P1

Additional context

NA

@paoliniluis paoliniluis added Type:Bug Product defects Priority:P1 Security holes w/o exploit, crashing, setup/upgrade, login, broken common features, correctness Operation/Database Migrations Issues with application DB migrations when launching Metabase .Regression Bugs that were previously fixed and/or bugs unintentionally shipped with new features. .Escalation labels May 13, 2024
@kbrownlees
Copy link

We are hitting a very similar error trying to upgrade from v0.47.7 -> v0.49.9.

We are not changing anything with our encryption key, but under 47.7 we are getting this error in the logs:

Cannot decrypt encrypted String. Have you changed or forgot to set MB_ENCRYPTION_SECRET_KEY?

Everything is working in 47.7 however as far as we can tell.

When attempting to upgrade to 49.9:

May 14, 2024 at 14:05 (UTC+12:00)	2024-05-14 12:05:15,281 ERROR metabase.core :: Metabase Initialization FAILED	metabase-test
May 14, 2024 at 14:05 (UTC+12:00)	liquibase.exception.CommandExecutionException: liquibase.exception.LiquibaseException: liquibase.exception.MigrationFailedException: Migration failed for changeset migrations/001_update_migrations.yaml::v49.2024-04-09T10:00:03::qnkhuat:	metabase-test
May 14, 2024 at 14:05 (UTC+12:00)	Reason: clojure.lang.ExceptionInfo: Unrecognized token '<omitted>': was expecting (JSON String, Number, Array, Object or token 'null', 'true' or 'false')	metabase-test
May 14, 2024 at 14:05 (UTC+12:00)	at [Source: REDACTED (`StreamReadFeature.INCLUDE_SOURCE_IN_LOCATION` disabled); line: 1, column: 43] {:toucan2/context-trace [["resolve connection" {:toucan2.connection/connectable org.postgresql.jdbc.PgConnection}] ["resolve connection" {:toucan2.connection/connectable nil}]]}

@qnkhuat
Copy link
Contributor

qnkhuat commented May 14, 2024

@kbrownlees, your issue might not be related to this. This issue is from a change we made in 49.10.

Could you open a new issue for it?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
.Escalation Operation/Database Migrations Issues with application DB migrations when launching Metabase Priority:P1 Security holes w/o exploit, crashing, setup/upgrade, login, broken common features, correctness .Regression Bugs that were previously fixed and/or bugs unintentionally shipped with new features. .Team/BackendComponents also known as BEC Type:Bug Product defects
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants