mySQL Database Migration fails due to "null" character in Stash table

Troubleshooting Databases

このページの内容

お困りですか?

アトラシアン コミュニティをご利用ください。

コミュニティに質問

症状

The following appears in Stash 2.7.1 Migration Setup UI:

 

Stash could not be migrated to the new database. Some data may have already been written to the new database leaving it in an inconsistent state. You will need to empty or recreate the new database before trying again.
	com.atlassian.stash.internal.maintenance.migration.DatabaseMigrationTask.run(DatabaseMigrationTask.java:44)
	com.atlassian.stash.internal.maintenance.DefaultMaintenanceTaskMonitor.run(DefaultMaintenanceTaskMonitor.java:172)
	java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
	...
Failed to execute change: Insert Row; nested exception is org.postgresql.util.PSQLException: ERROR: null value in column "from_branch_name" violates not-null constraint
  Detail: Failing row contains (1, 0, 1, 0, 2014-12-29 22:36:48.817+08, 2014-12-29 22:36:48.817+08, 1, 1, refs/heads/null, refs/heads/master, null, master, 8e33651530fffc4fa06bd912396b7e118af02df3, d88a6550790e4aff0538508675565be6ec9e97e0, null, 2).
	com.atlassian.stash.internal.backup.liquibase.DefaultLiquibaseDao.insert(DefaultLiquibaseDao.java:281)
	com.atlassian.stash.internal.backup.liquibase.DatabaseUpdater.endElement(DatabaseUpdater.java:81)
	org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
	...
ERROR: null value in column "from_branch_name" violates not-null constraint
  Detail: Failing row contains (1, 0, 1, 0, 2014-12-29 22:36:48.817+08, 2014-12-29 22:36:48.817+08, 1, 1, refs/heads/null, refs/heads/master, null, master, 8e33651530fffc4fa06bd912396b7e118af02df3, d88a6550790e4aff0538508675565be6ec9e97e0, null, 2).
	org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2102)
	org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1835)
	org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:257)
	...

 

診断

Migrating to a clean mySQL database on Stash 2.7.1 with the presence of the character "null" in sta_pull_request table will result in a failure of the migration that will return the error on the screenshot above. 

(tick) This only have been tested on Stash 2.7.1

(warning) Direct update to the database may cause database corruption
 

ソリューション

  • Update to at least Stash 2.7.6, then only perform the migration.

最終更新日 2016 年 3 月 30 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.