duzhanfei commented on issue #8314:
URL: https://github.com/apache/shardingsphere/issues/8314#issuecomment-732957857


   I only test the data sharding ,the result is the same
   
   the config of  config-sharding.yaml is show below:
   
   
   schemaName: sharding_db
   
   dataSourceCommon:
     connectionTimeoutMilliseconds: 30000
     idleTimeoutMilliseconds: 60000
     maxLifetimeMilliseconds: 1800000
     maxPoolSize: 50
     minPoolSize: 1
     maintenanceIntervalMilliseconds: 30000
   
   dataSources:
     ms_ds:
       url: 
jdbc:mysql://19.11.17.33:3306/crm_customer_db_master0?serverTimezone=UTC&useSSL=false
       username: root
       password: root
   
   rules:
   - !SHARDING
     tables:
       bcpur_pscst_deptp_stats:
         actualDataNodes: ms_ds.bcpur_pscst_deptp_stats_${0..15}
         tableStrategy:
           standard:
             shardingColumn: ecif_cust_no
             shardingAlgorithmName: bcpur_pscst_deptp_stats_inline
         keyGenerateStrategy:
           column: ecif_cust_no
           keyGeneratorName: snowflake
   
     defaultDatabaseStrategy:
       standard:
         shardingColumn: ecif_cust_no
         shardingAlgorithmName: database_default_inline
     defaultTableStrategy:
       none:
   
     shardingAlgorithms:
       database_default_inline:
         type: INLINE
         props:
           algorithm-expression: ms_ds
       database_inline:
         type: INLINE
         props:
           algorithm-expression: ms_ds
       bcpur_pscst_deptp_stats_inline:
         type: INLINE
         props:
           algorithm-expression: 
bcpur_pscst_deptp_stats_${Math.abs(ecif_cust_no.hashCode() % 16)}
   
     keyGenerators:
       snowflake:
         type: SNOWFLAKE
         props:
           worker-id: 123
   
   request infomation:
   
   <img width="729" alt="00000000" 
src="https://user-images.githubusercontent.com/46663706/100097610-b82f9e80-2e97-11eb-9bf4-2cd00dcb3216.png";>
   
   
   log:
   
   [INFO ] 20:48:16.658 [ShardingSphere-Command-3] ShardingSphere-SQL - Logic 
SQL: SELECT @@session.transaction_read_only
   [INFO ] 20:48:16.658 [ShardingSphere-Command-3] ShardingSphere-SQL - 
SQLStatement: MySQLSelectStatement(limit=Optional.empty, lock=Optional.empty)
   [INFO ] 20:48:16.661 [ShardingSphere-Command-3] ShardingSphere-SQL - Actual 
SQL: ms_ds ::: SELECT @@session.transaction_read_only
   [INFO ] 20:48:16.681 [ShardingSphere-Command-4] ShardingSphere-SQL - Logic 
SQL: SELECT @@session.transaction_isolation
   [INFO ] 20:48:16.685 [ShardingSphere-Command-4] ShardingSphere-SQL - 
SQLStatement: MySQLSelectStatement(limit=Optional.empty, lock=Optional.empty)
   [INFO ] 20:48:16.685 [ShardingSphere-Command-4] ShardingSphere-SQL - Actual 
SQL: ms_ds ::: SELECT @@session.transaction_isolation
   [ERROR] 20:48:17.175 [ShardingSphere-Command-5] 
o.a.s.p.f.c.CommandExecutorTask - Exception occur:
   java.lang.NullPointerException: Cannot invoke method hashCode() on null 
object
           at 
org.codehaus.groovy.runtime.NullObject.hashCode(NullObject.java:174)
           at org.codehaus.groovy.runtime.NullObject$hashCode.call(Unknown 
Source)
           at 
org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47)
           at 
org.codehaus.groovy.runtime.callsite.NullCallSite.call(NullCallSite.java:34)
           at 
org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47)
           at 
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116)
           at 
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:120)
           at Script24$_run_closure1.doCall(Script24.groovy:1)
           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
           at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
           at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
           at java.lang.reflect.Method.invoke(Unknown Source)
           at 
org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:98)
           at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
           at 
org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:264)
           at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1034)
           at groovy.lang.Closure.call(Closure.java:420)
           at groovy.lang.Closure.call(Closure.java:414)
           at 
org.apache.shardingsphere.sharding.algorithm.sharding.inline.InlineShardingAlgorithm.doSharding(InlineShardingAlgorithm.java:69)
           at 
org.apache.shardingsphere.sharding.route.strategy.type.standard.StandardShardingStrategy.doSharding(StandardShardingStrategy.java:67)
           at 
org.apache.shardingsphere.sharding.route.strategy.type.standard.StandardShardingStrategy.doSharding(StandardShardingStrategy.java:56)
           at 
org.apache.shardingsphere.sharding.route.engine.type.standard.ShardingStandardRoutingEngine.routeTables(ShardingStandardRoutingEngine.java:214)
           at 
org.apache.shardingsphere.sharding.route.engine.type.standard.ShardingStandardRoutingEngine.route0(ShardingStandardRoutingEngine.java:194)
           at 
org.apache.shardingsphere.sharding.route.engine.type.standard.ShardingStandardRoutingEngine.routeByShardingConditionsWithCondition(ShardingStandardRoutingEngine.java:114)
           at 
org.apache.shardingsphere.sharding.route.engine.type.standard.ShardingStandardRoutingEngine.routeByShardingConditions(ShardingStandardRoutingEngine.java:107)
           at 
org.apache.shardingsphere.sharding.route.engine.type.standard.ShardingStandardRoutingEngine.getDataNodes(ShardingStandardRoutingEngine.java:84)
           at 
org.apache.shardingsphere.sharding.route.engine.type.standard.ShardingStandardRoutingEngine.route(ShardingStandardRoutingEngine.java:69)
           at 
org.apache.shardingsphere.sharding.route.engine.ShardingSQLRouter.createRouteContext(ShardingSQLRouter.java:70)
           at 
org.apache.shardingsphere.sharding.route.engine.ShardingSQLRouter.createRouteContext(ShardingSQLRouter.java:55)
           at 
org.apache.shardingsphere.infra.route.engine.impl.PartialSQLRouteExecutor.route(PartialSQLRouteExecutor.java:59)
           at 
org.apache.shardingsphere.infra.route.engine.SQLRouteEngine.route(SQLRouteEngine.java:57)
           at 
org.apache.shardingsphere.infra.context.kernel.KernelProcessor.generateExecutionContext(KernelProcessor.java:52)
           at 
org.apache.shardingsphere.proxy.backend.communication.jdbc.JDBCDatabaseCommunicationEngine.execute(JDBCDatabaseCommunicationEngine.java:77)
           at 
org.apache.shardingsphere.proxy.backend.text.query.QueryBackendHandler.execute(QueryBackendHandler.java:61)
           at 
org.apache.shardingsphere.proxy.frontend.mysql.command.query.text.query.MySQLComQueryPacketExecutor.execute(MySQLComQueryPacketExecutor.java:62)
           at 
org.apache.shardingsphere.proxy.frontend.command.CommandExecutorTask.executeCommand(CommandExecutorTask.java:100)
           at 
org.apache.shardingsphere.proxy.frontend.command.CommandExecutorTask.run(CommandExecutorTask.java:76)
           at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
           at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
           at java.lang.Thread.run(Unknown Source)
   


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