Apache tomcat无法创建到Apache drill的JDBC连接

Apache tomcat无法创建到Apache drill的JDBC连接,apache,hadoop,tomcat7,apache-drill,saiku,Apache,Hadoop,Tomcat7,Apache Drill,Saiku,我使用Mondrian OLAP进行分析,我们一直使用Mysql,但决定迁移到Apache drill 现在我已经配置了ApacheDrill,我能够通过外部客户端(如SQuirreL客户端)连接is到ApacheDrill,但是当我试图通过Saiku连接它时,我在Catalina.out中得到了下面的stacktrace INFO: Deploying web application directory saiku name:Lists driver:mondrian.olap4j.Mondr

我使用Mondrian OLAP进行分析,我们一直使用Mysql,但决定迁移到Apache drill

现在我已经配置了ApacheDrill,我能够通过外部客户端(如SQuirreL客户端)连接is到ApacheDrill,但是当我试图通过Saiku连接它时,我在Catalina.out中得到了下面的stacktrace

INFO: Deploying web application directory saiku
name:Lists
driver:mondrian.olap4j.MondrianOlap4jDriver
url:jdbc:mondrian:Jdbc=jdbc:drill:drillbit=localhost:31010;schema=Saiku.root;Catalog=../webapps/saiku/WEB-INF/classes/imi_India/INDIA.xml;JdbcDrivers=org.apache.drill.jdbc.Driver;
23:59:21,878 WARN  [RolapUtil] Mondrian: Warning: JDBC driver sun.jdbc.odbc.JdbcOdbcDriver not found
23:59:21,879 WARN  [RolapUtil] Mondrian: Warning: JDBC driver oracle.jdbc.OracleDriver not found
23:59:22,162 WARN  [DrillMetrics] Removing old metric since name matched newly registered metric. Metric name: drill.allocator.root.used
23:59:22,162 WARN  [DrillMetrics] Removing old metric since name matched newly registered metric. Metric name: drill.allocator.root.peak
23:59:25,246 WARN  [ThreadLocalRandom] Failed to generate a seed from SecureRandom within 3 seconds. Not enough entrophy?
mondrian.olap.MondrianException: Mondrian Error:Internal error: Error while creating SQL connection: Jdbc=jdbc:drill:drillbit=localhost:31010; JdbcUser=admin; JdbcPassword=admin
        at mondrian.resource.MondrianResource$_Def0.ex(MondrianResource.java:972)
        at mondrian.olap.Util.newInternal(Util.java:2403)
        at mondrian.olap.Util.newError(Util.java:2419)
        at mondrian.rolap.RolapConnection.<init>(RolapConnection.java:246)
        at mondrian.rolap.RolapSchema.<init>(RolapSchema.java:188)
        at mondrian.rolap.RolapSchema.<init>(RolapSchema.java:216)
        at mondrian.rolap.RolapSchemaPool.get(RolapSchemaPool.java:214)
        at mondrian.rolap.RolapSchemaPool.get(RolapSchemaPool.java:66)
        at mondrian.rolap.RolapConnection.<init>(RolapConnection.java:160)
        at mondrian.rolap.RolapConnection.<init>(RolapConnection.java:90)
        at mondrian.olap.DriverManager.getConnection(DriverManager.java:112)
        at mondrian.olap.DriverManager.getConnection(DriverManager.java:68)
        at mondrian.olap4j.MondrianOlap4jConnection.<init>(MondrianOlap4jConnection.java:153)
        at mondrian.olap4j.FactoryJdbc4Plus$AbstractConnection.<init>(FactoryJdbc4Plus.java:323)
        at mondrian.olap4j.FactoryJdbc41Impl$MondrianOlap4jConnectionJdbc41.<init>(FactoryJdbc41Impl.java:118)
        at mondrian.olap4j.FactoryJdbc41Impl.newConnection(FactoryJdbc41Impl.java:32)
        at mondrian.olap4j.MondrianOlap4jDriver.connect(MondrianOlap4jDriver.java:134)
        at java.sql.DriverManager.getConnection(DriverManager.java:664)
        at java.sql.DriverManager.getConnection(DriverManager.java:247)
        at org.saiku.datasources.connection.SaikuOlapConnection.connect(SaikuOlapConnection.java:75)
        at org.saiku.datasources.connection.SaikuOlapConnection.connect(SaikuOlapConnection.java:46)
        at org.saiku.datasources.connection.SaikuConnectionFactory.getConnection(SaikuConnectionFactory.java:29)
        at org.saiku.web.impl.SecurityAwareConnectionManager.connect(SecurityAwareConnectionManager.java:284)
        at org.saiku.web.impl.SecurityAwareConnectionManager.getInternalConnection(SecurityAwareConnectionManager.java:99)
        at org.saiku.datasources.connection.AbstractConnectionManager.getConnection(AbstractConnectionManager.java:110)
        at org.saiku.datasources.connection.AbstractConnectionManager.getAllConnections(AbstractConnectionManager.java:136)
        at org.saiku.web.impl.SecurityAwareConnectionManager.init(SecurityAwareConnectionManager.java:58)
        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 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1536)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1409)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:574)
        at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
        at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:276)
        at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:197)
        at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
        at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3972)
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:4467)
        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:526)
        at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1041)
        at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:964)
        at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:502)
        at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1277)
        at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:321)
        at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
        at org.apache.catalina.core.StandardHost.start(StandardHost.java:722)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
        at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
        at org.apache.catalina.core.StandardService.start(StandardService.java:516)
        at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:593)
        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 org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Caused by: org.apache.commons.dbcp.SQLNestedException: Cannot get a connection, pool error Could not create a validated object, cause: null
        at org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:104)
        at mondrian.rolap.RolapConnection.<init>(RolapConnection.java:226)
        ... 66 more
