thetumbled commented on code in PR #23600:
URL: https://github.com/apache/pulsar/pull/23600#discussion_r1846028857
##########
pulsar-client/pom.xml:
##########
@@ -207,6 +207,16 @@
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>org.roaringbitmap</groupId>
+ <artifactId>RoaringBitmap</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>it.unimi.dsi</groupId>
+ <artifactId>fastutil</artifactId>
+ </dependency>
Review Comment:
> It will be necessary to update pulsar-client-shaded and pulsar-client-all
shading configuration to shade these libraries since they haven't been used on
the client by now.
I am not familiar with the shade part, hope this commit modify correctly.
https://github.com/apache/pulsar/pull/23600/commits/28251b2e9a3c434eec56224ea596bbfc297a9588
> I realized that including the fastuti library will increase the client jar
file size significantly. One detail about fastutil is that there's a smaller
library alternative fastutil-core which includes a subset of the classes.
fastutil is about 23MB and fastutil-core is about 6MB.
Picking only the classes that are needed from fastutil is possible with
minimizeJar with maven's shade plugin, but since minimizeJar is a global
setting, it would require building a minimized version of fastutil for the
client usage to pick only the classes are needed since applying minimizeJar to
the complete Pulsar client jar would be a very large change which could break
things.
I have update the dependency to `fastutil-core`.
As for `minimizeJar`, it looks like we can minimize the size of jar to the
minimum, but i think that we may improve pulsar with fastutil many places else,
so some other data structures can be helpful too.
--
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]