C-ld commented on PR #177: URL: https://github.com/apache/rocketmq-eventbridge/pull/177#issuecomment-2324080226
# Error happend when testing /type/listEventTypes @2011shenlin It seems like an internal error leading to SQL syntax error... any suggestions ? error message from access log of eventbridge: ``` 2024-08-31 23:00:19.586@@@@@@@@[reactor-http-server-epoll-8]@@INFO@@accessLog[62]@@requestTraceId : | url : http://127.0.0.1:7001/type/listEventTypes | requestParam : {} | requestMethod : POST | requestBody : "{\"eventSourceName\":\"newSource\",\"maxResults\":10,\"nextToken\":\"0\",\"eventBusName\":\"newBus\"}" 2024-08-31 23:00:19.589@@@@@@@@[reactor-http-server-epoll-8]@@ERROR@@accessLog[64]@@Catch unexpected exception. org.springframework.jdbc.BadSqlGrammarException: ### Error querying database. Cause: org.h2.jdbc.JdbcSQLException: Syntax error in SQL statement "SELECT ACCOUNT_ID,BUS,SOURCE,NAME,DESCRIPTION,GMT_CREATE,GMT_MODIFY FROM EVENT_TYPE WHERE ACCOUNT_ID = ? AND BUS = ? AND SOURCE = ? LIMIT ? ?[*] "; SQL statement: SELECT account_id,bus,source,name,description,gmt_create,gmt_modify FROM event_type WHERE account_id = ? AND bus = ? AND source = ? LIMIT ? ? [42000-197] ### The error may exist in class path resource [mybatis/EventTypeMapper.xml] ### The error may involve org.apache.rocketmq.eventbridge.adapter.persistence.type.mybatis.mapper.EventTypeMapper.listEventTypes ### The error occurred while executing a query ### SQL: SELECT account_id,bus,source,name,description,gmt_create,gmt_modify FROM event_type WHERE account_id = ? AND bus = ? AND source = ? LIMIT ? ? ### Cause: org.h2.jdbc.JdbcSQLException: Syntax error in SQL statement "SELECT ACCOUNT_ID,BUS,SOURCE,NAME,DESCRIPTION,GMT_CREATE,GMT_MODIFY FROM EVENT_TYPE WHERE ACCOUNT_ID = ? AND BUS = ? AND SOURCE = ? LIMIT ? ?[*] "; SQL statement: SELECT account_id,bus,source,name,description,gmt_create,gmt_modify FROM event_type WHERE account_id = ? AND bus = ? AND source = ? LIMIT ? ? [42000-197] ; bad SQL grammar []; nested exception is org.h2.jdbc.JdbcSQLException: Syntax error in SQL statement "SELECT ACCOUNT_ID,BUS,SOURCE,NAME,DESCRIPTION,GMT_CREATE,GMT_MODIFY FROM EVENT_TYPE WHERE ACCOUNT_ID = ? AND BUS = ? AND SOURCE = ? LIMIT ? ?[*] "; SQL statement: SELECT account_id,bus,source,name,description,gmt_create,gmt_modify FROM event_type WHERE account_id = ? AND bus = ? AND source = ? LIMIT ? ? [42000-197] at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.doTranslate(SQLErrorCodeSQLExceptionTranslator.java:234) at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:72) at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:88) at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:440) at com.sun.proxy.$Proxy81.selectList(Unknown Source) at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:223) at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:147) at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:80) at org.apache.ibatis.binding.MapperProxy$PlainMethodInvoker.invoke(MapperProxy.java:152) at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:85) at com.sun.proxy.$Proxy91.listEventTypes(Unknown Source) at org.apache.rocketmq.eventbridge.adapter.persistence.type.mybatis.repository.MybatisEventTypeRepository.listEventTypes(MybatisEventTypeRepository.java:55) at org.apache.rocketmq.eventbridge.adapter.persistence.type.mybatis.repository.MybatisEventTypeRepository$$FastClassBySpringCGLIB$$e76c98f9.invoke(<generated>) at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:746) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:139) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:185) at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:688) at org.apache.rocketmq.eventbridge.adapter.persistence.type.mybatis.repository.MybatisEventTypeRepository$$EnhancerBySpringCGLIB$$b9241d22.listEventTypes(<generated>) at org.apache.rocketmq.eventbridge.domain.model.source.EventTypeService.listEventTypes(EventTypeService.java:39) at org.apache.rocketmq.eventbridge.adapter.api.controller.EventTypeController.lambda$listEventTypes$1(EventTypeController.java:50) at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onNext(FluxMapFuseable.java:107) at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:1637) at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.request(FluxMapFuseable.java:156) at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.request(FluxPeekFuseable.java:138) at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.request(FluxMapFuseable.java:156) at org.springframework.http.server.reactive.ChannelSendOperator$WriteBarrier.onSubscribe(ChannelSendOperator.java:163) at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onSubscribe(FluxMapFuseable.java:90) at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.onSubscribe(FluxPeekFuseable.java:172) at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onSubscribe(FluxMapFuseable.java:90) at reactor.core.publisher.MonoCurrentContext.subscribe(MonoCurrentContext.java:33) at reactor.core.publisher.MonoMapFuseable.subscribe(MonoMapFuseable.java:59) at reactor.core.publisher.MonoPeekFuseable.subscribe(MonoPeekFuseable.java:74) at reactor.core.publisher.FluxSourceMonoFuseable.subscribe(FluxSourceMonoFuseable.java:38) at reactor.core.publisher.FluxMapFuseable.subscribe(FluxMapFuseable.java:63) at org.springframework.http.server.reactive.ChannelSendOperator.subscribe(ChannelSendOperator.java:74) at reactor.core.publisher.MonoOnErrorResume.subscribe(MonoOnErrorResume.java:44) at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:150) at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1080) at reactor.core.publisher.MonoFlatMap$FlatMapInner.onNext(MonoFlatMap.java:241) at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onNext(FluxOnErrorResume.java:73) at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.onNext(FluxPeekFuseable.java:198) at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.onNext(FluxPeekFuseable.java:198) at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1080) at reactor.core.publisher.MonoIgnoreThen$ThenAcceptInner.onNext(MonoIgnoreThen.java:290) at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1080) at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:144) at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1080) at reactor.core.publisher.MonoZip$ZipCoordinator.signal(MonoZip.java:241) at reactor.core.publisher.MonoZip$ZipInner.onNext(MonoZip.java:323) at reactor.core.publisher.FluxPeek$PeekSubscriber.onNext(FluxPeek.java:185) at reactor.core.publisher.FluxDefaultIfEmpty$DefaultIfEmptySubscriber.onNext(FluxDefaultIfEmpty.java:92) at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onNext(FluxSwitchIfEmpty.java:67) at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onNext(FluxOnErrorResume.java:73) at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1080) at reactor.core.publisher.MonoSingle$SingleSubscriber.onComplete(MonoSingle.java:171) at reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:130) at reactor.core.publisher.FluxFlatMap$FlatMapMain.checkTerminated(FluxFlatMap.java:773) at reactor.core.publisher.FluxFlatMap$FlatMapMain.drainLoop(FluxFlatMap.java:543) at reactor.core.publisher.FluxFlatMap$FlatMapMain.drain(FluxFlatMap.java:523) at reactor.core.publisher.FluxFlatMap$FlatMapMain.onComplete(FluxFlatMap.java:409) at reactor.core.publisher.DrainUtils.postCompleteDrain(DrainUtils.java:131) at reactor.core.publisher.DrainUtils.postComplete(DrainUtils.java:186) at reactor.core.publisher.FluxMapSignal$FluxMapSignalSubscriber.onComplete(FluxMapSignal.java:213) at reactor.core.publisher.FluxPeek$PeekSubscriber.onComplete(FluxPeek.java:245) at reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:130) at reactor.core.publisher.FluxPeek$PeekSubscriber.onComplete(FluxPeek.java:245) at reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:130) at reactor.ipc.netty.channel.FluxReceive.terminateReceiver(FluxReceive.java:377) at reactor.ipc.netty.channel.FluxReceive.drainReceiver(FluxReceive.java:202) at reactor.ipc.netty.channel.FluxReceive.request(FluxReceive.java:110) at reactor.core.publisher.FluxMap$MapSubscriber.request(FluxMap.java:149) at reactor.core.publisher.FluxPeek$PeekSubscriber.request(FluxPeek.java:130) at reactor.core.publisher.FluxMap$MapSubscriber.request(FluxMap.java:149) at reactor.core.publisher.FluxPeek$PeekSubscriber.request(FluxPeek.java:130) at reactor.core.publisher.FluxMapSignal$FluxMapSignalSubscriber.request(FluxMapSignal.java:225) at reactor.core.publisher.FluxFlatMap$FlatMapMain.onSubscribe(FluxFlatMap.java:332) at reactor.core.publisher.FluxMapSignal$FluxMapSignalSubscriber.onSubscribe(FluxMapSignal.java:115) at reactor.core.publisher.FluxPeek$PeekSubscriber.onSubscribe(FluxPeek.java:163) at reactor.core.publisher.FluxMap$MapSubscriber.onSubscribe(FluxMap.java:86) at reactor.core.publisher.FluxPeek$PeekSubscriber.onSubscribe(FluxPeek.java:163) at reactor.core.publisher.FluxMap$MapSubscriber.onSubscribe(FluxMap.java:86) at reactor.ipc.netty.channel.FluxReceive.startReceiver(FluxReceive.java:273) at reactor.ipc.netty.channel.FluxReceive.subscribe(FluxReceive.java:124) at reactor.core.publisher.FluxMap.subscribe(FluxMap.java:62) at reactor.ipc.netty.ByteBufFlux.subscribe(ByteBufFlux.java:242) at reactor.core.publisher.FluxPeek.subscribe(FluxPeek.java:83) at reactor.ipc.netty.ByteBufFlux.subscribe(ByteBufFlux.java:242) at reactor.core.publisher.FluxMap.subscribe(FluxMap.java:62) at reactor.core.publisher.FluxPeek.subscribe(FluxPeek.java:83) at reactor.core.publisher.FluxMapSignal.subscribe(FluxMapSignal.java:69) at reactor.core.publisher.FluxFlatMap.subscribe(FluxFlatMap.java:97) at reactor.core.publisher.FluxMap.subscribe(FluxMap.java:62) at reactor.core.publisher.MonoSingle.subscribe(MonoSingle.java:58) at reactor.core.publisher.MonoOnErrorResume.subscribe(MonoOnErrorResume.java:44) at reactor.core.publisher.MonoSwitchIfEmpty.subscribe(MonoSwitchIfEmpty.java:44) at reactor.core.publisher.MonoDefaultIfEmpty.subscribe(MonoDefaultIfEmpty.java:37) at reactor.core.publisher.MonoPeek.subscribe(MonoPeek.java:71) at reactor.core.publisher.Mono.subscribe(Mono.java:3080) at reactor.core.publisher.MonoZip.subscribe(MonoZip.java:128) at reactor.core.publisher.MonoFlatMap.subscribe(MonoFlatMap.java:60) at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.drain(MonoIgnoreThen.java:148) at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:56) at reactor.core.publisher.MonoPeekFuseable.subscribe(MonoPeekFuseable.java:74) at reactor.core.publisher.MonoPeekFuseable.subscribe(MonoPeekFuseable.java:74) at reactor.core.publisher.MonoOnErrorResume.subscribe(MonoOnErrorResume.java:44) at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:150) at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onNext(FluxSwitchIfEmpty.java:67) at reactor.core.publisher.MonoNext$NextSubscriber.onNext(MonoNext.java:76) at reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.innerNext(FluxConcatMap.java:271) at reactor.core.publisher.FluxConcatMap$ConcatMapInner.onNext(FluxConcatMap.java:803) at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onNext(FluxMapFuseable.java:115) at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:1637) at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.request(FluxMapFuseable.java:156) at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.set(Operators.java:1451) at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onSubscribe(Operators.java:1325) at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onSubscribe(FluxMapFuseable.java:90) at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:54) at reactor.core.publisher.MonoMapFuseable.subscribe(MonoMapFuseable.java:59) at reactor.core.publisher.Mono.subscribe(Mono.java:3080) at reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.drain(FluxConcatMap.java:418) at reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.onSubscribe(FluxConcatMap.java:210) at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:128) at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:61) at reactor.core.publisher.FluxConcatMap.subscribe(FluxConcatMap.java:121) at reactor.core.publisher.MonoNext.subscribe(MonoNext.java:40) at reactor.core.publisher.MonoSwitchIfEmpty.subscribe(MonoSwitchIfEmpty.java:44) at reactor.core.publisher.MonoFlatMap.subscribe(MonoFlatMap.java:60) at reactor.core.publisher.MonoFlatMap.subscribe(MonoFlatMap.java:60) at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) at reactor.core.publisher.MonoSubscriberContext.subscribe(MonoSubscriberContext.java:47) at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) at reactor.core.publisher.MonoSubscriberContext.subscribe(MonoSubscriberContext.java:47) at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) at reactor.core.publisher.MonoOnErrorResume.subscribe(MonoOnErrorResume.java:44) at reactor.core.publisher.MonoOnErrorResume.subscribe(MonoOnErrorResume.java:44) at reactor.core.publisher.MonoOnErrorResume.subscribe(MonoOnErrorResume.java:44) at reactor.core.publisher.Mono.subscribe(Mono.java:3080) at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.drain(MonoIgnoreThen.java:167) at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:56) at reactor.core.publisher.MonoPeekFuseable.subscribe(MonoPeekFuseable.java:70) at reactor.core.publisher.MonoPeekTerminal.subscribe(MonoPeekTerminal.java:61) at reactor.ipc.netty.channel.ChannelOperations.applyHandler(ChannelOperations.java:380) at reactor.ipc.netty.http.server.HttpServerOperations.onHandlerStart(HttpServerOperations.java:397) at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163) at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:404) at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:309) at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884) at java.lang.Thread.run(Thread.java:750) ``` -- 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]
