RaigorJiang opened a new issue, #27927:
URL: https://github.com/apache/shardingsphere/issues/27927
## Bug Report
### Which version of ShardingSphere did you use?
master 73a3e3d04edf9c8dfc88fb6710e483d8433f6a9b
### Which project did you use? ShardingSphere-JDBC or ShardingSphere-Proxy?
ShardingSphere-Proxy
### Expected behavior
null values are not persisted
### Actual behavior
Null values are persisted, causing restart exceptions
#### yaml
```
databaseName: encrypt_db
dataSources:
unique_ds:
url:
jdbc:mysql://localhost:3306/demo_ds?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=UTF-8
username: root
password: 123456
```
#### persisted value
```yaml
password: '123456'
minPoolSize: null
connectionTimeoutMilliseconds: null
maxLifetimeMilliseconds: null
dataSourceClassName: com.zaxxer.hikari.HikariDataSource
readOnly: null
idleTimeoutMilliseconds: null
maxPoolSize: null
url:
jdbc:mysql://localhost:3306/demo_ds?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=UTF-8
username: root
```
#### log
```
Exception in thread "main" java.lang.NumberFormatException: For input
string: "null"
at
java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:67)
at java.base/java.lang.Long.parseLong(Long.java:711)
at java.base/java.lang.Long.valueOf(Long.java:1163)
at
org.apache.shardingsphere.infra.datasource.props.DataSourcePropertiesCreator.getPoolConfiguration(DataSourcePropertiesCreator.java:147)
at
org.apache.shardingsphere.infra.datasource.props.DataSourcePropertiesCreator.createConfiguration(DataSourcePropertiesCreator.java:135)
at
org.apache.shardingsphere.metadata.persist.NewMetaDataPersistService.lambda$getEffectiveDataSources$2(NewMetaDataPersistService.java:151)
at
java.base/java.util.stream.Collectors.lambda$toMap$68(Collectors.java:1674)
at
java.base/java.util.stream.ReduceOps$3ReducingSink.accept(ReduceOps.java:169)
at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133)
at
java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1845)
at
java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
at
java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
at
java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921)
at
java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at
java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682)
at
org.apache.shardingsphere.metadata.persist.NewMetaDataPersistService.getEffectiveDataSources(NewMetaDataPersistService.java:150)
at
org.apache.shardingsphere.mode.metadata.NewMetaDataContextsFactory.createEffectiveDatabaseConfiguration(NewMetaDataContextsFactory.java:121)
at
org.apache.shardingsphere.mode.metadata.NewMetaDataContextsFactory.lambda$createEffectiveDatabaseConfigurations$1(NewMetaDataContextsFactory.java:116)
at
java.base/java.util.stream.Collectors.lambda$toMap$68(Collectors.java:1674)
at
java.base/java.util.stream.ReduceOps$3ReducingSink.accept(ReduceOps.java:169)
at
java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at
java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
at
java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
at
java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921)
at
java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at
java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682)
at
org.apache.shardingsphere.mode.metadata.NewMetaDataContextsFactory.createEffectiveDatabaseConfigurations(NewMetaDataContextsFactory.java:115)
```
--
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:
[email protected]
For queries about this service, please contact Infrastructure at:
[email protected]