Skip to content

Commit

Permalink
Enable Safe Composition of Metadata for ShardingSphere Proxy Native
Browse files Browse the repository at this point in the history
  • Loading branch information
linghengqian committed Oct 9, 2024
1 parent 5ec883d commit c4e1152
Show file tree
Hide file tree
Showing 18 changed files with 1,002 additions and 46 deletions.
1 change: 1 addition & 0 deletions RELEASE-NOTES.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
1. DistSQL: Support running DistSQL under Proxy Native in the form of GraalVM Native Image - [#33095](https://github.com/apache/shardingsphere/pull/33095)
1. DistSQL: Support connecting to Postgres via DistSQL in Proxy Native - [#33124](https://github.com/apache/shardingsphere/pull/33124)
1. DistSQL: Check duplicate actual data nodes when creating or altering sharding table rule - [#33138](https://github.com/apache/shardingsphere/pull/33138)
1. Infra: Enable Safe Composition of Metadata for ShardingSphere Proxy Native

### Bug Fix

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -484,7 +484,7 @@ sudo apt-get install build-essential zlib1g-dev -y
git clone [email protected]:apache/shardingsphere.git
cd ./shardingsphere/
./mvnw -PnativeTestInShardingSphere -e clean test
./mvnw -PnativeTestInShardingSphere -e -T 1C clean test
```

当贡献者发现缺少与 ShardingSphere 无关的第三方库的 GraalVM Reachability Metadata 时,应当在
Expand Down Expand Up @@ -513,10 +513,5 @@ Reachability Metadata 位于 `shardingsphere-infra-reachability-metadata` 子模
```bash
git clone [email protected]:apache/shardingsphere.git
cd ./shardingsphere/
./mvnw -PgenerateMetadata -DskipNativeTests -e clean test native:metadata-copy
./mvnw -PgenerateMetadata -DskipNativeTests -e -T 1C clean test native:metadata-copy
```

在使用 GraalVM Native Build Tools 的 Maven Plugin 时,
贡献者应避免使用 Maven 的并行构建功能。
GraalVM Native Build Tools 的 Maven Plugin并不是线程安全的,
它与 https://cwiki.apache.org/confluence/display/MAVEN/Parallel+builds+in+Maven+3 不兼容。
Original file line number Diff line number Diff line change
Expand Up @@ -502,7 +502,7 @@ sudo apt-get install build-essential zlib1g-dev -y
git clone [email protected]:apache/shardingsphere.git
cd ./shardingsphere/
./mvnw -PnativeTestInShardingSphere -e clean test
./mvnw -PnativeTestInShardingSphere -e -T 1C clean test
```

When contributors discover that GraalVM Reachability Metadata is missing for a third-party library not related to ShardingSphere,
Expand Down Expand Up @@ -532,8 +532,5 @@ contributors should place it on the classpath of the `shardingsphere-test-native
```bash
git clone [email protected]:apache/shardingsphere.git
cd ./shardingsphere/
./mvnw -PgenerateMetadata -DskipNativeTests -e clean test native:metadata-copy
./mvnw -PgenerateMetadata -DskipNativeTests -e -T 1C clean test native:metadata-copy
```

Contributors should avoid using Maven's parallel builds feature when using the Maven Plugin for GraalVM Native Build Tools.
The Maven Plugin for GraalVM Native Build Tools is not thread-safe and is incompatible with https://cwiki.apache.org/confluence/display/MAVEN/Parallel+builds+in+Maven+3 .
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,11 @@
"name":"ch.qos.logback.core.OutputStreamAppender",
"methods":[{"name":"setEncoder","parameterTypes":["ch.qos.logback.core.encoder.Encoder"] }]
},
{
"condition":{"typeReachable":"ch.qos.logback.core.joran.action.NestedComplexPropertyIA"},
"name":"ch.qos.logback.core.encoder.Encoder",
"methods":[{"name":"valueOf","parameterTypes":["java.lang.String"] }]
},
{
"condition":{"typeReachable":"ch.qos.logback.core.joran.util.PropertySetter"},
"name":"ch.qos.logback.core.encoder.LayoutWrappingEncoder",
Expand All @@ -64,6 +69,11 @@
"name":"ch.qos.logback.core.pattern.PatternLayoutEncoderBase",
"methods":[{"name":"setPattern","parameterTypes":["java.lang.String"] }]
},
{
"condition":{"typeReachable":"ch.qos.logback.core.joran.action.NestedComplexPropertyIA"},
"name":"ch.qos.logback.core.spi.ContextAware",
"methods":[{"name":"valueOf","parameterTypes":["java.lang.String"] }]
},
{
"condition":{"typeReachable":"ch.qos.logback.core.joran.action.StatusListenerAction"},
"name":"ch.qos.logback.core.status.NopStatusListener",
Expand Down

This file was deleted.

Loading

0 comments on commit c4e1152

Please sign in to comment.