[ https://issues.apache.org/jira/browse/CASSANDRA-20328?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17940384#comment-17940384 ]
Stefan Miklosovic edited comment on CASSANDRA-20328 at 4/2/25 3:48 PM: ----------------------------------------------------------------------- I took a look a it looks quite nice. I would like to have an opinion of other people, most preferably from [~mck]. To summarize - Andy created separate pom for sstableloader. When we remove dependency on driver in cassandra-all, then we will add that dependency to sstableloader pom. The result is that sstableloader can depend on the driver independently from what is in server / it will be decoupled in that regard completely. That will e.g enable us to update to driver v4. Please keep in mind that we will very likely use the same approach in case of FQL and stress, this is just the first one. related PR for CCM here: https://github.com/apache/cassandra-ccm/pull/787 EDIT: I wrote "That will e.g enable us to update to driver v4" - well ... technically speaking, it will not make us to use v4 in any way "easier", because all this patch is doing (with all the additional re-factorization in follow-up tickets), is that it just changes the place where driver would be loaded from. But it will ultimately all end up on same class path - server libs, as well as tool libs. So v4 driver will be still present with server libs and any additional clashes (incompatibility among libraries etc.) will be still present. What it achieves is that driver will not be present on production class path. If we wanted to be truly independent from server libs in tools, then we would need to extract classes tools use to yet another dependency and make both server and tools depend on that. was (Author: smiklosovic): I took a look a it looks quite nice. I would like to have an opinion of other people, most preferably from [~mck]. To summarize - Andy created separate pom for sstableloader. When we remove dependency on driver in cassandra-all, then we will add that dependency to sstableloader pom. The result is that sstableloader can depend on the driver independently from what is in server / it will be decoupled in that regard completely. That will e.g enable us to update to driver v4. Please keep in mind that we will very likely use the same approach in case of FQL and stress, this is just the first one. related PR for CCM here: https://github.com/apache/cassandra-ccm/pull/787 > Migrate sstableloader code to its own tools directory > ----------------------------------------------------- > > Key: CASSANDRA-20328 > URL: https://issues.apache.org/jira/browse/CASSANDRA-20328 > Project: Apache Cassandra > Issue Type: Improvement > Components: Tool/sstable > Reporter: Andy Tolbert > Assignee: Andy Tolbert > Priority: Normal > Labels: pull-request-available > Fix For: 5.x > > Attachments: CASSANDRA-20328-test_results.html > > Time Spent: 9.5h > Remaining Estimate: 0h > > Akin to fqltool and stress, we should move sstableloader to its own tools > directory. This is needed to decouple the java driver as a dependency from > server code ([CASSANDRA-20326]). > For backwards compatibility reasons, we should retain {{bin/sstableloader}}. -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org