----------------------------------------------------------- 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 org.eclipse.persistence.queries.ObjectLevelReadQuery.buildObject(ObjectLevelReadQuery.java:805) at org.eclipse.persistence.queries.ReadAllQuery.registerResultInUnitOfWork(ReadAllQuery.java:962) at org.eclipse.persistence.queries.ReadAllQuery.executeObjectLevelReadQuery(ReadAllQuery.java:573) at org.eclipse.persistence.queries.ObjectLevelReadQuery.executeDatabaseQuery(ObjectLevelReadQuery.java:1175) at org.eclipse.persistence.queries.DatabaseQuery.execute(DatabaseQuery.java:904) at org.eclipse.persistence.queries.ObjectLevelReadQuery.execute(ObjectLevelReadQuery.java:1134) at org.eclipse.persistence.queries.ReadAllQuery.execute(ReadAllQuery.java:460) at org.eclipse.persistence.queries.ObjectLevelReadQuery.executeInUnitOfWork(ObjectLevelReadQuery.java:1222) at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.internalExecuteQuery(UnitOfWorkImpl.java:2896) at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1857) at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1839) at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1804) at org.eclipse.persistence.internal.jpa.QueryImpl.executeReadQuery(QueryImpl.java:258) at org.eclipse.persistence.internal.jpa.QueryImpl.getResultList(QueryImpl.java:473) Please find ambari-server.log attached with this JIRA. Let me know and I have the env available to reproduce bug. I am right now in a limbo to upgrade my cluster to 1. Upgrade to Ambari 2.4.0.0-169 2. Later upgrade to hdp2.5.* Diffs (updated) ----- ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog240.java b66ad66 ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog240Test.java cfb57ab Diff: https://reviews.apache.org/r/46449/diff/ Testing ------- mvn clean test Thanks, Dmitro Lisnichenko