You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ambari.apache.org by "Vitaly Brodetskyi (JIRA)" <ji...@apache.org> on 2018/01/04 17:01:02 UTC
[jira] [Updated] (AMBARI-22724) Idempotent issue on Ambari Upgrade,
renameServiceDeletedColumn failed with column already exists exception
[ https://issues.apache.org/jira/browse/AMBARI-22724?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Vitaly Brodetskyi updated AMBARI-22724:
---------------------------------------
Attachment: AMBARI-22724.patch
> Idempotent issue on Ambari Upgrade, renameServiceDeletedColumn failed with column already exists exception
> ----------------------------------------------------------------------------------------------------------
>
> Key: AMBARI-22724
> URL: https://issues.apache.org/jira/browse/AMBARI-22724
> Project: Ambari
> Issue Type: Bug
> Components: ambari-server
> Affects Versions: 2.6.2
> Reporter: Vitaly Brodetskyi
> Assignee: Vitaly Brodetskyi
> Priority: Blocker
> Fix For: 2.6.2
>
> Attachments: AMBARI-22724.patch
>
>
> Issue discovered alongside with another bugs which leads upgrade to fail in the middle with partially applying changes to DB. It leads to exception in code:
> {code}
> private void renameServiceDeletedColumn() throws AmbariException, SQLException {
> if (dbAccessor.tableHasColumn(CLUSTER_CONFIG_TABLE, SERVICE_DELETED_COLUMN)) {
> dbAccessor.renameColumn(CLUSTER_CONFIG_TABLE, SERVICE_DELETED_COLUMN, new DBAccessor.DBColumnInfo(UNMAPPED_COLUMN, Short.class, null, 0, false));
> }
> }
> {code}
> Exception: ERROR: column "unmapped" of relation "clusterconfig" already exists (err.png)
> Table generated DDL from current state:
> {code}
> -- auto-generated definition
> CREATE TABLE clusterconfig
> (
> config_id INT8(19) NOT NULL
> CONSTRAINT pk_clusterconfig
> PRIMARY KEY,
> version_tag VARCHAR(255) NOT NULL,
> version INT8(19) NOT NULL,
> type_name VARCHAR(255) NOT NULL,
> cluster_id INT8(19) NOT NULL
> CONSTRAINT fk_clusterconfig_cluster_id
> REFERENCES clusters,
> stack_id INT8(19) NOT NULL
> CONSTRAINT fk_clusterconfig_stack_id
> REFERENCES stack,
> config_data TEXT(max) NOT NULL,
> config_attributes TEXT(max),
> create_timestamp INT8(19) NOT NULL,
> unmapped INT2(5) DEFAULT 0 NOT NULL,
> selected INT2(5) DEFAULT 0 NOT NULL,
> selected_timestamp INT8(19) DEFAULT 0 NOT NULL,
> service_deleted INT2(5) DEFAULT 0 NOT NULL
> );
> CREATE UNIQUE INDEX uq_config_type_tag
> ON clusterconfig (cluster_id, type_name, version_tag);
> CREATE UNIQUE INDEX uq_config_type_version
> ON clusterconfig (cluster_id, type_name, version);
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)