QwQyewen opened a new issue #9344:
URL: https://github.com/apache/shardingsphere/issues/9344


   ## Bug Report
   Recently I found that there are some errors in the official documents. The 
configuration according to the official documents will cause our program to not 
run normally.
   The following configuration  according to the official documents will cause 
an error:java.util.NoSuchElementException: No value bound
   
   spring.shardingsphere.datasource.ds0.type=com.zaxxer.hikari.HikariDataSource
   spring.shardingsphere.datasource.ds0.driver-class-name=com.mysql.jdbc.Driver
   
spring.shardingsphere.datasource.ds0.jdbc-url=jdbc:mysql://localhost:3306/ds0?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=UTF-8
   spring.shardingsphere.datasource.ds0.username=root
   spring.shardingsphere.datasource.ds0.password=
   
   
   ### Which version of ShardingSphere did you use?
   5.0.0-alpha
   
   ### Which project did you use? ShardingSphere-JDBC or ShardingSphere-Proxy?
   ShardingSphere-JDBC 
   ### Expected behavior
   
   ### Actual behavior
   java.util.NoSuchElementException: No value bound
   ### Reason analyze (If you can)
   The correct configuration should be:
   
spring.shardingsphere.datasource.common.type=com.zaxxer.hikari.HikariDataSource
   
spring.shardingsphere.datasource.common.driver-class-name=com.mysql.cj.jdbc.Driver
   
spring.shardingsphere.datasource.ds0.jdbc-url=jdbc:mysql://localhost:3306/ds0?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=UTF-8
   spring.shardingsphere.datasource.ds0.username=root
   spring.shardingsphere.datasource.ds0.password=
   
   In addition, lack of configuration can still cause this errors. So we have 
to add the following configuration:
   
   
spring.shardingsphere.rules.sharding.tables.t_order.key-generate-strategy.key-generator-name=snowflake
   spring.shardingsphere.rules.sharding.key-generators.snowflake.type=SNOWFLAKE
   
spring.shardingsphere.rules.sharding.tables.t_order.key-generate-strategy.column=id
   
spring.shardingsphere.rules.sharding.key-generators.snowflake.props.worker-id=123
   
   **Complete and correct configuration:**
   spring.shardingsphere.datasource.names=ds0,ds1
   
   
spring.shardingsphere.datasource.common.type=com.alibaba.druid.pool.DruidDataSource
   
spring.shardingsphere.datasource.common.driver-class-name=com.mysql.cj.jdbc.Driver
   
spring.shardingsphere.datasource.ds0.url=jdbc:mysql://127.0.0.1:3306/ds0?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=UTF-8
   spring.shardingsphere.datasource.ds0.username=root
   spring.shardingsphere.datasource.ds0.password=root
   
   
spring.shardingsphere.datasource.ds1.url=jdbc:mysql://127.0.0.1:3306/ds1?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=UTF-8
   spring.shardingsphere.datasource.ds1.username=root
   spring.shardingsphere.datasource.ds2.password=root
   
   spring.shardingsphere.rules.sharding.binding-tables=t_order
   
spring.shardingsphere.rules.sharding.tables.t_order.actual-data-nodes=ds$->{0..1}.t_order_$->{0..1}
   
spring.shardingsphere.rules.sharding.database-strategy.inline.sharding-column=user_id
   
spring.shardingsphere.rules.sharding.database-strategy.inline.sharding-algorithm-name=database-inline
   
spring.shardingsphere.rules.sharding.sharding-algorithms.database-inline.type=INLINE
   
spring.shardingsphere.rules.sharding.sharding-algorithms.database-inline.props.algorithm-expression=ds-$->{user_id
 % 2}
   
   
spring.shardingsphere.rules.sharding.tables.t_order.table-strategy.inline.sharding-column=order_id
   
spring.shardingsphere.rules.sharding.tables.t_order.table-strategy.inline.sharding-algorithm-name=table-inline
   
spring.shardingsphere.rules.sharding.sharding-algorithms.table-inline.type=INLINE
   
spring.shardingsphere.rules.sharding.sharding-algorithms.table-inline.props.algorithm-expression=t_order_$->{order_id
 % 2}
   
   
   
spring.shardingsphere.rules.sharding.tables.t_order.key-generate-strategy.key-generator-name=snowflake
   spring.shardingsphere.rules.sharding.key-generators.snowflake.type=SNOWFLAKE
   
spring.shardingsphere.rules.sharding.tables.t_order.key-generate-strategy.column=id
   
spring.shardingsphere.rules.sharding.key-generators.snowflake.props.worker-id=123
   ### Steps to reproduce the behavior, such as: SQL to execute, sharding rule 
configuration, when exception occur etc.
   
   ### Example codes for reproduce this issue (such as a github link).
   


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