|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.atlassian.confluence.upgrade.AbstractUpgradeTask com.atlassian.confluence.upgrade.upgradetask.HiLoIdRepairUpgradeTask
public class HiLoIdRepairUpgradeTask
POSITION is a key word as far as HSQLDB 1.8 is concerned. Hence we need to rename it. however not many databases support a SQL rename command, so our first attempt involved trying to drop the column and add a new one it turns out that we cannot remove the POSITION column because it is part of composite primary key (and with values in the table, dropping the column will cause duplicate entries in the remaining PK column) further, hibernate's schemaUpdate autocreates the ANCESTORPOSITION column as part of the upgrade but fails to create it as a primary key -- not sure know why. instead of fighting with database dialects and integrity errors, we concluded its best and easier to just rename the table and allow schemaUpdate to create a new one this upgrade task handles the removal of the old table and the triggers off a populating of the new.
Constructor Summary | |
---|---|
HiLoIdRepairUpgradeTask(com.atlassian.event.EventManager eventManager)
|
Method Summary | |
---|---|
void |
doNonDatabaseUpgrade()
Perform any non-database related parts of the upgrade task. |
void |
doUpgrade()
Perform the upgrade. |
String |
getBuildNumber()
|
String |
getShortDescription()
A short (<50 chars) description of the upgrade action |
void |
nonDatabaseValidate()
Validate any non-database related parts of the upgrade task. |
void |
validate()
Validates that this upgrade task can be performed. |
Methods inherited from class com.atlassian.confluence.upgrade.AbstractUpgradeTask |
---|
addError, addError, getErrors, setBuildNumber |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface com.atlassian.confluence.upgrade.UpgradeTask |
---|
getErrors |
Constructor Detail |
---|
public HiLoIdRepairUpgradeTask(com.atlassian.event.EventManager eventManager)
Method Detail |
---|
public String getBuildNumber()
getBuildNumber
in interface UpgradeTask
getBuildNumber
in class AbstractUpgradeTask
public String getShortDescription()
UpgradeTask
getShortDescription
in interface UpgradeTask
getShortDescription
in class AbstractUpgradeTask
public void validate()
UpgradeTask
validate
in interface UpgradeTask
public void doUpgrade() throws Exception
UpgradeTask
doUpgrade
in interface UpgradeTask
Exception
public void nonDatabaseValidate()
DatabaseUpgradeTask
nonDatabaseValidate
in interface DatabaseUpgradeTask
public void doNonDatabaseUpgrade()
DatabaseUpgradeTask
UpgradeTask.doUpgrade()
. This allows the upgrade task to perform any local non-db cleanup
that might be involved in the upgrade.
doNonDatabaseUpgrade
in interface DatabaseUpgradeTask
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |