Re: Review Request 46449: ambari upgrade fail (upgrade of ambari packages ... not hdp (eu/standard) upgrade)

2016-04-20 Thread Jonathan Hurley

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/46449/#review129759
---


Fix it, then Ship it!





ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog240.java
 (line 1160)


This seems like it needs to be done within a transaction.



ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog240.java
 (lines 1174 - 1184)


This better return 1 hit (and 1 hit only). If it doesn't I think that we 
need to raise an error here since that means that the database is in a bad 
state.


- Jonathan Hurley


On April 20, 2016, 1:20 p.m., Dmitro Lisnichenko wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/46449/
> ---
> 
> (Updated April 20, 2016, 1:20 p.m.)
> 
> 
> Review request for Ambari, Jonathan Hurley and Vitalyi Brodetskyi.
> 
> 
> Bugs: AMBARI-15995
> https://issues.apache.org/jira/browse/AMBARI-15995
> 
> 
> Repository: ambari
> 
> 
> Description
> ---
> 
> Ambari packages upgrade to 2.4.0.0.160. It fails at stage of upgrading ambari 
> database.
> 
> Step of failure
> ambari-server upgrade.
> 
> 1. It complains about following
> [root@host]# ambari-server upgrade
> Using python  /usr/bin/python
> Upgrading ambari-server
> Updating properties in ambari.properties ...
> WARNING: Can not find ambari.properties.rpmsave file from previous version, 
> skipping import of settings
> WARNING: Can not find ambari-env.sh.rpmsave file from previous version, 
> skipping restore of environment settings
> Fixing database objects owner
> Ambari Server configured for Embedded Postgres. Confirm you have made a 
> backup of the Ambari Server database [y/n] (y)? y
> Upgrading database schema
> WARNING: Multiple versions of javax.servlet.jsp.jstl.jar found in java class 
> path (/usr/lib/ambari-server/javax.servlet.jsp.jstl-1.2.2.jar and 
> /usr/lib/ambari-server/javax.servlet.jsp.jstl-1.2.0.v201105211821.jar).
> Make sure that you include only one javax.servlet.jsp.jstl.jar in the java 
> class path 
> '/etc/ambari-server/conf:/usr/lib/ambari-server/*:/usr/share/java/postgresql-jdbc.jar'.
> 
> So I rename 
> /usr/lib/ambari-server/javax.servlet.jsp.jstl-1.2.0.v201105211821.jar to 
> something else and kept only 
> /usr/lib/ambari-server/javax.servlet.jsp.jstl-1.2.2.jar
> 
> 2. After above changes ambari-server upgrade does finishes but throws 
> following error when trying to start ambari-server.
> 
> 06 Apr 2016 15:29:17,518 ERROR [main] AmbariServer:930 - Failed to run the 
> Ambari Server
> javax.persistence.PersistenceException: Exception [EclipseLink-116] (Eclipse 
> Persistence Services - 2.6.2.v20151217-774c696): 
> org.eclipse.persistence.exceptions.DescriptorException
> Exception Description: No conversion value provided for the value [UPGRADED] 
> in field [host_version.state].
> Mapping: 
> org.eclipse.persistence.mappings.DirectToFieldMapping[state-->host_version.state]
> Descriptor: 
> RelationalDescriptor(org.apache.ambari.server.orm.entities.HostVersionEntity 
> --> [DatabaseTable(host_version)])
> at 
> org.eclipse.persistence.internal.jpa.QueryImpl.getResultList(QueryImpl.java:484)
> at org.apache.ambari.server.orm.dao.DaoUtils.selectList(DaoUtils.java:62)
> at org.apache.ambari.server.orm.dao.CrudDAO.findAll(CrudDAO.java:72)
> at 
> org.apache.ambari.server.orm.AmbariLocalSessionInterceptor.invoke(AmbariLocalSessionInterceptor.java:43)
> at 
> org.apache.ambari.server.StateRecoveryManager.checkHostAndClusterVersions(StateRecoveryManager.java:53)
> at 
> org.apache.ambari.server.StateRecoveryManager.doWork(StateRecoveryManager.java:48)
> at org.apache.ambari.server.controller.AmbariServer.run(AmbariServer.java:595)
> at 
> org.apache.ambari.server.controller.AmbariServer.main(AmbariServer.java:928)
> Caused by: Exception [EclipseLink-116] (Eclipse Persistence Services - 
> 2.6.2.v20151217-774c696): 
> org.eclipse.persistence.exceptions.DescriptorException
> Exception Description: No conversion value provided for the value [UPGRADED] 
> in field [host_version.state].
> Mapping: 
> org.eclipse.persistence.mappings.DirectToFieldMapping[state-->host_version.state]
> Descriptor: 
> RelationalDescriptor(org.apache.ambari.server.orm.entities.HostVersionEntity 
> --> [DatabaseTable(host_version)])
> at 
> org.eclipse.persistence.exceptions.DescriptorException.noFieldValueConversionToAttributeValueProvided(DescriptorException.java:1066)
> at 
> org.eclipse.persistence.mappings.converters.ObjectTypeConverter.convertDataValueToObjectValue(ObjectTypeConverter.java:226)
> at 
> 

Re: Review Request 46449: ambari upgrade fail (upgrade of ambari packages ... not hdp (eu/standard) upgrade)

2016-04-20 Thread Dmitro Lisnichenko

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/46449/
---

(Updated April 20, 2016, 8:20 p.m.)


Review request for Ambari, Jonathan Hurley and Vitalyi Brodetskyi.


Bugs: AMBARI-15995
https://issues.apache.org/jira/browse/AMBARI-15995


Repository: ambari


Description
---

Ambari packages upgrade to 2.4.0.0.160. It fails at stage of upgrading ambari 
database.

Step of failure
ambari-server upgrade.

1. It complains about following
[root@host]# ambari-server upgrade
Using python  /usr/bin/python
Upgrading ambari-server
Updating properties in ambari.properties ...
WARNING: Can not find ambari.properties.rpmsave file from previous version, 
skipping import of settings
WARNING: Can not find ambari-env.sh.rpmsave file from previous version, 
skipping restore of environment settings
Fixing database objects owner
Ambari Server configured for Embedded Postgres. Confirm you have made a backup 
of the Ambari Server database [y/n] (y)? y
Upgrading database schema
WARNING: Multiple versions of javax.servlet.jsp.jstl.jar found in java class 
path (/usr/lib/ambari-server/javax.servlet.jsp.jstl-1.2.2.jar and 
/usr/lib/ambari-server/javax.servlet.jsp.jstl-1.2.0.v201105211821.jar).
Make sure that you include only one javax.servlet.jsp.jstl.jar in the java 
class path 
'/etc/ambari-server/conf:/usr/lib/ambari-server/*:/usr/share/java/postgresql-jdbc.jar'.

So I rename 
/usr/lib/ambari-server/javax.servlet.jsp.jstl-1.2.0.v201105211821.jar to 
something else and kept only 
/usr/lib/ambari-server/javax.servlet.jsp.jstl-1.2.2.jar

2. After above changes ambari-server upgrade does finishes but throws following 
error when trying to start ambari-server.

