You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@ambari.apache.org by Vitalyi Brodetskyi <vb...@hortonworks.com> on 2018/01/04 17:00:12 UTC
Review Request 64951: Idempotent issue on Ambari Upgrade,
renameServiceDeletedColumn failed with column already exists exception
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/64951/
-----------------------------------------------------------
Review request for Ambari, Andrew Onischuk, Dmytro Grinenko, and Dmytro Sen.
Bugs: AMBARI-22724
https://issues.apache.org/jira/browse/AMBARI-22724
Repository: ambari
Description
-------
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}
Diffs
-----
ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog252.java e6a7829
Diff: https://reviews.apache.org/r/64951/diff/1/
Testing
-------
mvn clean test
Thanks,
Vitalyi Brodetskyi
Re: Review Request 64951: Idempotent issue on Ambari Upgrade,
renameServiceDeletedColumn failed with column already exists exception
Posted by Dmytro Grinenko <ha...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/64951/#review194838
-----------------------------------------------------------
ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog252.java
Lines 21 (patched)
<https://reviews.apache.org/r/64951/#comment273904>
please check https://cwiki.apache.org/confluence/display/AMBARI/Coding+Guidelines+for+Ambarim Java Import Order
- Dmytro Grinenko
On Jan. 4, 2018, 5 p.m., Vitalyi Brodetskyi wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/64951/
> -----------------------------------------------------------
>
> (Updated Jan. 4, 2018, 5 p.m.)
>
>
> Review request for Ambari, Andrew Onischuk, Dmytro Grinenko, and Dmytro Sen.
>
>
> Bugs: AMBARI-22724
> https://issues.apache.org/jira/browse/AMBARI-22724
>
>
> Repository: ambari
>
>
> Description
> -------
>
> 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}
>
>
> Diffs
> -----
>
> ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog252.java e6a7829
>
>
> Diff: https://reviews.apache.org/r/64951/diff/1/
>
>
> Testing
> -------
>
> mvn clean test
>
>
> Thanks,
>
> Vitalyi Brodetskyi
>
>
Re: Review Request 64951: Idempotent issue on Ambari Upgrade,
renameServiceDeletedColumn failed with column already exists exception
Posted by Dmytro Grinenko <ha...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/64951/#review194857
-----------------------------------------------------------
Ship it!
Ship It!
- Dmytro Grinenko
On Jan. 5, 2018, 1:20 p.m., Vitalyi Brodetskyi wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/64951/
> -----------------------------------------------------------
>
> (Updated Jan. 5, 2018, 1:20 p.m.)
>
>
> Review request for Ambari, Andrew Onischuk, Dmytro Grinenko, and Dmytro Sen.
>
>
> Bugs: AMBARI-22724
> https://issues.apache.org/jira/browse/AMBARI-22724
>
>
> Repository: ambari
>
>
> Description
> -------
>
> 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}
>
>
> Diffs
> -----
>
> ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog252.java e6a7829
>
>
> Diff: https://reviews.apache.org/r/64951/diff/2/
>
>
> Testing
> -------
>
> mvn clean test
>
>
> Thanks,
>
> Vitalyi Brodetskyi
>
>
Re: Review Request 64951: Idempotent issue on Ambari Upgrade,
renameServiceDeletedColumn failed with column already exists exception
Posted by Vitalyi Brodetskyi <vb...@hortonworks.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/64951/
-----------------------------------------------------------
(Updated Січ. 5, 2018, 1:20 після полудня)
Review request for Ambari, Andrew Onischuk, Dmytro Grinenko, and Dmytro Sen.
Bugs: AMBARI-22724
https://issues.apache.org/jira/browse/AMBARI-22724
Repository: ambari
Description
-------
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}
Diffs (updated)
-----
ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog252.java e6a7829
Diff: https://reviews.apache.org/r/64951/diff/2/
Changes: https://reviews.apache.org/r/64951/diff/1-2/
Testing
-------
mvn clean test
Thanks,
Vitalyi Brodetskyi