com.atlassian.confluence.upgrade.upgradetask
Class RenamePositionColumnUpgradeTask
java.lang.Object
com.atlassian.confluence.upgrade.AbstractUpgradeTask
com.atlassian.confluence.upgrade.upgradetask.RenamePositionColumnUpgradeTask
- All Implemented Interfaces:
- UpgradeTask
public class RenamePositionColumnUpgradeTask
- extends AbstractUpgradeTask
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.
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
RenamePositionColumnUpgradeTask
public RenamePositionColumnUpgradeTask(PageAncestorManager pageAncestorManager)
getBuildNumber
public String getBuildNumber()
- Specified by:
getBuildNumber
in interface UpgradeTask
- Overrides:
getBuildNumber
in class AbstractUpgradeTask
- Returns:
- The build number that this upgrade is applicable to
getShortDescription
public String getShortDescription()
- Description copied from interface:
UpgradeTask
- A short (<50 chars) description of the upgrade action
- Specified by:
getShortDescription
in interface UpgradeTask
- Overrides:
getShortDescription
in class AbstractUpgradeTask
doUpgrade
public void doUpgrade()
throws Exception
- Description copied from interface:
UpgradeTask
- Perform the upgrade.
- Throws:
Exception
Copyright © 2003-2012 Atlassian. All Rights Reserved.