Caused by: java.util.NoSuchElementException: Could not create a validated object, cause: null
        at org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:1008)
        at org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:96)
        ... 67 more
INFO:部署web应用程序目录saiku
名称:列表
司机:mondrian.olap4j.MondrianOlap4jDriver
url:jdbc:mondrian:jdbc=jdbc:drill:drillbit=localhost:31010;schema=Saiku.root;Catalog=../webapps/saiku/WEB-INF/classes/imi_India/India.xml;JdbcDrivers=org.apache.drill.jdbc.Driver;
23:59:21878警告[RolapUtil]蒙德里安:警告:未找到JDBC驱动程序sun.JDBC.odbc.JdbcOdbcDriver
23:59:21879警告[RolapUtil]蒙德里安:警告:未找到JDBC驱动程序oracle.JDBC.OracleDriver
23:59:22162警告[DrillMetrics]正在删除旧度量,因为名称与新注册的度量匹配。度量名称:drill.allocator.root.used
23:59:22162警告[DrillMetrics]正在删除旧度量,因为名称与新注册的度量匹配。度量名称:drill.allocator.root.peak
23:59:25246警告[ThreadLocalRandom]未能在3秒内从SecureRandom生成种子。还不够营养?
mondrian.olap.MondrianException:mondrian错误:内部错误:创建SQL连接时出错:Jdbc=Jdbc:drill:drillbit=localhost:31010;JdbcUser=admin;JdbcPassword=admin
位于mondrian.resource.MondrianResource$_Def0.ex(MondrianResource.java:972)
位于mondrian.olap.Util.newInternal(Util.java:2403)
位于mondrian.olap.Util.newError(Util.java:2419)
位于mondrian.rolap.RolapConnection.(RolapConnection.java:246)
在mondrian.rolap.RolapSchema.(RolapSchema.java:188)
在mondrian.rolap.RolapSchema.(RolapSchema.java:216)
在mondrian.rolap.rolapschemapol.get(rolapschemapol.java:214)
在mondrian.rolap.rolapschemapol.get(rolapschemapol.java:66)
位于mondrian.rolap.RolapConnection.(RolapConnection.java:160)
位于mondrian.rolap.RolapConnection.(RolapConnection.java:90)
位于mondrian.olap.DriverManager.getConnection(DriverManager.java:112)
位于mondrian.olap.DriverManager.getConnection(DriverManager.java:68)
位于mondrian.olap4j.MondrianOlap4jConnection。(MondrianOlap4jConnection.java:153)
位于mondrian.olap4j.FactoryJdbc4Plus$AbstractConnection。(FactoryJdbc4Plus.java:323)
在mondrian.olap4j.FactoryJdbc41Impl$MondrianOlap4jConnectionJdbc41。(FactoryJdbc41Impl.java:118)
位于mondrian.olap4j.FactoryJdbc41Impl.newConnection(FactoryJdbc41Impl.java:32)
位于mondrian.olap4j.MondrianOlap4jDriver.connect(MondrianOlap4jDriver.java:134)
位于java.sql.DriverManager.getConnection(DriverManager.java:664)
位于java.sql.DriverManager.getConnection(DriverManager.java:247)
位于org.saiku.datasources.connection.saikolapconnection.connect(saikolapconnection.java:75)
位于org.saiku.datasources.connection.saikolapconnection.connect(saikolapconnection.java:46)
位于org.saiku.datasources.connection.SaikuConnectionFactory.getConnection(SaikuConnectionFactory.java:29)
位于org.saiku.web.impl.SecurityAwareConnectionManager.connect(SecurityAwareConnectionManager.java:284)
位于org.saiku.web.impl.SecurityAwareConnectionManager.getInternalConnection(SecurityAwareConnectionManager.java:99)
位于org.saiku.datasources.connection.AbstractConnectionManager.getConnection(AbstractConnectionManager.java:110)
位于org.saiku.datasources.connection.AbstractConnectionManager.getAllConnections(AbstractConnectionManager.java:136)
位于org.saiku.web.impl.SecurityAwareConnectionManager.init(SecurityAwareConnectionManager.java:58)
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
位于sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中
位于java.lang.reflect.Method.invoke(Method.java:497)
位于org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.InvokeCustominetMethod(AbstractAutowireCapableBeanFactory.java:1536)
位于org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477)
位于org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1409)
位于org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
位于org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
位于org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
位于org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
位于org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
位于org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
位于org.springframework.beans.factory.support.DefaultListableBeanFactory.PreInstanceSingleton(DefaultListableBeanFactory.java:574)
位于org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
位于org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
位于org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:276)
位于org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:197)
位于org.springframework.web.context.ContextLoaderListene
<dependency>
<groupId>org.apache.drill.exec</groupId>
<artifactId>drill-jdbc</artifactId>
<version>1.1.0</version>
</dependency>