TeslaCN opened a new issue #8570:
URL: https://github.com/apache/shardingsphere/issues/8570


   ## Question
   
   There is a new property `exceptionOverrideClassName` in HikariCP 3.4.3. If 
the method `setExceptionOverrideClassName` was invoked with `null` value, NPE 
will occurred.
   
   ```yaml
   [zk: zk36.zk.svc.cluster.local:2181(CONNECTED) 2] get 
/shardingsphere-governance/schemas/logic_db/datasource 
   dataSources:
     dataSource:
       dataSourceClassName: com.zaxxer.hikari.HikariDataSource
       props:
         password: postgres
         transactionIsolation: null
         connectionTestQuery: null
         driverClassName: org.postgresql.Driver
         jdbcUrl: jdbc:postgresql://pg.local.wwj.icu:5432/elasticjob
         schema: null
         dataSourceClassName: null
         connectionTimeout: 30000
         idleTimeout: 600000
         exceptionOverrideClassName: null
         username: postgres
         dataSourceJNDI: null
         initializationFailTimeout: 1
         minimumIdle: 10
         maxLifetime: 1800000
         maximumPoolSize: 10
         validationTimeout: 5000
         leakDetectionThreshold: 0
         connectionInitSql: null
         poolName: HikariPool-1
         catalog: null
   ```
   
   ```java
   GovernanceCenterConfiguration centerConfiguration = 
getGovernanceCenterConfiguration();
   GovernanceConfiguration governanceConfiguration = new 
GovernanceConfiguration("shardingsphere-governance", centerConfiguration, true);
   DataSource dataSource = 
GovernanceShardingSphereDataSourceFactory.createDataSource(governanceConfiguration);
   ```
   
   ```
   java.lang.reflect.InvocationTargetException
        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.shardingsphere.infra.config.datasource.DataSourceConfiguration.createDataSource(DataSourceConfiguration.java:116)
        at 
org.apache.shardingsphere.infra.config.datasource.DataSourceConverter.lambda$getDataSourceMap$0(DataSourceConverter.java:43)
        at java.util.stream.Collectors.lambda$toMap$58(Collectors.java:1321)
        at java.util.stream.ReduceOps$3ReducingSink.accept(ReduceOps.java:169)
        at java.util.Iterator.forEachRemaining(Iterator.java:116)
        at 
java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
        at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482)
        at 
java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472)
        at 
java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
        at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
        at 
java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
        at 
org.apache.shardingsphere.infra.config.datasource.DataSourceConverter.getDataSourceMap(DataSourceConverter.java:42)
        at 
org.apache.shardingsphere.driver.governance.internal.datasource.GovernanceShardingSphereDataSource.createSchemaContexts(GovernanceShardingSphereDataSource.java:87)
        at 
org.apache.shardingsphere.driver.governance.internal.datasource.GovernanceShardingSphereDataSource.<init>(GovernanceShardingSphereDataSource.java:64)
        at 
org.apache.shardingsphere.driver.governance.api.GovernanceShardingSphereDataSourceFactory.createDataSource(GovernanceShardingSphereDataSourceFactory.java:83)
        at 
icu.wwj.shardingsphere.GovernanceTest.assertUsingConfigCenterConfiguration(GovernanceTest.java:35)
        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.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
        at 
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
        at 
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
        at 
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
        at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
        at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
        at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
        at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
        at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
        at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
        at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
        at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
        at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
        at 
com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:69)
        at 
com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:33)
        at 
com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:220)
        at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:53)
   Caused by: java.lang.NullPointerException
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
        at 
com.zaxxer.hikari.HikariConfig.attemptFromContextLoader(HikariConfig.java:945)
        at 
com.zaxxer.hikari.HikariConfig.setExceptionOverrideClassName(HikariConfig.java:853)
        ... 42 more
   ```


----------------------------------------------------------------
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:
[email protected]


Reply via email to