You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by "xcmonline (via GitHub)" <gi...@apache.org> on 2024/07/30 10:13:57 UTC
[I] org.yaml.snakeyaml.constructor.ConstructorException: Cannot create property=rules for JavaBean=org.apache.shardingsphere.driver.api.yaml.YamlJDBCConfiguration [shardingsphere]
xcmonline opened a new issue, #32336:
URL: https://github.com/apache/shardingsphere/issues/32336
## Bug Report
**For English only**, other languages will not accept.
shardingsphere-jdbc 5.5.0
springboot 2.7.18
mybatis-plus 3.5.7
druid 1.2.23
snakeyaml 2.2
`
<dependency>
<groupId>org.apache.shardingsphere</groupId>
<artifactId>shardingsphere-jdbc</artifactId>
<version>${shardingsphere-jdbc.version}</version>
<exclusions>
<exclusion>
<groupId>org.apache.shardingsphere</groupId>
<artifactId>shardingsphere-test-util</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- https://mvnrepository.com/artifact/org.yaml/snakeyaml -->
<dependency>
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
<version>${snakeyaml.version}</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>${mybatis-plus-spring-boot.version}</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>${druid.version}</version>
</dependency>
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
<version>${mysql-connector.version}</version>
</dependency>
`
application.yml
`
spring:
main:
allow-bean-definition-overriding: true
datasource:
driver-class-name: org.apache.shardingsphere.driver.ShardingSphereDriver
url: jdbc:shardingsphere:classpath:sharding.yml
`
sharding.yml
`
dataSources:
master:
dataSourceClassName: com.alibaba.druid.pool.DruidDataSource
driverClassName: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://127.0.0.1:33060/test?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
username: xxx
password: xxx
slave_1:
dataSourceClassName: com.alibaba.druid.pool.DruidDataSource
driverClassName: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://127.0.0.1:6033/test01?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
username: xxx
password: xxx
rules:
- !SINGLE
tables:
- "*.*"
defaultDataSource: master
- !READWRITE_SPLITTING
dataSourceGroups:
readwrite_ds:
writeDataSourceName: master
readDataSourceNames:
- slave_1
transactionalReadQueryStrategy: PRIMARY
loadBalancerName: random
loadBalancers:
random:
type: RANDOM
- !SHARDING
tables:
obs_data:
actual-data-nodes: ds_1.obs_data_$->{2024..2999}_$->{01..12}
table-strategy:
standard:
sharding-column: obs_time
sharding-algorithm-name: obs_data_table_month_inline
key-generate-strategy:
column: id
key-generator-name: snowflake
key-generators:
snowflake:
type: SNOWFLAKE
column: id
sharding-algorithms:
obs_data_table_month_inline:
type: INLINE
props:
algorithm-expression: obs_data_$->{year(obs_time)}_$->{month(obs_time)}
mode:
type: Standalone
repository:
type: JDBC
props:
sql-show: true
`
Error Message
`
2024-07-30 18:04:55.172 ERROR 25736 --- [eate-1736424643] com.alibaba.druid.pool.DruidDataSource : create connection RuntimeException
org.yaml.snakeyaml.constructor.ConstructorException: Cannot create property=rules for JavaBean=org.apache.shardingsphere.driver.api.yaml.YamlJDBCConfiguration@424e4678
in 'reader', line 1, column 1:
dataSources:
^
Cannot create property=dataSourceGroups for JavaBean=org.apache.shardingsphere.readwritesplitting.yaml.config.YamlReadwriteSplittingRuleConfiguration@1b58a000
in 'reader', line 21, column 3:
- !READWRITE_SPLITTING
^
Unable to find property 'dataSourceGroups' on class: org.apache.shardingsphere.readwritesplitting.yaml.config.YamlReadwriteSplittingRuleConfiguration
in 'reader', line 23, column 5:
readwrite_ds:
^
in 'reader', line 17, column 1:
- !SINGLE
^
at org.yaml.snakeyaml.constructor.Constructor$ConstructMapping.constructJavaBean2ndStep(Constructor.java:283) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.constructor.Constructor$ConstructMapping.construct(Constructor.java:169) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.constructor.Constructor$ConstructYamlObject.construct(Constructor.java:320) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.constructor.BaseConstructor.constructObjectNoCheck(BaseConstructor.java:264) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.constructor.BaseConstructor.constructObject(BaseConstructor.java:247) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.constructor.BaseConstructor.constructDocument(BaseConstructor.java:201) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(BaseConstructor.java:185) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.Yaml.loadFromReader(Yaml.java:493) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.Yaml.loadAs(Yaml.java:486) ~[snakeyaml-2.2.jar:na]
at org.apache.shardingsphere.infra.util.yaml.YamlEngine.unmarshal(YamlEngine.java:73) ~[shardingsphere-infra-util-5.5.0.jar:5.5.0]
at org.apache.shardingsphere.driver.api.yaml.YamlShardingSphereDataSourceFactory.createDataSource(YamlShardingSphereDataSourceFactory.java:69) ~[shardingsphere-jdbc-5.5.0.jar:5.5.0]
at org.apache.shardingsphere.driver.jdbc.core.driver.DriverDataSourceCache.createDataSource(DriverDataSourceCache.java:55) ~[shardingsphere-jdbc-5.5.0.jar:5.5.0]
at org.apache.shardingsphere.driver.jdbc.core.driver.DriverDataSourceCache.lambda$get$0(DriverDataSourceCache.java:48) ~[shardingsphere-jdbc-5.5.0.jar:5.5.0]
at java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1708) ~[na:na]
at org.apache.shardingsphere.driver.jdbc.core.driver.DriverDataSourceCache.get(DriverDataSourceCache.java:48) ~[shardingsphere-jdbc-5.5.0.jar:5.5.0]
at org.apache.shardingsphere.driver.ShardingSphereDriver.connect(ShardingSphereDriver.java:56) ~[shardingsphere-jdbc-5.5.0.jar:5.5.0]
at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1682) ~[druid-1.2.23.jar:na]
at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1803) ~[druid-1.2.23.jar:na]
at com.alibaba.druid.pool.DruidDataSource$CreateConnectionThread.run(DruidDataSource.java:2914) ~[druid-1.2.23.jar:na]
Caused by: org.yaml.snakeyaml.constructor.ConstructorException: Cannot create property=dataSourceGroups for JavaBean=org.apache.shardingsphere.readwritesplitting.yaml.config.YamlReadwriteSplittingRuleConfiguration@1b58a000
in 'reader', line 21, column 3:
- !READWRITE_SPLITTING
^
Unable to find property 'dataSourceGroups' on class: org.apache.shardingsphere.readwritesplitting.yaml.config.YamlReadwriteSplittingRuleConfiguration
in 'reader', line 23, column 5:
readwrite_ds:
^
at org.yaml.snakeyaml.constructor.Constructor$ConstructMapping.constructJavaBean2ndStep(Constructor.java:283) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.constructor.Constructor$ConstructMapping.construct(Constructor.java:169) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.constructor.Constructor$ConstructYamlObject.construct(Constructor.java:320) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.constructor.BaseConstructor.constructObjectNoCheck(BaseConstructor.java:264) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.constructor.BaseConstructor.constructObject(BaseConstructor.java:247) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.constructor.BaseConstructor.constructSequenceStep2(BaseConstructor.java:464) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.constructor.BaseConstructor.constructSequence(BaseConstructor.java:430) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.constructor.Constructor$ConstructSequence.construct(Constructor.java:522) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.constructor.BaseConstructor.constructObjectNoCheck(BaseConstructor.java:264) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.constructor.BaseConstructor.constructObject(BaseConstructor.java:247) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.constructor.Constructor$ConstructMapping.newInstance(Constructor.java:295) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.constructor.Constructor$ConstructMapping.constructJavaBean2ndStep(Constructor.java:260) ~[snakeyaml-2.2.jar:na]
... 18 common frames omitted
Caused by: org.yaml.snakeyaml.error.YAMLException: Unable to find property 'dataSourceGroups' on class: org.apache.shardingsphere.readwritesplitting.yaml.config.YamlReadwriteSplittingRuleConfiguration
at org.yaml.snakeyaml.introspector.PropertyUtils.getProperty(PropertyUtils.java:155) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.introspector.PropertyUtils.getProperty(PropertyUtils.java:145) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.TypeDescription.discoverProperty(TypeDescription.java:166) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.TypeDescription.getProperty(TypeDescription.java:177) ~[snakeyaml-2.2.jar:na]
at org.yaml.snakeyaml.constructor.Constructor$ConstructMapping.constructJavaBean2ndStep(Constructor.java:224) ~[snakeyaml-2.2.jar:na]
... 29 common frames omitted
`
--
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.
To unsubscribe, e-mail: notifications-unsubscribe@shardingsphere.apache.org.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [I] org.yaml.snakeyaml.constructor.ConstructorException: Cannot create property=rules for JavaBean=org.apache.shardingsphere.driver.api.yaml.YamlJDBCConfiguration [shardingsphere]
Posted by "terrymanu (via GitHub)" <gi...@apache.org>.
terrymanu commented on issue #32336:
URL: https://github.com/apache/shardingsphere/issues/32336#issuecomment-2259568194
The issue involves other third-party dependencies, but our focus is solely on ShardingSphere itself. Since ShardingSphere implements the JDBC interface, standard applications should be functional. We wish to allocate more effort towards enhancing the current version, and therefore will no longer handle such issues. Please read the documentation or provide more effective information when submitting an issue.
--
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.
To unsubscribe, e-mail: notifications-unsubscribe@shardingsphere.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [I] org.yaml.snakeyaml.constructor.ConstructorException: Cannot create property=rules for JavaBean=org.apache.shardingsphere.driver.api.yaml.YamlJDBCConfiguration [shardingsphere]
Posted by "wenzhuo4657 (via GitHub)" <gi...@apache.org>.
wenzhuo4657 commented on issue #32336:
URL: https://github.com/apache/shardingsphere/issues/32336#issuecomment-3112216592
I'm really fed up. If you're going to give up on solving this issue, just say so, instead of repeatedly closing the PR.
--
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.
To unsubscribe, e-mail: notifications-unsubscribe@shardingsphere.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [I] org.yaml.snakeyaml.constructor.ConstructorException: Cannot create property=rules for JavaBean=org.apache.shardingsphere.driver.api.yaml.YamlJDBCConfiguration [shardingsphere]
Posted by "suzukua (via GitHub)" <gi...@apache.org>.
suzukua commented on issue #32336:
URL: https://github.com/apache/shardingsphere/issues/32336#issuecomment-2987452760
Your attitude towards this project determines its future @terrymanu
--
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.
To unsubscribe, e-mail: notifications-unsubscribe@shardingsphere.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [I] org.yaml.snakeyaml.constructor.ConstructorException: Cannot create property=rules for JavaBean=org.apache.shardingsphere.driver.api.yaml.YamlJDBCConfiguration [shardingsphere]
Posted by "terrymanu (via GitHub)" <gi...@apache.org>.
terrymanu closed issue #32336: org.yaml.snakeyaml.constructor.ConstructorException: Cannot create property=rules for JavaBean=org.apache.shardingsphere.driver.api.yaml.YamlJDBCConfiguration
URL: https://github.com/apache/shardingsphere/issues/32336
--
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.
To unsubscribe, e-mail: notifications-unsubscribe@shardingsphere.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [I] org.yaml.snakeyaml.constructor.ConstructorException: Cannot create property=rules for JavaBean=org.apache.shardingsphere.driver.api.yaml.YamlJDBCConfiguration [shardingsphere]
Posted by "Dr-wgy (via GitHub)" <gi...@apache.org>.
Dr-wgy commented on issue #32336:
URL: https://github.com/apache/shardingsphere/issues/32336#issuecomment-3067518785
@terrymanu why close this issue ? a lot of person encounter this issue Does it have compatibility issues between YAML versions and Sharding
--
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.
To unsubscribe, e-mail: notifications-unsubscribe@shardingsphere.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org