You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by GitBox <gi...@apache.org> on 2019/09/22 04:06:29 UTC

[GitHub] [incubator-shardingsphere] ixiaomlt opened a new issue #3080: Oracle 11.0.2.4 batch insert exception

ixiaomlt opened a new issue #3080: Oracle 11.0.2.4 batch insert exception
URL: https://github.com/apache/incubator-shardingsphere/issues/3080
 
 
   The environment and configuration are the same as #3069.
   
   #### original sql
   
   ~~~SQL
   <insert id="insertSysUserRole" parameterType="ArrayList" >
       insert into SYS_USER_ROLE (
       ID,
       USER_ID,
       ROLE_ID
       )
       <foreach collection="list" item="sysUserRole" index="index" separator="union all">
           select #{sysUserRole.id}, #{sysUserRole.userId}, #{sysUserRole.roleId} from dual
       </foreach>
   </insert>
   ~~~
   
   #### error log
   ~~~log
   2019-09-22 11:51:57.658  INFO 16408 --- [nio-8061-exec-3] ShardingSphere-SQL                       : Rule Type: encrypt
   2019-09-22 11:51:57.658  INFO 16408 --- [nio-8061-exec-3] ShardingSphere-SQL                       : SQL: insert into SYS_USER_ROLE (
           ID,
           USER_ID,
           ROLE_ID
           )
   
               select ?, ?, ? from dual
   2019-09-22 11:51:57.667  INFO 16408 --- [nio-8061-exec-3] o.s.b.f.xml.XmlBeanDefinitionReader      : Loading XML bean definitions from class path resource [org/springframework/jdbc/support/sql-error-codes.xml]
   2019-09-22 11:51:57.696 ERROR 16408 --- [nio-8061-exec-3] c.h.d.handle.ExceptionHandle  : 系统异常
   
   org.springframework.jdbc.UncategorizedSQLException:
   ### Error updating database.  Cause: java.sql.SQLException: 索引中丢失  IN 或 OUT 参数:: 1
   ### The error may involve com.h.d.mapper.SysUserRoleMapper.insertSysUserRole-Inline
   ### The error occurred while setting parameters
   ### SQL: insert into SYS_USER_ROLE (         ID,         USER_ID,         ROLE_ID         )                        select ?, ?, ? from dual
   ### Cause: java.sql.SQLException: 索引中丢失  IN 或 OUT 参数:: 1
   ; uncategorized SQLException; SQL state [99999]; error code [17041]; 索引中丢失  IN 或 OUT 参数:: 1; nested exception is java.sql.SQLException: 索引中丢失  IN 或 OUT 参数:: 1
   	at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:89)
   	at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81)
   	at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81)
   	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:73)
   	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
   	at com.sun.proxy.$Proxy88.insert(Unknown Source)
   	at org.mybatis.spring.SqlSessionTemplate.insert(SqlSessionTemplate.java:278)
   	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:58)
   	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
   	at com.sun.proxy.$Proxy98.insertSysUserRole(Unknown Source)
   	at com.h.d.service.SysUserServiceImpl.addSysUser(SysUserServiceImpl.java:162)
   	at com.h.d.controller.SysUserController.add(SysUserController.java:466)
   	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:498)
   	at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:209)
   	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:136)
   	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:102)
   	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:877)
   	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:783)
   	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
   	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:991)
   	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:925)
   	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:974)
   	at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:877)
   	at javax.servlet.http.HttpServlet.service(HttpServlet.java:661)
   	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:851)
   	at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
   	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
   	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
   	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
   	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
   	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
   	at com.h.d.filter.SessionFilter.doFilter(SessionFilter.java:89)
   	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
   	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
   	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)
   	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
   	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
   	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
   	at org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:109)
   	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
   	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
   	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
   	at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:93)
   	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
   	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
   	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
   	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200)
   	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
   	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
   	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
   	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
   	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
   	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:493)
   	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
   	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
   	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
   	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
   	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:800)
   	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
   	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:800)
   	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1471)
   	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
   	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
   	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
   	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
   	at java.lang.Thread.run(Thread.java:748)
   Caused by: java.sql.SQLException: 索引中丢失  IN 或 OUT 参数:: 1
   	at oracle.jdbc.driver.OraclePreparedStatement.processCompletedBindRow(OraclePreparedStatement.java:1821)
   	at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3571)
   	at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3677)
   	at oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWrapper.java:1374)
   	at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44)
   	at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java)
   	at org.apache.shardingsphere.shardingjdbc.jdbc.core.statement.EncryptPreparedStatement.execute(EncryptPreparedStatement.java:125)
   	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:498)
   	at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:59)
   	at com.sun.proxy.$Proxy135.execute(Unknown Source)
   	at org.apache.ibatis.executor.statement.PreparedStatementHandler.update(PreparedStatementHandler.java:46)
   	at org.apache.ibatis.executor.statement.RoutingStatementHandler.update(RoutingStatementHandler.java:74)
   	at org.apache.ibatis.executor.SimpleExecutor.doUpdate(SimpleExecutor.java:50)
   	at org.apache.ibatis.executor.BaseExecutor.update(BaseExecutor.java:117)
   	at org.apache.ibatis.executor.CachingExecutor.update(CachingExecutor.java:76)
   	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:498)
   	at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:63)
   	at com.sun.proxy.$Proxy134.update(Unknown Source)
   	at org.apache.ibatis.session.defaults.DefaultSqlSession.update(DefaultSqlSession.java:198)
   	at org.apache.ibatis.session.defaults.DefaultSqlSession.insert(DefaultSqlSession.java:185)
   	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:498)
   	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:433)
   	... 64 common frames omitted
   
   2019-09-22 11:51:57.706  WARN 16408 --- [nio-8061-exec-3] .m.m.a.ExceptionHandlerExceptionResolver : Resolved exception caused by Handler execution: org.springframework.jdbc.UncategorizedSQLException:
   ### Error updating database.  Cause: java.sql.SQLException: 索引中丢失  IN 或 OUT 参数:: 1
   ### The error may involve com.h.d.mapper.SysUserRoleMapper.insertSysUserRole-Inline
   ### The error occurred while setting parameters
   ### SQL: insert into SYS_USER_ROLE (         ID,         USER_ID,         ROLE_ID         )                        select ?, ?, ? from dual
   ### Cause: java.sql.SQLException: 索引中丢失  IN 或 OUT 参数:: 1
   ; uncategorized SQLException; SQL state [99999]; error code [17041]; 索引中丢失  IN 或 OUT 参数:: 1; nested exception is java.sql.SQLException: 索引中丢失  IN 或 OUT 参数:: 1
   ~~~
   
   Is this a BUG?
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services