Bladex-boot最新框架无法集成TDengine

Blade 已结 2 16

一、该问题的重现步骤是什么?


1. 根据官方文档,集成 blade-starter-db-dynamic


2. 引入TDengine作为时序数据库


3.查询数据




二、你期待的结果是什么?实际看到的又是什么?


能正确查询出结果       ,  查询结果值为空




三、你正在使用的是什么产品,什么版本?在什么操作系统上?




bladex-boot商业版,4.7.0.RELEASE,Win10 本地IDEA




四、请提供详细的错误堆栈信息,这很重要。




com.alibaba.druid.sql.parser.ParserException: not supported.pos 294, line 13, column 10, token INTERVAL


at com.alibaba.druid.sql.parser.SQLStatementParser.parseStatementList(SQLStatementParser.java:623)


at com.alibaba.druid.sql.parser.SQLStatementParser.parseStatementList(SQLStatementParser.java:114)


at com.alibaba.druid.sql.SQLUtils.format(SQLUtils.java:346)


at com.alibaba.druid.sql.SQLUtils.format(SQLUtils.java:339)


at org.springblade.core.mp.plugins.SqlLogInterceptor.statement_close(SqlLogInterceptor.java:134)


at com.alibaba.druid.filter.FilterChainImpl.statement_close(FilterChainImpl.java:2904)


at com.alibaba.druid.filter.stat.StatFilter.statement_close(StatFilter.java:350)


at com.alibaba.druid.filter.FilterChainImpl.statement_close(FilterChainImpl.java:2904)


at com.alibaba.druid.proxy.jdbc.StatementProxyImpl.close(StatementProxyImpl.java:134)


at com.alibaba.druid.pool.DruidPooledStatement.close(DruidPooledStatement.java:516)


at com.alibaba.druid.pool.DruidPooledPreparedStatement.closeInternal(DruidPooledPreparedStatement.java:209)


at com.alibaba.druid.pool.DruidPooledConnection.closePoolableStatement(DruidPooledConnection.java:205)


at com.alibaba.druid.pool.DruidPooledPreparedStatement.close(DruidPooledPreparedStatement.java:201)


at org.apache.ibatis.executor.BaseExecutor.closeStatement(BaseExecutor.java:289)


at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:67)


at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:336)


at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:158)


at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:81)


at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:59)


at jdk.proxy2/jdk.proxy2.$Proxy259.query(Unknown Source)


at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:154)


at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147)


at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:142)


at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)


at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)


at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)


at java.base/java.lang.reflect.Method.invoke(Method.java:568)


at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:333)


at jdk.proxy2/jdk.proxy2.$Proxy141.selectList(Unknown Source)


at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:194)


at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:164)


at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:77)


at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:156)


at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:93)


at jdk.proxy2/jdk.proxy2.$Proxy163.seriesVariableHistoryAll(Unknown Source)


at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)


at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)


at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)


at java.base/java.lang.reflect.Method.invoke(Method.java:568)


at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:360)


at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:196)


at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)


at com.baomidou.dynamic.datasource.aop.DynamicDataSourceAnnotationInterceptor.invoke(DynamicDataSourceAnnotationInterceptor.java:57)


at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184)


at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:223)


at jdk.proxy2/jdk.proxy2.$Proxy164.seriesVariableHistoryAll(Unknown Source)


at org.springblade.modules.data.service.impl.SeriesVariableRecordServiceImpl.seriesVariableHistoryLines(SeriesVariableRecordServiceImpl.java:78)


at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)


at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)


at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)


at java.base/java.lang.reflect.Method.invoke(Method.java:568)


at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:360)


at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:724)


at org.springblade.modules.data.service.impl.SeriesVariableRecordServiceImpl$$SpringCGLIB$$0.seriesVariableHistoryLines(<generated>)


at org.springblade.modules.data.service.impl.StationDataServiceImpl.listHistorySerial(StationDataServiceImpl.java:211)


at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)


at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)


at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)


at java.base/java.lang.reflect.Method.invoke(Method.java:568)


at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:360)


at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:724)


at org.springblade.modules.data.service.impl.StationDataServiceImpl$$SpringCGLIB$$0.listHistorySerial(<generated>)


at org.springblade.modules.equip.controller.StationDataController.historySerialData(StationDataController.java:85)


at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)


at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)


at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)


at java.base/java.lang.reflect.Method.invoke(Method.java:568)


at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:360)


at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:196)


at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)


at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89)


at org.springblade.core.log.aspect.RequestLogAspect.aroundApi(RequestLogAspect.java:128)


at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)


at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)


at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)


at java.base/java.lang.reflect.Method.invoke(Method.java:568)


at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:649)


at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:631)


at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:71)


at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:173)


at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)


at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184)


at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:728)


at org.springblade.modules.equip.controller.StationDataController$$SpringCGLIB$$0.historySerialData(<generated>)


at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)


at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)


at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)


at java.base/java.lang.reflect.Method.invoke(Method.java:568)


at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:258)


at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:191)


at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118)


at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:991)


at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:896)


at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)


at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089)


at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979)


at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014)


at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914)


at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:653)


at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885)


at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:723)


at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)


at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)


at org.springframework.web.servlet.resource.ResourceUrlEncodingFilter.doFilter(ResourceUrlEncodingFilter.java:66)


at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)


at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)


at org.springblade.core.log.filter.LogTraceFilter.doFilter(LogTraceFilter.java:48)


at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)


at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)


at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)


at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)


at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)


at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)


at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)


at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)


at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)


at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)


at org.springframework.session.web.http.SessionRepositoryFilter.doFilterInternal(SessionRepositoryFilter.java:142)


at org.springframework.session.web.http.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:82)


at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:362)


at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:278)


at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)


at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)


at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)


at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)


at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)


at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)


at org.springblade.core.boot.request.BladeRequestFilter.doFilter(BladeRequestFilter.java:94)


at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)


at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)


at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)


at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)


at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)


at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)


at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)


at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)


at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)


at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)


at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)


at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)


at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)


at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:75)


at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)


at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)


at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)


at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)


at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:271)


at io.undertow.servlet.handlers.ServletInitialHandler$1.call(ServletInitialHandler.java:130)


at io.undertow.servlet.handlers.ServletInitialHandler$1.call(ServletInitialHandler.java:127)


at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)


at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)


at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:251)


at io.undertow.servlet.handlers.ServletInitialHandler.lambda$new$1(ServletInitialHandler.java:99)


at io.undertow.server.Connectors.executeRootHandler(Connectors.java:395)


at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:896)


at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)


at org.jboss.threads.EnhancedQueueExecutor$Task.doRunWith(EnhancedQueueExecutor.java:2691)


at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2670)


at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1589)


at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)


at java.base/java.lang.Thread.run(Thread.java:842)




五、若有更多详细信息,请在下面提供。




==============  Sql Start  ==============


Execute SQL : select


        first(push_data) pushData


        from station_data.push_data


        where ts >= ? and ts <= ?


        and (is_valid is null or is_valid = true)


            and station_id = ?


            and push_identifier = ?     


        interval(1m)


Execute Time: 34.606ms


==============  Sql  End   ==============


2条回答
  •  admin
    admin (最佳回答者)
    2小时前

    blade-starter-db-dynamic 支持的是普通关系型数据库,不支持时序库

    0 讨论(1)
  • 1小时前

    看样子是 druid 连接池的监控那些不支持,可以把 druid 的 StatFilter 这些给关掉,bladex links 里 td 的连接池 也是用的 druid,查询是可以的,手动初始化的连接池,没加这些 filter

    0 讨论(0)
提交回复