[ https://issues.apache.org/jira/browse/FALCON-2221?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Pracheer Agarwal resolved FALCON-2221. -------------------------------------- Resolution: Fixed > Submitting an existing job fails with > MySQLIntegrityConstraintViolationException > -------------------------------------------------------------------------------- > > Key: FALCON-2221 > URL: https://issues.apache.org/jira/browse/FALCON-2221 > Project: Falcon > Issue Type: Bug > Components: extensions > Affects Versions: trunk > Reporter: Pragya Mittal > Assignee: Pracheer Agarwal > Priority: Minor > > Submitting an already existing job should succeed saying 'Job already > submitted' (as is the case with process submission). Instead it throws the > followinf error : > {noformat} > dataqa@falcon1001:~$ falcon extension -submit -jobName sample -file abc > -extensionName extension-example > Dec 15, 2016 7:15:31 AM com.sun.jersey.api.client.ClientResponse getEntity > SEVERE: A message body reader for Java class > org.apache.falcon.resource.APIResult, and Java type class > org.apache.falcon.resource.APIResult, and MIME media type text/html; > charset=iso-8859-1 was not found > Dec 15, 2016 7:15:31 AM com.sun.jersey.api.client.ClientResponse getEntity > SEVERE: The registered message body readers compatible with the MIME media > type are: > */* -> > com.sun.jersey.core.impl.provider.entity.FormProvider > com.sun.jersey.core.impl.provider.entity.MimeMultipartProvider > com.sun.jersey.core.impl.provider.entity.StringProvider > com.sun.jersey.core.impl.provider.entity.ByteArrayProvider > com.sun.jersey.core.impl.provider.entity.FileProvider > com.sun.jersey.core.impl.provider.entity.InputStreamProvider > com.sun.jersey.core.impl.provider.entity.DataSourceProvider > com.sun.jersey.core.impl.provider.entity.XMLJAXBElementProvider$General > com.sun.jersey.core.impl.provider.entity.ReaderProvider > com.sun.jersey.core.impl.provider.entity.DocumentProvider > com.sun.jersey.core.impl.provider.entity.SourceProvider$StreamSourceReader > com.sun.jersey.core.impl.provider.entity.SourceProvider$SAXSourceReader > com.sun.jersey.core.impl.provider.entity.SourceProvider$DOMSourceReader > com.sun.jersey.json.impl.provider.entity.JSONJAXBElementProvider$General > com.sun.jersey.json.impl.provider.entity.JSONArrayProvider$General > com.sun.jersey.json.impl.provider.entity.JSONObjectProvider$General > com.sun.jersey.core.impl.provider.entity.XMLRootElementProvider$General > com.sun.jersey.core.impl.provider.entity.XMLListElementProvider$General > com.sun.jersey.core.impl.provider.entity.XMLRootObjectProvider$General > com.sun.jersey.core.impl.provider.entity.EntityHolderReader > com.sun.jersey.json.impl.provider.entity.JSONRootElementProvider$General > com.sun.jersey.json.impl.provider.entity.JSONListElementProvider$General > com.sun.jersey.json.impl.provider.entity.JacksonProviderProxy > ERROR: Internal Server Error;<html> > <head> > <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> > <title>Error 500 The transaction has been rolled back. See the nested > exceptions for details on the errors that occurred.</title> > </head> > <body><h2>HTTP ERROR 500</h2> > <p>Problem accessing /api/extension/submit/extension-example. Reason: > <pre> The transaction has been rolled back. See the nested exceptions for > details on the errors that occurred.</pre></p><h3>Caused > by:</h3><pre><openjpa-2.4.0-r422266:1674604 fatal store error> > org.apache.openjpa.persistence.RollbackException: The transaction has been > rolled back. See the nested exceptions for details on the errors that > occurred. > FailedObject: org.apache.falcon.persistence.ExtensionJobsBean@24f6b1a0 > at > org.apache.openjpa.persistence.EntityManagerImpl.commit(EntityManagerImpl.java:593) > at > org.apache.falcon.extensions.jdbc.ExtensionMetaStore.commitAndCloseTransaction(ExtensionMetaStore.java:175) > at > org.apache.falcon.extensions.jdbc.ExtensionMetaStore.storeExtensionJob(ExtensionMetaStore.java:141) > at > org.apache.falcon.resource.extensions.ExtensionManager.submitEntities(ExtensionManager.java:433) > at > org.apache.falcon.resource.extensions.ExtensionManager.submit(ExtensionManager.java:318) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:497) > at > com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60) > at > com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$TypeOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:185) > at > com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75) > at > com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:288) > at > com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147) > at > com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108) > at > com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147) > at > com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:84) > at > com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1469) > at > com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1400) > at > com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1349) > at > com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1339) > at > com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:416) > at > com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:537) > at > com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:699) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) > at > org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511) > at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1221) > at > org.apache.falcon.security.FalconAuthorizationFilter.doFilter(FalconAuthorizationFilter.java:108) > at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212) > at > org.apache.falcon.security.FalconCSRFFilter.doFilter(FalconCSRFFilter.java:78) > at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212) > at > org.apache.falcon.security.FalconAuthenticationFilter$2.doFilter(FalconAuthenticationFilter.java:188) > at > org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:572) > at > org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:542) > at > org.apache.falcon.security.FalconAuthenticationFilter.doFilter(FalconAuthenticationFilter.java:197) > at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212) > at > org.apache.falcon.security.FalconAuditFilter.doFilter(FalconAuditFilter.java:64) > at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212) > at > org.apache.falcon.security.HostnameFilter.doFilter(HostnameFilter.java:82) > at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212) > at > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399) > at > org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) > at > org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182) > at > org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:767) > at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450) > at > org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) > at org.mortbay.jetty.Server.handle(Server.java:326) > at > org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542) > at > org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:945) > at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:756) > at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218) > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) > at > org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228) > at > org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582) > Caused by: <openjpa-2.4.0-r422266:1674604 fatal store error> > org.apache.openjpa.persistence.EntityExistsException: The transaction has > been rolled back. See the nested exceptions for details on the errors that > occurred. > FailedObject: org.apache.falcon.persistence.ExtensionJobsBean@24f6b1a0 > at > org.apache.openjpa.kernel.BrokerImpl.newFlushException(BrokerImpl.java:2368) > at org.apache.openjpa.kernel.BrokerImpl.flush(BrokerImpl.java:2205) > at org.apache.openjpa.kernel.BrokerImpl.flushSafe(BrokerImpl.java:2103) > at > org.apache.openjpa.kernel.BrokerImpl.beforeCompletion(BrokerImpl.java:2021) > at > org.apache.openjpa.kernel.LocalManagedRuntime.commit(LocalManagedRuntime.java:81) > at org.apache.openjpa.kernel.BrokerImpl.commit(BrokerImpl.java:1526) > at > org.apache.openjpa.kernel.DelegatingBroker.commit(DelegatingBroker.java:932) > at > org.apache.openjpa.persistence.EntityManagerImpl.commit(EntityManagerImpl.java:569) > ... 53 more > Caused by: <openjpa-2.4.0-r422266:1674604 fatal store error> > org.apache.openjpa.persistence.EntityExistsException: Duplicate entry > 'sample' for key 'PRIMARY' {prepstmnt 1388430878 INSERT INTO EXTENSION_JOBS > (job_name, config, creation_time, extension_name, feeds, last_updated_time, > processes) VALUES (?, ?, ?, ?, ?, ?, ?)} [code=1062, state=23000] > FailedObject: org.apache.falcon.persistence.ExtensionJobsBean@24f6b1a0 > at > org.apache.openjpa.jdbc.sql.DBDictionary.narrow(DBDictionary.java:4986) > at > org.apache.openjpa.jdbc.sql.DBDictionary.newStoreException(DBDictionary.java:4961) > at > org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:133) > at > org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:75) > at > org.apache.openjpa.jdbc.kernel.PreparedStatementManagerImpl.flushAndUpdate(PreparedStatementManagerImpl.java:144) > at > org.apache.openjpa.jdbc.kernel.BatchingPreparedStatementManagerImpl.flushAndUpdate(BatchingPreparedStatementManagerImpl.java:79) > at > org.apache.openjpa.jdbc.kernel.PreparedStatementManagerImpl.flushInternal(PreparedStatementManagerImpl.java:100) > at > org.apache.openjpa.jdbc.kernel.PreparedStatementManagerImpl.flush(PreparedStatementManagerImpl.java:88) > at > org.apache.openjpa.jdbc.kernel.ConstraintUpdateManager.flush(ConstraintUpdateManager.java:550) > at > org.apache.openjpa.jdbc.kernel.ConstraintUpdateManager.flush(ConstraintUpdateManager.java:106) > at > org.apache.openjpa.jdbc.kernel.BatchingConstraintUpdateManager.flush(BatchingConstraintUpdateManager.java:59) > at > org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.flush(AbstractUpdateManager.java:104) > at > org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.flush(AbstractUpdateManager.java:77) > at > org.apache.openjpa.jdbc.kernel.JDBCStoreManager.flush(JDBCStoreManager.java:731) > at > org.apache.openjpa.kernel.DelegatingStoreManager.flush(DelegatingStoreManager.java:131) > ... 60 more > Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: Duplicate entry > 'sample' for key 'PRIMARY' {prepstmnt 1388430878 INSERT INTO EXTENSION_JOBS > (job_name, config, creation_time, extension_name, feeds, last_updated_time, > processes) VALUES (?, ?, ?, ?, ?, ?, ?)} [code=1062, state=23000] > at > org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:218) > at > org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:194) > at > org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.access$1000(LoggingConnectionDecorator.java:58) > at > org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator$LoggingConnection$LoggingPreparedStatement.executeUpdate(LoggingConnectionDecorator.java:1133) > at > org.apache.openjpa.lib.jdbc.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:275) > at > org.apache.openjpa.jdbc.kernel.JDBCStoreManager$CancelPreparedStatement.executeUpdate(JDBCStoreManager.java:1791) > at > org.apache.openjpa.jdbc.kernel.PreparedStatementManagerImpl.executeUpdate(PreparedStatementManagerImpl.java:268) > at > org.apache.openjpa.jdbc.kernel.PreparedStatementManagerImpl.flushAndUpdate(PreparedStatementManagerImpl.java:119) > ... 70 more > </pre> > {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)