[prev in list] [next in list] [prev in thread] [next in thread] 

List:       cassandra-dev
Subject:    Re: [DISCUSS] Bring cassandra-harry in tree as a submodule
From:       "Josh McKenzie" <jmckenzie () apache ! org>
Date:       2023-05-31 19:36:04
Message-ID: 7c8f1b43-7264-4701-862e-228265059780 () app ! fastmail ! com
[Download RAW message or body]

Bumping into worktree + submodule pain on some harry related work; it looks like "git \
worktree" and submodules are not currently fully implemented:

https://git-scm.com/docs/git-worktree#_bugs
BUGS

Multiple checkout in general is still experimental, and the support for submodules is \
incomplete. It is NOT recommended to make multiple checkouts of a superproject.

I rely pretty heavily on worktrees and I know a lot of other folks who do too. This \
is a dealbreaker for me in terms of adding anything else as a submodule and I'd like \
to know if the accord folks have been running into any worktree related woes w/the \
accord integration.


On Sun, May 28, 2023, at 10:14 AM, Alex Petrov wrote:
> Regarding approachability, one of the things I thought is worth adding is a DSL. I \
> feel like there's enough functionality in Harry and there's enough information for \
> anyone who needs to write even an involved test out there, but adoption doesn't \
> usually start with complex use-cases, so it could be that making it extremely \
> simple to generate the data and validating that written data is where it's supposed \
> to be, should help adoption a lot. Unfortunately, more complex use-cases such as \
> group-by support, or SAI testing will require a bit more knowledge and writing an \
> involved model, so I do not see any shortcuts we can take here. 
> > I do think that moving Harry in-tree would improve approachability
> 
> I think it's similar as it is with in-jvm dtest api. I feel like we wold evolve it \
> more actively if we didn't have to cut a release before every commit. In other \
> words, I think that changing Harry code and extending functionality will be easier, \
> which I think will eventually lead to quicker adoption. But of course the act of \
> moving itself does not increase adoption, it just comes from better ergonomics. 
> 
> On Thu, May 25, 2023, at 8:03 PM, Abe Ratnofsky wrote:
> > I'm seeing a few distinct topics here:
> > 
> > 1. Harry's adoption and approachability
> > 
> > I agree that approachability is one of Harry's main improvement areas right now. \
> > If our goal is to produce a fuzz testing framework for the Cassandra project, \
> > then adoption by contributors and usage for new feature development are \
> > reasonable indicators for whether we're achieving that goal. If Harry is not \
> > getting adopted by contributors outside of Apple, and is not getting used for new \
> > feature development, then we should make an effort to understand why. I don't \
> > think that a several-hour seminar is the best point of leverage to achieve those \
> > goals. 
> > Here's what I think we do need:
> > 
> > - The README should be understandable by anyone interested in writing a fuzz test
> > - Example tests should be runnable from a fresh clone of Cassandra, in an IDE or \
> >                 on the command line
> > - Examples of how we would test new features (like CEP-7, CEP-29, etc) with the \
> > fuzz testing framework 
> > I find the JVM dtest framework accomplishes similar goals, and one reason is \
> > because there are plenty of examples, and it's relatively easy to copy and paste \
> > one example and have it do what you'd like. I believe the same approach would \
> > work for a fuzz testing framework. 
> > Some of these tasks above are already done for Harry, such as better IDE support \
> > for samples. This will be available in OSS Harry shortly. 
> > 2. Moving Harry in-tree vs. in submodule
> > 
> > As I understand it, making Harry a submodule of Cassandra would make it easier to \
> > deal with versioning, since we wouldn't have to do the entire release dance we \
> > need to do for dtest-api, but I don't see this as a big improvement to \
> > approachability. 
> > I do think that moving Harry in-tree would improve approachability, for the same \
> > reason as the JVM dtests. It's nice to write a feature or fix, find a similar JVM \
> > dtest, copy, paste, and edit, and have something useful. 
> > 3. General subdivision of Cassandra projects
> > 
> > This topic has come up quite a few times recently - around shared utilities \
> > (CEP-10 concurrency primitives, etc), dtest-api, query parser, etc. The project \
> > has tried out a few different approaches on composition of separate projects. \
> > Hopefully in the near future we find the one that works best and can start this \
> > process of splitting out libraries. 
> > --
> > Abe
> > 
> > > On May 25, 2023, at 6:36 AM, Josh McKenzie <jmckenzie@apache.org> wrote:
> > > 
> > > > I would really like us to split out utilities into a common project
> > > +1 to the sentiment.
> > > 
> > > Would also advocate strongly for it being more tightly integrated with the base \
> > > project than what we've been doing with our ecosystem (i.e. completely separate \
> > > projects, not submodules), mostly from a discoverability and workflow \
> > > standpoint. 
> > > I'm definitely salty about having to have 4 IDE's / projects open just to work \
> > > on the entire stack. 
> > > On Thu, May 25, 2023, at 5:05 AM, Alex Petrov wrote:
> > > > This was not a talk, but rather an interactive workshop, unfortunately will \
> > > > not work in a recorded way, but I am trying to work out ways to preserve \
> > > > this. 
> > > > On Thu, May 25, 2023, at 10:26 AM, Claude Warren, Jr via dev wrote:
> > > > > Since the talk was not accepted for Cassandra Summit, would it be possible \
> > > > > to record it as a simple youtube video and publish it so that the detailed \
> > > > > information about how to use Harry is not lost? 
> > > > > On Thu, May 25, 2023 at 7:36 AM Alex Petrov <alexp@coffeenco.de> wrote:
> > > > > > __
> > > > > > While we are at it, we may also want to pull the in-jvm dtest API as a \
> > > > > > submodule, and actually move some tests that are common between the \
> > > > > > branches there. 
> > > > > > On Thu, May 25, 2023, at 6:03 AM, Caleb Rackliffe wrote:
> > > > > > > Isn't the other reason Accord works well as a submodule that it has no \
> > > > > > > dependencies on C* proper? Harry does at the moment, right? (Not that \
> > > > > > > we couldn't address that…just trying to think this through…) 
> > > > > > > > On May 24, 2023, at 6:54 PM, Benedict <benedict@apache.org> wrote:
> > > > > > > > 
> > > > > > > > 
> > > > > > > > In this case Harry is a testing module - it's not something we will \
> > > > > > > > develop in tandem with C* releases, and we will want improvements to \
> > > > > > > > be applied across all branches. 
> > > > > > > > So it seems a natural fit for submodules to me.
> > > > > > > > 
> > > > > > > > 
> > > > > > > > > On 24 May 2023, at 21:09, Caleb Rackliffe \
> > > > > > > > > <calebrackliffe@gmail.com> wrote: 
> > > > > > > > > > Submodules do have their own overhead and edge cases, so I am \
> > > > > > > > > > mostly in favor of using for cases where the code must live \
> > > > > > > > > > outside of tree (such as jvm-dtest that lives out of tree as all \
> > > > > > > > > > branches need the same interfaces)
> > > > > > > > > 
> > > > > > > > > Agreed. Basically where I've ended up on this topic.
> > > > > > > > > 
> > > > > > > > > > We could go over some interesting examples such as testing 2i \
> > > > > > > > > > (SAI)
> > > > > > > > > 
> > > > > > > > > +100
> > > > > > > > > 
> > > > > > > > > 
> > > > > > > > > On Wed, May 24, 2023 at 1:40 PM Alex Petrov <alexp@coffeenco.de> \
> > > > > > > > > wrote:
> > > > > > > > > > __
> > > > > > > > > > > I'm about to need to harry test for the paging across tombstone \
> > > > > > > > > > > work for https://issues.apache.org/jira/browse/CASSANDRA-18424 \
> > > > > > > > > > > (that's where my own overlapping fuzzing came in). In the \
> > > > > > > > > > > process, I'll see if I can't distill something really simple \
> > > > > > > > > > > along the lines of how React approaches it \
> > > > > > > > > > > (https://react.dev/learn).
> > > > > > > > > > 
> > > > > > > > > > We can pick that up as an example, sure. 
> > > > > > > > > > 
> > > > > > > > > > On Wed, May 24, 2023, at 4:53 PM, Josh McKenzie wrote:
> > > > > > > > > > > > I have submitted a proposal to Cassandra Summit for a 4-hour \
> > > > > > > > > > > > Harry workshop,
> > > > > > > > > > > I'm about to need to harry test for the paging across tombstone \
> > > > > > > > > > > work for https://issues.apache.org/jira/browse/CASSANDRA-18424 \
> > > > > > > > > > > (that's where my own overlapping fuzzing came in). In the \
> > > > > > > > > > > process, I'll see if I can't distill something really simple \
> > > > > > > > > > > along the lines of how React approaches it \
> > > > > > > > > > > (https://react.dev/learn). 
> > > > > > > > > > > Ideally we'd be able to get something together that's a high \
> > > > > > > > > > > level "In the next 15 minutes, you will know and understand A-G \
> > > > > > > > > > > and have access to N% of the power of harry" kind of offer. 
> > > > > > > > > > > Honestly, there's a *lot* in our ecosystem where we could \
> > > > > > > > > > > benefit from taking a page from their book in terms of \
> > > > > > > > > > > onboarding and getting started IMO. 
> > > > > > > > > > > On Wed, May 24, 2023, at 10:31 AM, Alex Petrov wrote:
> > > > > > > > > > > > > I wonder if a mini-onboarding session would be good as a \
> > > > > > > > > > > > > community session - go over Harry, how to run it, how to \
> > > > > > > > > > > > > add a test?  Would that be the right venue?  I just would \
> > > > > > > > > > > > > like to see how we can not only plug it in to regular CI \
> > > > > > > > > > > > > but get everyone that wants to add a test be able to know \
> > > > > > > > > > > > > how to get started with it.
> > > > > > > > > > > > 
> > > > > > > > > > > > I have submitted a proposal to Cassandra Summit for a 4-hour \
> > > > > > > > > > > > Harry workshop, but unfortunately it got declined. Goes \
> > > > > > > > > > > > without saying, we can still do it online, time and resources \
> > > > > > > > > > > > permitting. But again, I do not think it should be barring us \
> > > > > > > > > > > > from making Harry a part of the codebase, as it already is. \
> > > > > > > > > > > > In fact, we can be iterating on the development quicker \
> > > > > > > > > > > > having it in-tree.  
> > > > > > > > > > > > We could go over some interesting examples such as testing 2i \
> > > > > > > > > > > > (SAI), modelling Group By tests, or testing repair. If there \
> > > > > > > > > > > > is enough appetite and collaboration in the community, I will \
> > > > > > > > > > > > see if we can pull something like that together. Input on \
> > > > > > > > > > > > _what_ you would like to see / hear / tested is also \
> > > > > > > > > > > > appreciated. Harry was developed out of a strong need for \
> > > > > > > > > > > > large-scale testing, which also has informed many of its \
> > > > > > > > > > > > APIs, but we can make it easier to access for interactive \
> > > > > > > > > > > > testing / unit tests. We have been doing a lot of that with \
> > > > > > > > > > > > Transactional Metadata, too.  
> > > > > > > > > > > > > I'll hold off on this until Alex Petrov chimes in. @Alex -> \
> > > > > > > > > > > > > got any thoughts here?
> > > > > > > > > > > > 
> > > > > > > > > > > > Yes, sorry for not responding on this thread earlier. I can \
> > > > > > > > > > > > not understate how excited I am about this, and how important \
> > > > > > > > > > > > I think this is. Time constraints are somehow hard to \
> > > > > > > > > > > > overcome, but I hope the results brought by TCM will make it \
> > > > > > > > > > > > all worth it. 
> > > > > > > > > > > > On Wed, May 24, 2023, at 4:23 PM, Alex Petrov wrote:
> > > > > > > > > > > > > I think pulling Harry into the tree will make adoption \
> > > > > > > > > > > > > easier for the folks. I have been a bit swamped with \
> > > > > > > > > > > > > Transactional Metadata work, but I wanted to make some of \
> > > > > > > > > > > > > the things we were using for testing TCM available outside \
> > > > > > > > > > > > > of TCM branch. This includes a bunch of helper methods to \
> > > > > > > > > > > > > perform operations on the clusters, data generation, and \
> > > > > > > > > > > > > more useful stuff. Of course, the question always remains \
> > > > > > > > > > > > > about how much time I want to spend porting it all to \
> > > > > > > > > > > > > Gossip, but I think we can find a reasonable compromise.  
> > > > > > > > > > > > > I would not set this improvement as a prerequisite to \
> > > > > > > > > > > > > pulling Harry into the main branch, but rather interpret it \
> > > > > > > > > > > > > as a commitment from myself to take community input and \
> > > > > > > > > > > > > make it more approachable by the day.  
> > > > > > > > > > > > > On Wed, May 24, 2023, at 2:44 PM, Josh McKenzie wrote:
> > > > > > > > > > > > > > > importantly it's a million times better than the \
> > > > > > > > > > > > > > > dtest-api process - which stymies development due to \
> > > > > > > > > > > > > > > the friction.
> > > > > > > > > > > > > > This is my major concern.
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > What prompted this thread was harry being external to the \
> > > > > > > > > > > > > > core codebase and the lack of adoption and usage of it \
> > > > > > > > > > > > > > having led to atrophy of certain aspects of it, which \
> > > > > > > > > > > > > > then led to redundant implementation of some fuzz testing \
> > > > > > > > > > > > > > and lost time. 
> > > > > > > > > > > > > > We'd all be better served to have this closer to the main \
> > > > > > > > > > > > > > codebase as a forcing function to smooth out the rough \
> > > > > > > > > > > > > > edges, integrate it, and make it a collective artifact \
> > > > > > > > > > > > > > and first class citizen IMO. 
> > > > > > > > > > > > > > I have similar opinions about the dtest-api.
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > 
> > > > > > > > > > > > > > On Wed, May 24, 2023, at 4:05 AM, Benedict wrote:
> > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > It's not without hiccups, and I'm sure we have more to \
> > > > > > > > > > > > > > > learn. But it mostly just works, and importantly it's a \
> > > > > > > > > > > > > > > million times better than the dtest-api process - which \
> > > > > > > > > > > > > > > stymies development due to the friction. 
> > > > > > > > > > > > > > > > On 24 May 2023, at 08:39, Mick Semb Wever \
> > > > > > > > > > > > > > > > <mck@apache.org> wrote: 
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > WRT git submodules and CASSANDRA-18204, are we happy \
> > > > > > > > > > > > > > > > with how it is working for accord ?  
> > > > > > > > > > > > > > > > The time spent on getting that running has been a \
> > > > > > > > > > > > > > > > fair few hours, where we could have cut many manual \
> > > > > > > > > > > > > > > > module releases in that time.  
> > > > > > > > > > > > > > > > David and folks working on accord ? 
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > On Tue, 23 May 2023 at 20:09, Josh McKenzie \
> > > > > > > > > > > > > > > > <jmckenzie@apache.org> wrote:
> > > > > > > > > > > > > > > > > __
> > > > > > > > > > > > > > > > > I'll hold off on this until Alex Petrov chimes in. \
> > > > > > > > > > > > > > > > > @Alex -> got any thoughts here? 
> > > > > > > > > > > > > > > > > On Tue, May 16, 2023, at 5:17 PM, Jeremy Hanna \
> > > > > > > > > > > > > > > > > wrote:
> > > > > > > > > > > > > > > > > > I think it would be great to onboard Harry more \
> > > > > > > > > > > > > > > > > > officially into the project.  However it would be \
> > > > > > > > > > > > > > > > > > nice to perhaps do some sanity checking outside \
> > > > > > > > > > > > > > > > > > of Apple folks to see how approachable it is.  \
> > > > > > > > > > > > > > > > > > That is, can someone take it and just run it with \
> > > > > > > > > > > > > > > > > > the current readme without any additional \
> > > > > > > > > > > > > > > > > > context? 
> > > > > > > > > > > > > > > > > > I wonder if a mini-onboarding session would be \
> > > > > > > > > > > > > > > > > > good as a community session - go over Harry, how \
> > > > > > > > > > > > > > > > > > to run it, how to add a test?  Would that be the \
> > > > > > > > > > > > > > > > > > right venue?  I just would like to see how we can \
> > > > > > > > > > > > > > > > > > not only plug it in to regular CI but get \
> > > > > > > > > > > > > > > > > > everyone that wants to add a test be able to know \
> > > > > > > > > > > > > > > > > > how to get started with it. 
> > > > > > > > > > > > > > > > > > Jeremy
> > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > On May 16, 2023, at 1:34 PM, Abe Ratnofsky \
> > > > > > > > > > > > > > > > > > > <abe@aber.io> wrote: 
> > > > > > > > > > > > > > > > > > > Just to make sure I'm understanding the \
> > > > > > > > > > > > > > > > > > > details, this would mean apache/cassandra-harry \
> > > > > > > > > > > > > > > > > > > maintains its status as a separate repository, \
> > > > > > > > > > > > > > > > > > > apache/cassandra references it as a submodule, \
> > > > > > > > > > > > > > > > > > > and clones and builds Harry locally, rather \
> > > > > > > > > > > > > > > > > > > than pulling a released JAR. We can then \
> > > > > > > > > > > > > > > > > > > reference Harry as a library without \
> > > > > > > > > > > > > > > > > > > maintaining public artifacts for it. Is that in \
> > > > > > > > > > > > > > > > > > > line with what you're thinking? 
> > > > > > > > > > > > > > > > > > > > I'd also like to see us get a Harry run \
> > > > > > > > > > > > > > > > > > > > integrated as part of our pre-commit CI
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > I'm a strong supporter of this, of course.
> > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > > On May 16, 2023, at 11:03 AM, Josh McKenzie \
> > > > > > > > > > > > > > > > > > > > <jmckenzie@apache.org> wrote: 
> > > > > > > > > > > > > > > > > > > > Similar to what we've done with accord in \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > > Given the value it's brought to the project's \
> > > > > > > > > > > > > > > > > > > > stabilization efforts and the movement of \
> > > > > > > > > > > > > > > > > > > > other things in the ecosystem to being more \
> > > > > > > > > > > > > > > > > > > > integrated (accord, build-scripts \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > \
> > > > > > > > > > > > > > > > > > > > 
> > > > > > > > > > > > > > > > > > > > I'd also like to see us get a Harry run \
> > > > > > > > > > > > > > > > > > > > integrated as part of our pre-commit CI (a 5 \
> > > > > > > > > > > > > > > > > > > > minute simple soak test for instance) and \
> > > > > > > > > > > > > > > > > > > > having that local in this fashion should make \
> > > > > > > > > > > > > > > > > > > > that a cleaner integration as well. 
> > > > > > > > > > > > > > > > > > > > Thoughts?
> 


[Attachment #3 (text/html)]

<!DOCTYPE html><html><head><title></title><style type="text/css">
p.MsoNormal,p.MsoNoSpacing{margin:0}</style></head><body><div>Bumping into worktree + \
submodule pain on some harry related work; it looks like "git worktree" and \
submodules are not currently fully implemented:<br></div><div><br></div><div><a \
href="https://git-scm.com/docs/git-worktree#_bugs">https://git-scm.com/docs/git-worktree#_bugs</a><br></div><h2 \
id="_bugs" style="margin-top:20px;margin-right:0px;margin-bottom:0px;margin-left:0px;font-weight:bold;color:rgb(241, \
78, 50);text-rendering:optimizelegibility;font-size:18px;line-height:44px;font-family:Adelle, \
&quot;Roboto Slab&quot;, &quot;DejaVu Serif&quot;, Georgia, &quot;Times New \
Roman&quot;, sans-serif;font-style:normal;font-variant-ligatures:normal;font-variant-c \
aps:normal;letter-spacing:normal;orphans:2;text-align:start;text-indent:0px;text-trans \
form:none;white-space:normal;widows:2;word-spacing:0px;-webkit-text-stroke-width:0px;background-color:rgb(252, \
252, 250);text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;">BUGS<br></h2><div \
class="sectionbody" style="color:rgb(78, 68, 60);font-family:Adelle, &quot;Roboto \
Slab&quot;, &quot;DejaVu Serif&quot;, Georgia, &quot;Times New Roman&quot;, \
sans-serif;font-size:14px;font-style:normal;font-variant-ligatures:normal;font-variant \
-caps:normal;font-weight:400;letter-spacing:normal;orphans:2;text-align:start;text-ind \
ent:0px;text-transform:none;white-space:normal;widows:2;word-spacing:0px;-webkit-text-stroke-width:0px;background-color:rgb(252, \
252, 250);text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;"><div \
class="paragraph"><p \
style="margin-top:0px;margin-right:0px;margin-bottom:11px;margin-left:0px;font-size:14px;line-height:22px;">Multiple \
checkout in general is still experimental, and the support for submodules is \
incomplete. It is NOT recommended to make multiple checkouts of a \
superproject.<br></p></div></div><div>I rely pretty heavily on worktrees and I know a \
lot of other folks who do too. This is a dealbreaker for me in terms of adding \
anything else as a submodule and I'd like to know if the accord folks have been \
running into any worktree related woes w/the accord \
integration.<br></div><div><br></div><div><br></div><div>On Sun, May 28, 2023, at \
10:14 AM, Alex Petrov wrote:<br></div><blockquote type="cite" id="qt" \
style=""><div>Regarding approachability, one of the things I thought is worth adding \
is a DSL. I feel like there's enough functionality in Harry and there's enough \
information for anyone who needs to write even an involved test out there, but \
adoption doesn't usually start with complex use-cases, so it could be that making it \
extremely simple to generate the data and validating that written data is where it's \
supposed to be, should help adoption a lot. Unfortunately, more complex use-cases \
such as group-by support, or SAI testing will require a bit more knowledge and \
writing an involved model, so I do not see any shortcuts we can take \
here.<br></div><div><br></div><div>&gt;&nbsp;I do think that moving Harry in-tree \
would improve approachability<br></div><div><br></div><div>I think it's similar as it \
is with in-jvm dtest api. I feel like we wold evolve it more actively if we didn't \
have to cut a release before every commit. In other words, I think that changing \
Harry code and extending functionality will be easier, which I think will eventually \
lead to quicker adoption. But of course the act of moving itself does not increase \
adoption, it just comes from better \
ergonomics.<br></div><div><br></div><div><br></div><div>On Thu, May 25, 2023, at 8:03 \
PM, Abe Ratnofsky wrote:<br></div><blockquote type="cite" id="qt-qt" \
style="overflow-wrap:break-word;"><div>I'm seeing a few distinct topics \
here:<br></div><div><br></div><div>1. Harry's adoption and \
approachability<br></div><div><br></div><div>I agree that approachability is one of \
Harry's main improvement areas right now. If our goal is to produce a fuzz testing \
framework for the Cassandra project, then adoption by contributors and usage for new \
feature development are reasonable indicators for whether we're achieving that goal. \
If Harry is not getting adopted by contributors outside of Apple, and is not getting \
used for new feature development, then we should make an effort to understand why. I \
don't think that a several-hour seminar is the best point of leverage to achieve \
those goals.<br></div><div><br></div><div>Here's what I think we do \
need:<br></div><div><br></div><div>- The README should be understandable by anyone \
interested in writing a fuzz test<br></div><div>- Example tests should be runnable \
from a fresh clone of Cassandra, in an IDE or on the command line<br></div><div>- \
Examples of how we would test new features (like CEP-7, CEP-29, etc) with the fuzz \
testing framework<br></div><div><br></div><div>I find the JVM dtest framework \
accomplishes similar goals, and one reason is because there are plenty of examples, \
and it's relatively easy to copy and paste one example and have it do what you'd \
like. I believe the same approach would work for a fuzz testing \
framework.<br></div><div><br></div><div>Some of these tasks above are already done \
for Harry, such as better IDE support for samples. This will be available in OSS \
Harry shortly.<br></div><div><div><br></div><div>2. Moving Harry in-tree vs. in \
submodule<br></div><div><br></div><div>As I understand it, making Harry a submodule \
of Cassandra would make it easier to deal with versioning, since we wouldn't have to \
do the entire release dance we need to do for dtest-api, but I don't see this as a \
big improvement to approachability.<br></div><div><br></div><div>I do think that \
moving Harry in-tree would improve approachability, for the same reason as the JVM \
dtests. It's nice to write a feature or fix, find a similar JVM dtest, copy, paste, \
and edit, and have something useful.<br></div><div><br></div><div>3. General \
subdivision of Cassandra projects<br></div><div><br></div><div>This topic has come up \
quite a few times recently - around shared utilities (CEP-10 concurrency primitives, \
etc), dtest-api, query parser, etc. The project has tried out a few different \
approaches on composition of separate projects. Hopefully in the near future we find \
the one that works best and can start this process of splitting out \
libraries.<br></div><div><br></div><div>--<br></div><div><div>Abe<br></div><div><div><div><br></div><blockquote \
type="cite"><div>On May 25, 2023, at 6:36 AM, Josh McKenzie \
&lt;jmckenzie@apache.org&gt; wrote:<br></div><div><br></div><div><blockquote \
type="cite" style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant \
-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;te \
xt-transform:none;white-space:normal;word-spacing:0px;text-size-adjust:auto;-webkit-te \
xt-stroke-width:0px;text-decoration-line:none;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;"><div>I \
would really like us to split out utilities into a common \
project<br></div></blockquote><div \
style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal \
;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform \
:none;white-space:normal;word-spacing:0px;-webkit-text-stroke-width:0px;text-decoratio \
n-line:none;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;">+1 \
to the sentiment.<br></div><div \
style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal \
;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform \
:none;white-space:normal;word-spacing:0px;-webkit-text-stroke-width:0px;text-decoratio \
n-line:none;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;"><br></div><div \
style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal \
;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform \
:none;white-space:normal;word-spacing:0px;-webkit-text-stroke-width:0px;text-decoratio \
n-line:none;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;">Would \
also advocate strongly for it being more tightly integrated with the base project \
than what we've been doing with our ecosystem (i.e. completely separate projects, not \
submodules), mostly from a discoverability and workflow standpoint.<br></div><div \
style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal \
;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform \
:none;white-space:normal;word-spacing:0px;-webkit-text-stroke-width:0px;text-decoratio \
n-line:none;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;"><br></div><div \
style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal \
;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform \
:none;white-space:normal;word-spacing:0px;-webkit-text-stroke-width:0px;text-decoratio \
n-line:none;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;">I'm \
definitely salty about having to have 4 IDE's / projects open just to work on the \
entire stack.<br></div><div \
style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal \
;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform \
:none;white-space:normal;word-spacing:0px;-webkit-text-stroke-width:0px;text-decoratio \
n-line:none;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;"><br></div><div \
style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant-caps:normal \
;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform \
:none;white-space:normal;word-spacing:0px;-webkit-text-stroke-width:0px;text-decoratio \
n-line:none;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;">On \
Thu, May 25, 2023, at 5:05 AM, Alex Petrov wrote:<br></div><blockquote type="cite" \
id="qt-qt-qt" style="font-family:Helvetica;font-size:12px;font-style:normal;font-varia \
nt-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px; \
text-transform:none;white-space:normal;word-spacing:0px;text-size-adjust:auto;-webkit- \
text-stroke-width:0px;text-decoration-line:none;text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;"><div>This \
was not a talk, but rather an interactive workshop, unfortunately will not work in a \
recorded way, but I am trying to work out ways to preserve \
this.<br></div><div><br></div><div>On Thu, May 25, 2023, at 10:26 AM, Claude Warren, \
Jr via dev wrote:<br></div><blockquote type="cite" id="qt-qt-qt-qt"><div \
dir="ltr">Since the talk was not accepted for Cassandra Summit, would it be possible \
to record it as a simple youtube video and publish it so that the detailed \
information about how to use Harry is not lost?<br></div><div><br></div><div \
class="qt-qt-qt-qt-gmail_quote"><div dir="ltr" class="qt-qt-qt-qt-gmail_attr">On Thu, \
May 25, 2023 at 7:36 AM Alex Petrov &lt;<a \
href="mailto:alexp@coffeenco.de">alexp@coffeenco.de</a>&gt; \
wrote:<br></div><blockquote class="qt-qt-qt-qt-gmail_quote" \
style="margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204, \
204, 204);padding-left:1ex;"><div \
class="qt-qt-qt-qt-msg7355144304910696307"><div><u></u><br></div><div><div>While we \
are at it, we may also want to pull the in-jvm dtest API as a submodule, and actually \
move some tests that are common between the branches \
there.<br></div><div><br></div><div>On Thu, May 25, 2023, at 6:03 AM, Caleb Rackliffe \
wrote:<br></div><blockquote type="cite" \
id="qt-qt-qt-qt-m_7355144304910696307qt"><div>Isn't the other reason Accord works \
well as a submodule that it has no dependencies on C* proper? Harry does at the \
moment, right? (Not that we couldn't address that…just trying to think this \
through…)<br></div><div dir="ltr"><div><br></div><blockquote type="cite"><div>On \
May 24, 2023, at 6:54 PM, Benedict &lt;<a href="mailto:benedict@apache.org" \
target="_blank">benedict@apache.org</a>&gt; \
wrote:<br></div></blockquote></div><blockquote type="cite"><div \
dir="ltr"><div><br></div><div dir="ltr"><br></div><div dir="ltr">In this case \
Harry is a testing module - it's not something we will develop in tandem with C* \
releases, and we will want improvements to be applied across all \
branches.<br></div><div dir="ltr"><br></div><div dir="ltr">So it seems a natural fit \
for submodules to me.<br></div><div dir="ltr"><div><br></div><div \
dir="ltr"><br></div><blockquote type="cite"><div>On 24 May 2023, at 21:09, Caleb \
Rackliffe &lt;<a href="mailto:calebrackliffe@gmail.com" \
target="_blank">calebrackliffe@gmail.com</a>&gt; \
wrote:<br></div></blockquote></div><blockquote type="cite"><div \
dir="ltr"><div><br></div><div dir="ltr"><div>&gt; Submodules do have their own \
overhead and edge cases, so I am mostly in favor of using for cases where the code \
must live outside of tree (such as jvm-dtest that lives out of tree as all branches \
need the same interfaces)<br></div><div><br></div><div>Agreed. Basically where I've \
ended up on this topic.<br></div><div><br></div><div>&gt; We could go over some \
interesting examples such as testing 2i \
(SAI)<br></div><div><br></div><div>+100<br></div><div><br></div></div><div><br></div><div><div \
dir="ltr">On Wed, May 24, 2023 at 1:40 PM Alex Petrov &lt;<a \
href="mailto:alexp@coffeenco.de" target="_blank">alexp@coffeenco.de</a>&gt; \
wrote:<br></div><blockquote \
style="margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204, \
204, 204);padding-left:1ex;"><div><div><u></u><br></div><div><div>&gt;&nbsp;I'm about \
to need to harry test for the paging across tombstone work for&nbsp;<a \
href="https://issues.apache.org/jira/browse/CASSANDRA-18424" \
target="_blank">https://issues.apache.org/jira/browse/CASSANDRA-18424</a>&nbsp;(that's \
where my own overlapping fuzzing came in). In the process, I'll see if I can't \
distill something really simple along the lines of how React approaches it (<a \
href="https://react.dev/learn" \
target="_blank">https://react.dev/learn</a>).<br></div><div><br></div><div>We can \
pick that up as an example, sure.&nbsp;<br></div><div><br></div><div>On Wed, May 24, \
2023, at 4:53 PM, Josh McKenzie wrote:<br></div><blockquote type="cite" \
id="qt-qt-qt-qt-m_7355144304910696307qt-m_6460103623418154007qt"><blockquote \
type="cite"><div>I have submitted a proposal to Cassandra Summit for a 4-hour Harry \
workshop,<br></div></blockquote><div>I'm about to need to harry test for the paging \
across tombstone work for&nbsp;<a \
href="https://issues.apache.org/jira/browse/CASSANDRA-18424" \
target="_blank">https://issues.apache.org/jira/browse/CASSANDRA-18424</a>&nbsp;(that's \
where my own overlapping fuzzing came in). In the process, I'll see if I can't \
distill something really simple along the lines of how React approaches it (<a \
href="https://react.dev/learn" \
target="_blank">https://react.dev/learn</a>).<br></div><div><br></div><div>Ideally \
we'd be able to get something together that's a high level "In the next 15 minutes, \
you will know and understand A-G and have access to N% of the power of harry" kind of \
offer.<br></div><div><br></div><div>Honestly, there's a&nbsp;<i>lot</i><span \
class="qt-qt-Apple-converted-space">&nbsp;</span>in our ecosystem where we could \
benefit from taking a page from their book in terms of onboarding and getting started \
IMO.<br></div><div><br></div><div>On Wed, May 24, 2023, at 10:31 AM, Alex Petrov \
wrote:<br></div><blockquote type="cite" \
id="qt-qt-qt-qt-m_7355144304910696307qt-m_6460103623418154007qt-qt"><div>&gt;&nbsp;I \
wonder if a mini-onboarding session would be good as a community session - go over \
Harry, how to run it, how to add a test?&nbsp; Would that be the right venue?&nbsp; I \
just would like to see how we can not only plug it in to regular CI but get everyone \
that wants to add a test be able to know how to get started with \



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic