You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by "merlimat (via GitHub)" <gi...@apache.org> on 2024/03/09 00:12:02 UTC
[PR] Removed unnecessary native libraries from Docker images [pulsar]
merlimat opened a new pull request, #22230:
URL: https://github.com/apache/pulsar/pull/22230
### Motivation
The RocksDB jar that we are including in our Docker image is ~55 MB in size because it includes native library of RocksDB compiled for many different platforms.
In reality, our Docker image is going to be used exactly on one single platorm, either `linux/x86-64` or `linux/arm64`.
Therefore we can remove all the other RocksDB compiled libraries from the image. The resulting RocksDB jar is shrunk to 4.6 MB.
Similarly, we can remove Netty TC natives jar that are not relevant for the container.
### Modifications
Added a script to remove the unnecessary libraries.
### Verifying this change
- [ ] Make sure that the change passes the CI checks.
*(Please pick either of the following options)*
This change is a trivial rework / code cleanup without any test coverage.
*(or)*
This change is already covered by existing tests, such as *(please describe tests)*.
*(or)*
This change added tests and can be verified as follows:
*(example:)*
- *Added integration tests for end-to-end deployment with large payloads (10MB)*
- *Extended integration test for recovery after broker failure*
### Does this pull request potentially affect one of the following parts:
<!-- DO NOT REMOVE THIS SECTION. CHECK THE PROPER BOX ONLY. -->
*If the box was checked, please highlight the changes*
- [ ] Dependencies (add or upgrade a dependency)
- [ ] The public API
- [ ] The schema
- [ ] The default values of configurations
- [ ] The threading model
- [ ] The binary protocol
- [ ] The REST endpoints
- [ ] The admin CLI options
- [ ] The metrics
- [ ] Anything that affects deployment
### Documentation
<!-- DO NOT REMOVE THIS SECTION. CHECK THE PROPER BOX ONLY. -->
- [ ] `doc` <!-- Your PR contains doc changes. -->
- [ ] `doc-required` <!-- Your PR changes impact docs and you will update later -->
- [X] `doc-not-needed` <!-- Your PR changes do not impact docs -->
- [ ] `doc-complete` <!-- Docs have been already added -->
### Matching PR in forked repository
PR in forked repository: <!-- ENTER URL HERE -->
<!--
After opening this PR, the build in apache/pulsar will fail and instructions will
be provided for opening a PR in the PR author's forked repository.
apache/pulsar pull requests should be first tested in your own fork since the
apache/pulsar CI based on GitHub Actions has constrained resources and quota.
GitHub Actions provides separate quota for pull requests that are executed in
a forked repository.
The tests will be run in the forked repository until all PR review comments have
been handled, the tests pass and the PR is approved by a reviewer.
-->
--
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: commits-unsubscribe@pulsar.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] [improve] Removed unnecessary native libraries from Docker images [pulsar]
Posted by "lhotari (via GitHub)" <gi...@apache.org>.
lhotari merged PR #22230:
URL: https://github.com/apache/pulsar/pull/22230
--
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: commits-unsubscribe@pulsar.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] [improve] Removed unnecessary native libraries from Docker images [pulsar]
Posted by "merlimat (via GitHub)" <gi...@apache.org>.
merlimat commented on code in PR #22230:
URL: https://github.com/apache/pulsar/pull/22230#discussion_r1519090440
##########
docker/pulsar/build-scripts/remove-unnecessary-native-binaries.sh:
##########
@@ -0,0 +1,38 @@
+#!/usr/bin/env sh
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+set -e
+
+# Retain only native libraries for the architecture of this
+# image
+ARCH=$(uname -m)
+
+# Remove extra binaries for Netty TCNative
+ls /pulsar/lib/io.netty-netty-tcnative-boringssl-static*Final-*.jar | grep -v linux-$ARCH | xargs rm
+
+# Prune extra libs from RocksDB JAR
+mkdir /tmp/rocksdb
+cd /tmp/rocksdb
+ROCKSDB_JAR=$(ls /pulsar/lib/org.rocksdb-rocksdbjni-*.jar)
+unzip $ROCKSDB_JAR > /dev/null
+
+ls librocksdbjni-* | grep -v librocksdbjni-linux-$ARCH-musl.so | xargs rm
Review Comment:
In this case we're going to use musl for both, though I don't think it should matter unless you mix malloc/free across them (eg: one side allocates, passes a pointer and the other sides frees it).
--
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: commits-unsubscribe@pulsar.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] [improve] Removed unnecessary native libraries from Docker images [pulsar]
Posted by "lhotari (via GitHub)" <gi...@apache.org>.
lhotari commented on code in PR #22230:
URL: https://github.com/apache/pulsar/pull/22230#discussion_r1518964156
##########
docker/pulsar/build-scripts/remove-unnecessary-native-binaries.sh:
##########
@@ -0,0 +1,38 @@
+#!/usr/bin/env sh
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+set -e
+
+# Retain only native libraries for the architecture of this
+# image
+ARCH=$(uname -m)
+
+# Remove extra binaries for Netty TCNative
+ls /pulsar/lib/io.netty-netty-tcnative-boringssl-static*Final-*.jar | grep -v linux-$ARCH | xargs rm
+
+# Prune extra libs from RocksDB JAR
+mkdir /tmp/rocksdb
+cd /tmp/rocksdb
+ROCKSDB_JAR=$(ls /pulsar/lib/org.rocksdb-rocksdbjni-*.jar)
+unzip $ROCKSDB_JAR > /dev/null
+
+ls librocksdbjni-* | grep -v librocksdbjni-linux-$ARCH-musl.so | xargs rm
Review Comment:
the pattern doesn't seem to be correct for `x86_64`.
```
❯ unzip -v ~/.m2/repository/org/rocksdb/rocksdbjni/7.9.2/rocksdbjni-7.9.2.jar "librocksdbjni*"
Archive: /Users/lari/.m2/repository/org/rocksdb/rocksdbjni/7.9.2/rocksdbjni-7.9.2.jar
Length Method Size Cmpr Date Time CRC-32 Name
-------- ------ ------- ---- ---------- ----- -------- ----
12937108 Defl:N 4996651 61% 01-18-2023 18:22 2d175d3e librocksdbjni-linux32-musl.so
12781984 Defl:N 4974662 61% 01-18-2023 17:55 f8ba407e librocksdbjni-linux32.so
12946120 Defl:N 4687309 64% 01-18-2023 18:37 fe361e24 librocksdbjni-linux64-musl.so
12812776 Defl:N 4693523 63% 01-18-2023 18:07 cf184cca librocksdbjni-linux64.so
7917296 Defl:N 3194101 60% 01-18-2023 17:43 75ee14a1 librocksdbjni-osx-arm64.jnilib
9155128 Defl:N 3663016 60% 01-18-2023 17:29 4fdb7657 librocksdbjni-osx-x86_64.jnilib
15525248 Defl:N 5135092 67% 01-19-2023 03:31 90e95fa5 librocksdbjni-linux-ppc64le.so
14804824 Defl:N 4960915 67% 01-19-2023 03:31 724f0ef8 librocksdbjni-linux-ppc64le-musl.so
12508504 Defl:N 4618102 63% 01-19-2023 03:32 0c0e21c8 librocksdbjni-linux-aarch64.so
12033184 Defl:N 4495421 63% 01-19-2023 03:32 69913c29 librocksdbjni-linux-aarch64-musl.so
13925544 Defl:N 4690123 66% 01-19-2023 03:33 3cf26f96 librocksdbjni-linux-s390x.so
13534664 Defl:N 4572116 66% 01-19-2023 03:33 80e404ce librocksdbjni-linux-s390x-musl.so
7364096 Defl:N 3027907 59% 01-19-2023 03:36 e6d112d3 librocksdbjni-win64.dll
-------- ------- --- -------
158246476 57708938 64% 13 files
```
the file is `librocksdbjni-linux64-musl.so`.
--
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: commits-unsubscribe@pulsar.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] [improve] Removed unnecessary native libraries from Docker images [pulsar]
Posted by "lhotari (via GitHub)" <gi...@apache.org>.
lhotari commented on code in PR #22230:
URL: https://github.com/apache/pulsar/pull/22230#discussion_r1518489699
##########
docker/pulsar/build-scripts/remove-unnecessary-native-binaries.sh:
##########
@@ -0,0 +1,38 @@
+#!/usr/bin/env sh
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+set -e
+
+# Retain only native libraries for the architecture of this
+# image
+ARCH=$(uname -m)
+
+# Remove extra binaries for Netty TCNative
+ls /pulsar/lib/io.netty-netty-tcnative-boringssl-static*Final-*.jar | grep -v linux-$ARCH | xargs rm
+
+# Prune extra libs from RocksDB JAR
+mkdir /tmp/rocksdb
+cd /tmp/rocksdb
+ROCKSDB_JAR=$(ls /pulsar/lib/org.rocksdb-rocksdbjni-*.jar)
+unzip $ROCKSDB_JAR > /dev/null
+
+ls librocksdbjni-* | grep -v librocksdbjni-linux-$ARCH-musl.so | xargs rm
Review Comment:
Since we have full glibc in the Alpine container, does that impact the library version which should be used (musl or glibc)? I don't know the details, but what I wonder about is which malloc implementation does the JVM use and which one is used by the rocksdb library and does it matter if they are different?
--
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: commits-unsubscribe@pulsar.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] [improve] Removed unnecessary native libraries from Docker images [pulsar]
Posted by "lhotari (via GitHub)" <gi...@apache.org>.
lhotari commented on PR #22230:
URL: https://github.com/apache/pulsar/pull/22230#issuecomment-1987321476
error message in failing containers
```
2024-03-09T00:44:36,305+0000 ERROR [main] t.apachepulsar/java-test-image:latest@547 - Log output from the failed container:
2024-03-09T00:39:40,007+0000 [main] INFO org.apache.pulsar.PulsarStandalone - Starting BK with RocksDb metadata store
2024-03-09T00:39:40,117+0000 [main] ERROR org.apache.pulsar.PulsarStandaloneStarter - Failed to start pulsar service.
org.apache.pulsar.metadata.api.MetadataStoreException: Failed to load RocksDB JNI library
at org.apache.pulsar.metadata.impl.RocksdbMetadataStore.<init>(RocksdbMetadataStore.java:218) ~[org.apache.pulsar-pulsar-metadata-3.3.0-SNAPSHOT.jar:3.3.0-SNAPSHOT]
at org.apache.pulsar.metadata.impl.RocksdbMetadataStore.get(RocksdbMetadataStore.java:113) ~[org.apache.pulsar-pulsar-metadata-3.3.0-SNAPSHOT.jar:3.3.0-SNAPSHOT]
at org.apache.pulsar.metadata.impl.RocksdbMetadataStoreProvider.create(RocksdbMetadataStore.java:587) ~[org.apache.pulsar-pulsar-metadata-3.3.0-SNAPSHOT.jar:3.3.0-SNAPSHOT]
at org.apache.pulsar.metadata.impl.MetadataStoreFactoryImpl.newInstance(MetadataStoreFactoryImpl.java:63) ~[org.apache.pulsar-pulsar-metadata-3.3.0-SNAPSHOT.jar:3.3.0-SNAPSHOT]
at org.apache.pulsar.metadata.impl.MetadataStoreFactoryImpl.createExtended(MetadataStoreFactoryImpl.java:50) ~[org.apache.pulsar-pulsar-metadata-3.3.0-SNAPSHOT.jar:3.3.0-SNAPSHOT]
at org.apache.pulsar.metadata.api.extended.MetadataStoreExtended.create(MetadataStoreExtended.java:42) ~[org.apache.pulsar-pulsar-metadata-3.3.0-SNAPSHOT.jar:3.3.0-SNAPSHOT]
at org.apache.pulsar.metadata.bookkeeper.BKCluster.<init>(BKCluster.java:134) ~[org.apache.pulsar-pulsar-metadata-3.3.0-SNAPSHOT.jar:3.3.0-SNAPSHOT]
at org.apache.pulsar.metadata.bookkeeper.BKCluster$BKClusterConf.build(BKCluster.java:118) ~[org.apache.pulsar-pulsar-metadata-3.3.0-SNAPSHOT.jar:3.3.0-SNAPSHOT]
at org.apache.pulsar.PulsarStandalone.startBookieWithMetadataStore(PulsarStandalone.java:457) ~[org.apache.pulsar-pulsar-broker-3.3.0-SNAPSHOT.jar:3.3.0-SNAPSHOT]
at org.apache.pulsar.PulsarStandalone.start(PulsarStandalone.java:297) ~[org.apache.pulsar-pulsar-broker-3.3.0-SNAPSHOT.jar:3.3.0-SNAPSHOT]
at org.apache.pulsar.PulsarStandaloneStarter.main(PulsarStandaloneStarter.java:149) ~[org.apache.pulsar-pulsar-broker-3.3.0-SNAPSHOT.jar:3.3.0-SNAPSHOT]
Caused by: java.lang.ExceptionInInitializerError
at org.apache.pulsar.metadata.impl.RocksdbMetadataStore.<init>(RocksdbMetadataStore.java:216) ~[org.apache.pulsar-pulsar-metadata-3.3.0-SNAPSHOT.jar:3.3.0-SNAPSHOT]
... 10 more
Caused by: java.lang.RuntimeException: librocksdbjni-linux64-musl.so was not found inside JAR.
at org.rocksdb.NativeLibraryLoader.loadLibraryFromJarToTemp(NativeLibraryLoader.java:118) ~[org.rocksdb-rocksdbjni-7.9.2.jar:?]
at org.rocksdb.NativeLibraryLoader.loadLibraryFromJar(NativeLibraryLoader.java:102) ~[org.rocksdb-rocksdbjni-7.9.2.jar:?]
at org.rocksdb.NativeLibraryLoader.loadLibrary(NativeLibraryLoader.java:82) ~[org.rocksdb-rocksdbjni-7.9.2.jar:?]
at org.rocksdb.RocksDB.loadLibrary(RocksDB.java:70) ~[org.rocksdb-rocksdbjni-7.9.2.jar:?]
at org.rocksdb.RocksDB.<clinit>(RocksDB.java:39) ~[org.rocksdb-rocksdbjni-7.9.2.jar:?]
at org.apache.pulsar.metadata.impl.RocksdbMetadataStore.<init>(RocksdbMetadataStore.java:216) ~[org.apache.pulsar-pulsar-metadata-3.3.0-SNAPSHOT.jar:3.3.0-SNAPSHOT]
... 10 more
```
--
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: commits-unsubscribe@pulsar.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] [improve] Removed unnecessary native libraries from Docker images [pulsar]
Posted by "merlimat (via GitHub)" <gi...@apache.org>.
merlimat commented on code in PR #22230:
URL: https://github.com/apache/pulsar/pull/22230#discussion_r1519076244
##########
docker/pulsar/build-scripts/remove-unnecessary-native-binaries.sh:
##########
@@ -0,0 +1,38 @@
+#!/usr/bin/env sh
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+set -e
+
+# Retain only native libraries for the architecture of this
+# image
+ARCH=$(uname -m)
+
+# Remove extra binaries for Netty TCNative
+ls /pulsar/lib/io.netty-netty-tcnative-boringssl-static*Final-*.jar | grep -v linux-$ARCH | xargs rm
Review Comment:
👍
--
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: commits-unsubscribe@pulsar.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] [improve] Removed unnecessary native libraries from Docker images [pulsar]
Posted by "merlimat (via GitHub)" <gi...@apache.org>.
merlimat commented on code in PR #22230:
URL: https://github.com/apache/pulsar/pull/22230#discussion_r1519076156
##########
docker/pulsar/build-scripts/remove-unnecessary-native-binaries.sh:
##########
@@ -0,0 +1,38 @@
+#!/usr/bin/env sh
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+set -e
+
+# Retain only native libraries for the architecture of this
+# image
+ARCH=$(uname -m)
+
+# Remove extra binaries for Netty TCNative
+ls /pulsar/lib/io.netty-netty-tcnative-boringssl-static*Final-*.jar | grep -v linux-$ARCH | xargs rm
+
+# Prune extra libs from RocksDB JAR
+mkdir /tmp/rocksdb
+cd /tmp/rocksdb
+ROCKSDB_JAR=$(ls /pulsar/lib/org.rocksdb-rocksdbjni-*.jar)
+unzip $ROCKSDB_JAR > /dev/null
+
+ls librocksdbjni-* | grep -v librocksdbjni-linux-$ARCH-musl.so | xargs rm
Review Comment:
:+1: good catch. I had tested it locally on arm64 only :)
--
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: commits-unsubscribe@pulsar.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] [improve] Removed unnecessary native libraries from Docker images [pulsar]
Posted by "lhotari (via GitHub)" <gi...@apache.org>.
lhotari commented on code in PR #22230:
URL: https://github.com/apache/pulsar/pull/22230#discussion_r1518965279
##########
docker/pulsar/build-scripts/remove-unnecessary-native-binaries.sh:
##########
@@ -0,0 +1,38 @@
+#!/usr/bin/env sh
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+set -e
+
+# Retain only native libraries for the architecture of this
+# image
+ARCH=$(uname -m)
+
+# Remove extra binaries for Netty TCNative
+ls /pulsar/lib/io.netty-netty-tcnative-boringssl-static*Final-*.jar | grep -v linux-$ARCH | xargs rm
Review Comment:
this doesn't seem to match `uname -m` in all cases.
`uname -m` on arm64 is `aarch64`. However the file is `io.netty-netty-tcnative-boringssl-static-2.0.61.Final-linux-aarch_64.jar`.
`uname -m` is `x86_64` for amd64/x86_64 and that happens to match `io.netty-netty-tcnative-boringssl-static-2.0.61.Final-linux-x86_64.jar`.
--
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: commits-unsubscribe@pulsar.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] [improve] Removed unnecessary native libraries from Docker images [pulsar]
Posted by "codecov-commenter (via GitHub)" <gi...@apache.org>.
codecov-commenter commented on PR #22230:
URL: https://github.com/apache/pulsar/pull/22230#issuecomment-1988684953
## [Codecov](https://app.codecov.io/gh/apache/pulsar/pull/22230?src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) Report
All modified and coverable lines are covered by tests :white_check_mark:
> Project coverage is 73.58%. Comparing base [(`bbc6224`)](https://app.codecov.io/gh/apache/pulsar/commit/bbc62245c5ddba1de4b1e7cee4ab49334bc36277?el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) to head [(`a702b26`)](https://app.codecov.io/gh/apache/pulsar/pull/22230?src=pr&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache).
> Report is 33 commits behind head on master.
<details><summary>Additional details and impacted files</summary>
[](https://app.codecov.io/gh/apache/pulsar/pull/22230?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
```diff
@@ Coverage Diff @@
## master #22230 +/- ##
============================================
+ Coverage 73.57% 73.58% +0.01%
+ Complexity 32624 32259 -365
============================================
Files 1877 1879 +2
Lines 139502 139792 +290
Branches 15299 15338 +39
============================================
+ Hits 102638 102872 +234
- Misses 28908 28926 +18
- Partials 7956 7994 +38
```
| [Flag](https://app.codecov.io/gh/apache/pulsar/pull/22230/flags?src=pr&el=flags&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | Coverage Δ | |
|---|---|---|
| [inttests](https://app.codecov.io/gh/apache/pulsar/pull/22230/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `26.56% <ø> (+1.98%)` | :arrow_up: |
| [systests](https://app.codecov.io/gh/apache/pulsar/pull/22230/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `24.36% <ø> (+0.04%)` | :arrow_up: |
| [unittests](https://app.codecov.io/gh/apache/pulsar/pull/22230/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `72.87% <ø> (+0.02%)` | :arrow_up: |
Flags with carried forward coverage won't be shown. [Click here](https://docs.codecov.io/docs/carryforward-flags?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#carryforward-flags-in-the-pull-request-comment) to find out more.
[see 79 files with indirect coverage changes](https://app.codecov.io/gh/apache/pulsar/pull/22230/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
</details>
--
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: commits-unsubscribe@pulsar.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org