equator8848 opened a new issue, #30328:
URL: https://github.com/apache/shardingsphere/issues/30328

   ### Which version of ShardingSphere did you use?
   
   4.1.1
   
   ### Which project did you use? ShardingSphere-JDBC or ShardingSphere-Proxy?
   
   ShardingSphere-JDBC
   
   ### Expected behavior
   
   ### Actual behavior
   ```
   SQL: UPDATE flow_task_item_principal SET app_id = ?, task_item_id = ?, 
flow_node_id = ?, flow_node_name = ?, flow_node_type = ?, task_status = ?, 
read_status = ?, relational_id = ?, relational_type = ?, relational_attribute = 
?, create_by = ?, create_time = ?, update_by = ?, update_time = ?, tenant_id = 
? WHERE flow_task_item_principal.tenant_id = 330000000000001 AND del_flag = 0 
AND (id = ? AND create_year = ?)
   ### Cause: 
org.apache.shardingsphere.underlying.common.exception.ShardingSphereException: 
Cannot support Multiple-Table for 
'org.apache.shardingsphere.sql.parser.sql.statement.dml.UpdateStatement@5cda629b'.
        at 
org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:96)
 ~[mybatis-spring-2.0.7.jar:2.0.7]
        at 
org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:441)
 ~[mybatis-spring-2.0.7.jar:2.0.7]
        at com.sun.proxy.$Proxy194.update(Unknown Source) ~[na:na]
        at 
org.mybatis.spring.SqlSessionTemplate.update(SqlSessionTemplate.java:288) 
~[mybatis-spring-2.0.7.jar:2.0.7]
        at 
com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:64)
 ~[mybatis-plus-core-3.5.2.jar:3.5.2]
        at 
com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:148)
 ~[mybatis-plus-core-3.5.2.jar:3.5.2]
        at 
com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89)
 ~[mybatis-plus-core-3.5.2.jar:3.5.2]
        at com.sun.proxy.$Proxy232.update(Unknown Source) ~[na:na]
        at 
com.baomidou.mybatisplus.extension.service.IService.update(IService.java:258) 
~[mybatis-plus-extension-3.5.2.jar:3.5.2]
        at 
com.baomidou.mybatisplus.extension.service.IService$$FastClassBySpringCGLIB$$f8525d18.invoke(<generated>)
 ~[mybatis-plus-extension-3.5.2.jar:3.5.2]
        at 
org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) 
~[spring-core-5.3.14.jar:5.3.14]
        at 
org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:689)
 ~[spring-aop-5.3.14.jar:5.3.14]
        at 
com.cqlvc.floworange.common.dao.service.task.FlowTaskItemPrincipalDaoService$$EnhancerBySpringCGLIB$$20299305.update(<generated>)
 ~[classes/:na]
        at 
com.cqlvc.floworange.common.service.task.impl.FlowTaskItemPrincipalServiceImpl.updatePrincipalStatus(FlowTaskItemPrincipalServiceImpl.java:189)
 ~[classes/:na]
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
~[na:na]
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
 ~[na:na]
        at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 ~[na:na]
        at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
        at 
org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:344)
 ~[spring-aop-5.3.14.jar:5.3.14]
        at 
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:208)
 ~[spring-aop-5.3.14.jar:5.3.14]
        at com.sun.proxy.$Proxy233.updatePrincipalStatus(Unknown Source) 
~[na:na]
        at 
com.cqlvc.floworange.common.service.task.impl.FlowTaskItemQueryServiceImpl.getTaskDetailVO(FlowTaskItemQueryServiceImpl.java:209)
 ~[classes/:na]
        at 
com.cqlvc.floworange.common.service.task.impl.FlowTaskItemQueryServiceImpl.taskDetail(FlowTaskItemQueryServiceImpl.java:137)
 ~[classes/:na]
        at 
com.cqlvc.floworange.common.service.task.impl.FlowTaskItemQueryServiceImpl$$FastClassBySpringCGLIB$$d6918712.invoke(<generated>)
 ~[classes/:na]
        at 
org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) 
~[spring-core-5.3.14.jar:5.3.14]
        at 
org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:783)
 ~[spring-aop-5.3.14.jar:5.3.14]
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
 ~[spring-aop-5.3.14.jar:5.3.14]
        at 
org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:753)
 ~[spring-aop-5.3.14.jar:5.3.14]
        at 
org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123)
 ~[spring-tx-5.3.14.jar:5.3.14]
        at 
org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:388)
 ~[spring-tx-5.3.14.jar:5.3.14]
        at 
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119)
 ~[spring-tx-5.3.14.jar:5.3.14]
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
 ~[spring-aop-5.3.14.jar:5.3.14]
        at 
org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:753)
 ~[spring-aop-5.3.14.jar:5.3.14]
        at 
org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:698)
 ~[spring-aop-5.3.14.jar:5.3.14]
        at 
com.cqlvc.floworange.common.service.task.impl.FlowTaskItemQueryServiceImpl$$EnhancerBySpringCGLIB$$b5a8b573.taskDetail(<generated>)
 ~[classes/:na]
        at 
com.cqlvc.floworange.data.task.controller.TaskQueryCenterController.taskDetail(TaskQueryCenterController.java:89)
 ~[classes/:na]
        at 
com.cqlvc.floworange.data.task.controller.TaskQueryCenterController$$FastClassBySpringCGLIB$$95876b69.invoke(<generated>)
 ~[classes/:na]
        at 
org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) 
~[spring-core-5.3.14.jar:5.3.14]
        at 
org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:783)
 ~[spring-aop-5.3.14.jar:5.3.14]
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
 ~[spring-aop-5.3.14.jar:5.3.14]
        at 
org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:753)
 ~[spring-aop-5.3.14.jar:5.3.14]
        at 
org.springframework.validation.beanvalidation.MethodValidationInterceptor.invoke(MethodValidationInterceptor.java:123)
 ~[spring-context-5.3.14.jar:5.3.14]
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
 ~[spring-aop-5.3.14.jar:5.3.14]
        at 
org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:753)
 ~[spring-aop-5.3.14.jar:5.3.14]
        at 
org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:698)
 ~[spring-aop-5.3.14.jar:5.3.14]
        at 
com.cqlvc.floworange.data.task.controller.TaskQueryCenterController$$EnhancerBySpringCGLIB$$505a4c14.taskDetail(<generated>)
 ~[classes/:na]
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
~[na:na]
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
 ~[na:na]
        at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 ~[na:na]
        at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
        at 
org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
 ~[spring-web-5.3.14.jar:5.3.14]
        at 
org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
 ~[spring-web-5.3.14.jar:5.3.14]
        at 
org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
 ~[spring-webmvc-5.3.14.jar:5.3.14]
        at 
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
 ~[spring-webmvc-5.3.14.jar:5.3.14]
        at 
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
 ~[spring-webmvc-5.3.14.jar:5.3.14]
        at 
org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
 ~[spring-webmvc-5.3.14.jar:5.3.14]
        at 
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
 ~[spring-webmvc-5.3.14.jar:5.3.14]
        at 
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
 ~[spring-webmvc-5.3.14.jar:5.3.14]
        at 
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
 ~[spring-webmvc-5.3.14.jar:5.3.14]
        at 
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
 ~[spring-webmvc-5.3.14.jar:5.3.14]
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:681) 
~[tomcat-embed-core-9.0.56.jar:4.0.FR]
        at 
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
 ~[spring-webmvc-5.3.14.jar:5.3.14]
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:764) 
~[tomcat-embed-core-9.0.56.jar:4.0.FR]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)
 ~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
 ~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) 
~[tomcat-embed-websocket-9.0.56.jar:9.0.56]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
 ~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
 ~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) 
~[spring-web-5.3.14.jar:5.3.14]
        at 
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
 ~[spring-web-5.3.14.jar:5.3.14]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
 ~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
 ~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.springframework.session.web.http.SessionRepositoryFilter.doFilterInternal(SessionRepositoryFilter.java:142)
 ~[spring-session-core-2.5.4.jar:2.5.4]
        at 
org.springframework.session.web.http.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:82)
 ~[spring-session-core-2.5.4.jar:2.5.4]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
 ~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
 ~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
 ~[spring-boot-actuator-2.5.8.jar:2.5.8]
        at 
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
 ~[spring-web-5.3.14.jar:5.3.14]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
 ~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
 ~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
 ~[spring-web-5.3.14.jar:5.3.14]
        at 
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
 ~[spring-web-5.3.14.jar:5.3.14]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
 ~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
 ~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)
 ~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
 ~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:540)
 ~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) 
~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) 
~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
 ~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:357) 
~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:382) 
~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
 ~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:895)
 ~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1732)
 ~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) 
~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
 ~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
 ~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at 
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
 ~[tomcat-embed-core-9.0.56.jar:9.0.56]
        at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na]
   ```
   ### Reason analyze (If you can)
   
   ### Steps to reproduce the behavior, such as: SQL to execute, sharding rule 
configuration, when exception occur etc.
   
   ### Example codes for reproduce this issue (such as a github link).
   - I use mybatis-plus to update my data, field `create_year` is sharding field
   ```
           principalDaoService.update(old, new 
UpdateWrapper<FlowTaskItemPrincipal>()
                   .eq(FormConstant.FlowFormBaseTableField.ID, old.getId())
                   .eq(FormConstant.FlowFormBaseTableField.CREATE_YEAR, 
old.getCreateYear()));
   ```
   


-- 
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.

To unsubscribe, e-mail: 
[email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to