06 Apr 2016 15:29:17,518 ERROR [main] AmbariServer:930 - Failed to run the 
Ambari Server
javax.persistence.PersistenceException: Exception [EclipseLink-116] (Eclipse 
Persistence Services - 2.6.2.v20151217-774c696): 
org.eclipse.persistence.exceptions.DescriptorException
Exception Description: No conversion value provided for the value [UPGRADED] in 
field [host_version.state].
Mapping: 
org.eclipse.persistence.mappings.DirectToFieldMapping[state-->host_version.state]
Descriptor: 
RelationalDescriptor(org.apache.ambari.server.orm.entities.HostVersionEntity 
--> [DatabaseTable(host_version)])
at 
org.eclipse.persistence.internal.jpa.QueryImpl.getResultList(QueryImpl.java:484)
at org.apache.ambari.server.orm.dao.DaoUtils.selectList(DaoUtils.java:62)
at org.apache.ambari.server.orm.dao.CrudDAO.findAll(CrudDAO.java:72)
at 
org.apache.ambari.server.orm.AmbariLocalSessionInterceptor.invoke(AmbariLocalSessionInterceptor.java:43)
at 
org.apache.ambari.server.StateRecoveryManager.checkHostAndClusterVersions(StateRecoveryManager.java:53)
at 
org.apache.ambari.server.StateRecoveryManager.doWork(StateRecoveryManager.java:48)
at org.apache.ambari.server.controller.AmbariServer.run(AmbariServer.java:595)
at org.apache.ambari.server.controller.AmbariServer.main(AmbariServer.java:928)
Caused by: Exception [EclipseLink-116] (Eclipse Persistence Services - 
2.6.2.v20151217-774c696): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: No conversion value provided for the value [UPGRADED] in 
field [host_version.state].
Mapping: 
org.eclipse.persistence.mappings.DirectToFieldMapping[state-->host_version.state]
Descriptor: 
RelationalDescriptor(org.apache.ambari.server.orm.entities.HostVersionEntity 
--> [DatabaseTable(host_version)])
at 
org.eclipse.persistence.exceptions.DescriptorException.noFieldValueConversionToAttributeValueProvided(DescriptorException.java:1066)
at 
org.eclipse.persistence.mappings.converters.ObjectTypeConverter.convertDataValueToObjectValue(ObjectTypeConverter.java:226)
at 
org.eclipse.persistence.mappings.converters.EnumTypeConverter.convertDataValueToObjectValue(EnumTypeConverter.java:141)
at 
org.eclipse.persistence.mappings.foundation.AbstractDirectMapping.getObjectValue(AbstractDirectMapping.java:616)
at 
org.eclipse.persistence.mappings.foundation.AbstractDirectMapping.valueFromRow(AbstractDirectMapping.java:1220)
at 
org.eclipse.persistence.mappings.DatabaseMapping.readFromRowIntoObject(DatabaseMapping.java:1539)
at 
org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildAttributesIntoObject(ObjectBuilder.java:462)
at 
org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:1005)
at 
org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildWorkingCopyCloneNormally(ObjectBuilder.java:899)
at 
org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildObjectInUnitOfWork(ObjectBuilder.java:852)
at 
org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:735)
at 
org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:689)
at 

Review Request 46449: ambari upgrade fail (upgrade of ambari packages ... not hdp (eu/standard) upgrade)

2016-04-20 Thread Dmitro Lisnichenko

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/46449/
---

Review request for Ambari, Jonathan Hurley and Vitalyi Brodetskyi.


Bugs: AMBARI-15995
https://issues.apache.org/jira/browse/AMBARI-15995


Repository: ambari


Description
---

Ambari packages upgrade to 2.4.0.0.160. It fails at stage of upgrading ambari 
database.

Step of failure
ambari-server upgrade.

1. It complains about following
[root@host]# ambari-server upgrade
Using python  /usr/bin/python
Upgrading ambari-server
Updating properties in ambari.properties ...
WARNING: Can not find ambari.properties.rpmsave file from previous version, 
skipping import of settings
WARNING: Can not find ambari-env.sh.rpmsave file from previous version, 
skipping restore of environment settings
Fixing database objects owner
Ambari Server configured for Embedded Postgres. Confirm you have made a backup 
of the Ambari Server database [y/n] (y)? y
Upgrading database schema
WARNING: Multiple versions of javax.servlet.jsp.jstl.jar found in java class 
path (/usr/lib/ambari-server/javax.servlet.jsp.jstl-1.2.2.jar and 
/usr/lib/ambari-server/javax.servlet.jsp.jstl-1.2.0.v201105211821.jar).
Make sure that you include only one javax.servlet.jsp.jstl.jar in the java 
class path 
'/etc/ambari-server/conf:/usr/lib/ambari-server/*:/usr/share/java/postgresql-jdbc.jar'.

