Addition of files through rhncfg-manager throws a "500 Internal Server Error". =========== # rhncfg-manager add -c configchannel /path/to/file Using server name server.example.tld Red Hat Network username: user Password: Pushing to channel configchannel: XML-RPC call error: <ProtocolError for server.example.tld /CONFIG-MANAGEMENT-TOOL: 500 Internal Server Error> =========== Adding a file manually with "Configuration -> Add Files -> Create File" does not work either. Importing through the web interface fails as well. =========== # rhn_check XML-RPC call error: <ProtocolError for server.example.tld /CONFIG-MANAGEMENT: 500 Internal Server Error> Traceback (most recent call last): File "/usr/share/rhn/config_client/rpc_cli_repository.py", line 122, in put_files self.system_id, action_id, params) File "/usr/share/rhn/config_client/rpc_cli_repository.py", line 51, in rpc_call (self, method_name) + params) File "/usr/share/rhn/config_common/repository.py", line 375, in rpc_call sys.exit(1) SystemExit: 1 =========== RHN TRACEBACK: Exception Handler Information Traceback (most recent call last): File "/usr/lib/python2.6/site-packages/spacewalk/server/apacheRequest.py", line 123, in call_function response = apply(func, params) File "/usr/share/rhn/server/handlers/config/rhn_config_management.py", line 273, in client_upload_file return self.push_file(config_channel_id, file) File "/usr/lib/python2.6/site-packages/spacewalk/server/configFilesHandler.py", line 233, in push_file result = self._push_file(config_channel_id, file) File "/usr/lib/python2.6/site-packages/spacewalk/server/configFilesHandler.py", line 217, in _push_file self._push_config_file(file) File "/usr/lib/python2.6/site-packages/spacewalk/server/configFilesHandler.py", line 385, in _push_config_file file['config_file_id'] = insert_call(file['config_channel_id'], file['path']) File "/usr/lib/python2.6/site-packages/spacewalk/server/rhnSQL/driver_cx_Oracle.py", line 292, in __call__ retval = self._call_proc(args) File "/usr/lib/python2.6/site-packages/spacewalk/server/rhnSQL/driver_cx_Oracle.py", line 351, in _call_proc return self._call_proc_ret(args, self.ret_type) File "/usr/lib/python2.6/site-packages/spacewalk/server/rhnSQL/driver_cx_Oracle.py", line 339, in _call_proc_ret return self.cursor.callfunc(self.name, ret_type, args) SQLError: (1, 'ORA-00001: unique constraint (SPACEWALKDBUSER.RHN_CONFFILE_ID_PK) violated\nORA-06512: at "SPACEWALKDBUSER.RHN_CONFIG", line 156\nORA-06512: at line 1\n')
On my freshly installed test spacewalk server it works. According to unique constraint violated error it's an issue with data you have in the table. What are values of file['config_file_id'] file['config_channel_id'] in usr/lib/python2.6/site-packages/spacewalk/server/configFilesHandler.py:385? Is there already a row with the same id as config_file_id in rhnConfigFile table? What's the path of the file in database?
This turned out to be a problem with the RHNCONFIGFILESTATE table. It had somehow been populated twice. It looked like this: ID LABEL NAME CREATED MODIFIED 21 dead Will not be deployed 05-OCT-11 19-OCT-11 22 alive Will be deployed 05-OCT-11 19-OCT-11 1 dead Will not be deployed 05-OCT-11 19-OCT-11 2 alive Will be deployed 05-OCT-11 19-OCT-11 LABEL was expected to be unique. I removed row 21,22 and it started working. Maybe a bug in an upgrade step somewhere?
I am also having this issue. However, removing these rows did not help. Here is what my logs say... FROM API trying to upload a file: ORA-00001: unique constraint (SPACEWALK.RHN_CONFFILE_ID_PK) violated FROM tomcat trying to update a file: 2011-11-04 13:11:03,456 [TP-Processor8] WARN org.apache.struts.action.RequestProcessor - Unhandled Exception thrown: class com.redhat.rhn.common.db.ConstraintViolationException 2011-11-04 13:11:03,457 [TP-Processor8] ERROR com.redhat.rhn.frontend.servlets.SessionFilter - Error during transaction. Rolling back javax.servlet.ServletException: ORA-00001: unique constraint (SPACEWALK.RHNCHECKSUM_PK) violated ORA-06512: at "SPACEWALK.LOOKUP_CHECKSUM", line 21 ORA-01403: no data found ORA-06512: at line 1 at org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:535) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:433) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:237) at com.redhat.rhn.frontend.struts.RhnRequestProcessor.process(RhnRequestProcessor.java:99) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432) at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.redhat.rhn.frontend.servlets.AuthFilter.doFilter(AuthFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:142) at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:58) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.redhat.rhn.frontend.servlets.LocalizedEnvironmentFilter.doFilter(LocalizedEnvironmentFilter.java:67) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.redhat.rhn.frontend.servlets.EnvironmentFilter.doFilter(EnvironmentFilter.java:108) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.redhat.rhn.frontend.servlets.SessionFilter.doFilter(SessionFilter.java:55) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.redhat.rhn.frontend.servlets.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:97) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151) at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200) at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291) at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:775) at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:704) at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:897) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685) at java.lang.Thread.run(Thread.java:662) Caused by: com.redhat.rhn.common.db.ConstraintViolationException: ORA-00001: unique constraint (SPACEWALK.RHNCHECKSUM_PK) violated ORA-06512: at "SPACEWALK.LOOKUP_CHECKSUM", line 21 ORA-01403: no data found ORA-06512: at line 1 at com.redhat.rhn.common.translation.SqlExceptionTranslator.oracleSQLException(SqlExceptionTranslator.java:77) at com.redhat.rhn.common.translation.SqlExceptionTranslator.sqlException(SqlExceptionTranslator.java:42) at com.redhat.rhn.common.db.NamedPreparedStatement.execute(NamedPreparedStatement.java:118) at com.redhat.rhn.common.db.datasource.CachedStatement.executeCallable(CachedStatement.java:511) at com.redhat.rhn.common.db.datasource.CallableMode.execute(CallableMode.java:34) at com.redhat.rhn.domain.common.ChecksumFactory.safeCreate(ChecksumFactory.java:132) at com.redhat.rhn.domain.config.ConfigurationFactory.createNewContentFromStream(ConfigurationFactory.java:804) at com.redhat.rhn.domain.config.ConfigurationFactory.createNewRevisionFromStream(ConfigurationFactory.java:748) at com.redhat.rhn.manager.configuration.ConfigurationManager.createNewRevision(ConfigurationManager.java:1339) at com.redhat.rhn.manager.configuration.ConfigFileBuilder.makeNewRevision(ConfigFileBuilder.java:155) at com.redhat.rhn.manager.configuration.ConfigFileBuilder.update(ConfigFileBuilder.java:235) at com.redhat.rhn.frontend.action.configuration.files.FileDetailsAction.execute(FileDetailsAction.java:81) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431) ... 40 more Caused by: java.sql.SQLIntegrityConstraintViolationException: ORA-00001: unique constraint (SPACEWALK.RHNCHECKSUM_PK) violated ORA-06512: at "SPACEWALK.LOOKUP_CHECKSUM", line 21 ORA-01403: no data found ORA-06512: at line 1 at oracle.jdbc.driver.T2CConnection.checkError(T2CConnection.java:759) at oracle.jdbc.driver.T2CConnection.checkError(T2CConnection.java:661) at oracle.jdbc.driver.T2CCallableStatement.executeForDescribe(T2CCallableStatement.java:544) at oracle.jdbc.driver.T2CCallableStatement.executeForRows(T2CCallableStatement.java:727) at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1315) at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3576) at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3677) at oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java:4714) at oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWrapper.java:1374) at com.mchange.v2.c3p0.impl.NewProxyCallableStatement.execute(NewProxyCallableStatement.java:2706) at com.redhat.rhn.common.db.NamedPreparedStatement.execute(NamedPreparedStatement.java:115) ... 50 more 2011-11-04 13:11:03,469 [TP-Processor8] ERROR org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/rhn].[action] - Servlet.service() for servlet action threw exception java.sql.SQLIntegrityConstraintViolationException: ORA-00001: unique constraint (SPACEWALK.RHNCHECKSUM_PK) violated ORA-06512: at "SPACEWALK.LOOKUP_CHECKSUM", line 21 ORA-01403: no data found ORA-06512: at line 1 at oracle.jdbc.driver.T2CConnection.checkError(T2CConnection.java:759) at oracle.jdbc.driver.T2CConnection.checkError(T2CConnection.java:661) at oracle.jdbc.driver.T2CCallableStatement.executeForDescribe(T2CCallableStatement.java:544) at oracle.jdbc.driver.T2CCallableStatement.executeForRows(T2CCallableStatement.java:727) at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1315) at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3576) at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3677) at oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java:4714) at oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWrapper.java:1374) at com.mchange.v2.c3p0.impl.NewProxyCallableStatement.execute(NewProxyCallableStatement.java:2706) at com.redhat.rhn.common.db.NamedPreparedStatement.execute(NamedPreparedStatement.java:115) at com.redhat.rhn.common.db.datasource.CachedStatement.executeCallable(CachedStatement.java:511) at com.redhat.rhn.common.db.datasource.CallableMode.execute(CallableMode.java:34) at com.redhat.rhn.domain.common.ChecksumFactory.safeCreate(ChecksumFactory.java:132) at com.redhat.rhn.domain.config.ConfigurationFactory.createNewContentFromStream(ConfigurationFactory.java:804) at com.redhat.rhn.domain.config.ConfigurationFactory.createNewRevisionFromStream(ConfigurationFactory.java:748) at com.redhat.rhn.manager.configuration.ConfigurationManager.createNewRevision(ConfigurationManager.java:1339) at com.redhat.rhn.manager.configuration.ConfigFileBuilder.makeNewRevision(ConfigFileBuilder.java:155) at com.redhat.rhn.manager.configuration.ConfigFileBuilder.update(ConfigFileBuilder.java:235) at com.redhat.rhn.frontend.action.configuration.files.FileDetailsAction.execute(FileDetailsAction.java:81) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:237) at com.redhat.rhn.frontend.struts.RhnRequestProcessor.process(RhnRequestProcessor.java:99) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432) at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.redhat.rhn.frontend.servlets.AuthFilter.doFilter(AuthFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:142) at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:58) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.redhat.rhn.frontend.servlets.LocalizedEnvironmentFilter.doFilter(LocalizedEnvironmentFilter.java:67) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.redhat.rhn.frontend.servlets.EnvironmentFilter.doFilter(EnvironmentFilter.java:108) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.redhat.rhn.frontend.servlets.SessionFilter.doFilter(SessionFilter.java:55) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.redhat.rhn.frontend.servlets.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:97) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151) at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200) at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291) at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:775) at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:704) at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:897) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685) at java.lang.Thread.run(Thread.java:662)
Forgot to mention I did a stepped upgrade from v0.8 -> 1.0 -> 1.1 -> 1.2 -> 1.3 -> 1.4 -> 1.5 Thanks!
> ORA-06512: at "SPACEWALK.LOOKUP_CHECKSUM", line 21 > ORA-01403: no data found > ORA-06512: at line 1 Line 21 on lookup_checksum says: (select id from rhnChecksumType where label = checksum_type_in) Could you show me result of # sqlplus $(spacewalk-cfg-get default_db) SQL> select * from rhnChecksumType; ?
SQL> select * from rhnChecksumType; ID LABEL ---------- -------------------------------- DESCRIPTION CREATED ---------------------------------------------------------------- --------- MODIFIED --------- 1 md5 MD5sum 18-MAR-10 18-MAR-10 2 sha1 SHA1sum 18-MAR-10 18-MAR-10 ID LABEL ---------- -------------------------------- DESCRIPTION CREATED ---------------------------------------------------------------- --------- MODIFIED --------- 3 sha256 SHA256sum 18-MAR-10 18-MAR-10 4 sha384 SHA384sum 18-MAR-10 ID LABEL ---------- -------------------------------- DESCRIPTION CREATED ---------------------------------------------------------------- --------- MODIFIED --------- 18-MAR-10 5 sha512 SHA512sum 18-MAR-10 18-MAR-10
Content of rhnChecksumType looks good. Could you turn on debugging and find out what are the values which cause the error?
Michael, Our issue may have been with the process we used to upgrade. We first moved the 0.8 DB from 10g to 11g, then performed the stepped upgrade all the way to v1.5 . Turns out doing the stepped upgrade on 10g first, then moving to 11g resolved this issue. Thanks for your help with this. -Josh
According to comment #2 and comment #8 I'm going to close this issue as NOTABUG. Thanks.