So I rename 
/usr/lib/ambari-server/javax.servlet.jsp.jstl-1.2.0.v201105211821.jar to 
something else and kept only 
/usr/lib/ambari-server/javax.servlet.jsp.jstl-1.2.2.jar

2. After above changes ambari-server upgrade does finishes but throws following 
error when trying to start ambari-server.

06 Apr 2016 15:29:17,518 ERROR [main] AmbariServer:930 - Failed to run the 
Ambari Server
javax.persistence.PersistenceException: Exception [EclipseLink-116] (Eclipse 
Persistence Services - 2.6.2.v20151217-774c696): 
org.eclipse.persistence.exceptions.DescriptorException
Exception Description: No conversion value provided for the value [UPGRADED] in 
field [host_version.state].
Mapping: 
org.eclipse.persistence.mappings.DirectToFieldMapping[state-->host_version.state]
Descriptor: 
RelationalDescriptor(org.apache.ambari.server.orm.entities.HostVersionEntity 
--> [DatabaseTable(host_version)])
at 
org.eclipse.persistence.internal.jpa.QueryImpl.getResultList(QueryImpl.java:484)
at org.apache.ambari.server.orm.dao.DaoUtils.selectList(DaoUtils.java:62)
at org.apache.ambari.server.orm.dao.CrudDAO.findAll(CrudDAO.java:72)
at 
org.apache.ambari.server.orm.AmbariLocalSessionInterceptor.invoke(AmbariLocalSessionInterceptor.java:43)
at 
org.apache.ambari.server.StateRecoveryManager.checkHostAndClusterVersions(StateRecoveryManager.java:53)
at 
org.apache.ambari.server.StateRecoveryManager.doWork(StateRecoveryManager.java:48)
at org.apache.ambari.server.controller.AmbariServer.run(AmbariServer.java:595)
at org.apache.ambari.server.controller.AmbariServer.main(AmbariServer.java:928)
Caused by: Exception [EclipseLink-116] (Eclipse Persistence Services - 
2.6.2.v20151217-774c696): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: No conversion value provided for the value [UPGRADED] in 
field [host_version.state].
Mapping: 
org.eclipse.persistence.mappings.DirectToFieldMapping[state-->host_version.state]
Descriptor: 
RelationalDescriptor(org.apache.ambari.server.orm.entities.HostVersionEntity 
--> [DatabaseTable(host_version)])
at 
org.eclipse.persistence.exceptions.DescriptorException.noFieldValueConversionToAttributeValueProvided(DescriptorException.java:1066)
at 
org.eclipse.persistence.mappings.converters.ObjectTypeConverter.convertDataValueToObjectValue(ObjectTypeConverter.java:226)
at 
org.eclipse.persistence.mappings.converters.EnumTypeConverter.convertDataValueToObjectValue(EnumTypeConverter.java:141)
at 
org.eclipse.persistence.mappings.foundation.AbstractDirectMapping.getObjectValue(AbstractDirectMapping.java:616)
at 
org.eclipse.persistence.mappings.foundation.AbstractDirectMapping.valueFromRow(AbstractDirectMapping.java:1220)
at 
org.eclipse.persistence.mappings.DatabaseMapping.readFromRowIntoObject(DatabaseMapping.java:1539)
at 
org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildAttributesIntoObject(ObjectBuilder.java:462)
at 
org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:1005)
at 
org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildWorkingCopyCloneNormally(ObjectBuilder.java:899)
at 
org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildObjectInUnitOfWork(ObjectBuilder.java:852)
at 
org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:735)
at 
org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:689)
at