Re: Re Access to CEP

2020-11-20 Thread bhouse99
Thanks!


‐‐‐ Original Message ‐‐‐
On Thursday, November 19, 2020 3:41 PM, Josh McKenzie  
wrote:

> And I now realize my brain autocompleted the b to Brian. Sorry about that.
> ;)
>
> On Thu, Nov 19, 2020 at 5:11 PM Joshua McKenzie jmcken...@apache.org
> wrote:
>
> > Sent an invite your way Brian.
> > On Thu, Nov 19, 2020 at 3:44 PM bhouse99 bhous...@protonmail.com.invalid
> > wrote:
> >
> > > Hiya!
> > > I was hoping to get access to create a CEP draft, As per
> >
> > https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=95652201#CassandraEnhancementProposals(CEP)-Purpose
> >
> > > My username is bhouse99. Would that be possible?
> > > Thanks
>
> --
>
> ---
>
> Josh McKenzie



-
To unsubscribe, e-mail: dev-unsubscr...@cassandra.apache.org
For additional commands, e-mail: dev-h...@cassandra.apache.org



Re: [DISCUSS] CASSANDRA-12126: LWTs correcteness and performance

2020-11-20 Thread Benedict Elliott Smith
I think I meant #4 __‍♂️

On 20/11/2020, 21:11, "Blake Eggleston"  wrote:

I’d also prefer #3 over #4

> On Nov 20, 2020, at 10:03 AM, Benedict Elliott Smith 
 wrote:
> 
> Well, I expressed a preference for #3 over #4, particularly for the 3.x 
series.  However at this point, I think the lack of a clear project decision 
means we can punt it back to you and Sylvain to make the final call.
> 
> On 20/11/2020, 16:23, "Benjamin Lerer"  
wrote:
> 
>I will try to summarize the discussion to clarify the outcome.
> 
>Mick is in favor of #4
>Summanth is in favor of #4
>Sylvain answer was not clear for me. I understood it like I prefer #3 
to #4
>and I am also fine with #1
>Jeff is in favor of #3 and will understand #4
>David is in favor #3 (fix bug and add flag to roll back to old 
behavior) in
>4.0 and #4 in 3.0 and 3.11
> 
>Do not hesitate to correct me if I misunderstood your answer.
> 
>Based on these answers it seems clear that most people prefer to go 
for #3
>or #4.
> 
>The choice between #3 (fix correctness opt-in to current behavior) and 
#4
>(current behavior opt-in to correctness) is a bit less clear specially 
if
>we consider the 3.X branches or 4.0.
> 
>Does anybody as some idea on how to choose between those 2 choices or 
some
>extra opinions on #3 versus #4?
> 
> 
> 
> 
> 
> 
>>On Wed, Nov 18, 2020 at 9:45 PM David Capwell  
wrote:
>> 
>> I feel that #4 (fix bug and add flag to roll back to old behavior) is 
best.
>> 
>> About the alternative implementation, I am fine adding it to 3.x and 4.0,
>> but should treat it as a different path disabled by default that you can
>> opt-into, with a plan to opt-in by default "eventually".
>> 
>> On Wed, Nov 18, 2020 at 11:10 AM Benedict Elliott Smith <
>> bened...@apache.org>
>> wrote:
>> 
>>> Perhaps there might be broader appetite to weigh in on which major
>>> releases we might target for work that fixes the correctness bug without
>>> serious performance regression?
>>> 
>>> i.e., if we were to fix the correctness bug now, introducing a serious
>>> performance regression (either opt-in or opt-out), but were to land work
>>> without this problem for 5.0, would there be appetite to backport this
>> work
>>> to any of 4.0, 3.11 or 3.0?
>>> 
>>> 
>>> On 18/11/2020, 18:31, "Jeff Jirsa"  wrote:
>>> 
>>>This is complicated and relatively few people on earth understand it,
>>> so
>>>having little feedback is mostly expected, unfortunately.
>>> 
>>>My normal emotional response is "correctness is required, opt-in to
>>>performance improvements that sacrifice strict correctness", but I'm
>>> also
>>>sure this is going to surprise people, and would understand / accept
>> #4
>>>(default to current, opt-in to correct).
>>> 
>>> 
>>>On Wed, Nov 18, 2020 at 4:54 AM Benedict Elliott Smith <
>>> bened...@apache.org>
>>>wrote:
>>> 
 It doesn't seem like there's much enthusiasm for any of the options
 available here...
 
 On 12/11/2020, 14:37, "Benedict Elliott Smith" <
>> bened...@apache.org
 
 wrote:
 
> Is the new implementation a separate, distinctly modularized
>>> new
 body of work
 
It’s primarily a distinct, modularised and new body of work,
>>> however
 there is some shared code that has been modified - namely
>>> PaxosState, in
 which legacy code is maintained but modified for compatibility, and
>>> the
 system.paxos table (which receives a new column, and slightly
>>> modified
 serialization code).  It is conceptually an optimised version of
>> the
 existing algorithm.
 
If there's a chance of being of value to 4.0, I can try to put
>>> up a
 patch next week alongside a high level description of the changes.
 
> But a performance regression is a regression, I'm not
>>> shrugging it
 off.
 
I don't want to give the impression I'm shrugging off the
>>> correctness
 issue either. It's a serious issue to fix, but since all successful
>>> updates
 to the database are linearizable, I think it's likely that many
 applications behave correctly with the present semantics, or at
>> least
 encounter only transient errors. No doubt many also do not, but I
>>> have no
 idea of the ratio.
 
The regression isn't itself a simple issue either - depending
>> on
>>> the
 topology and message latencies it is not difficult to produce
>>> inescapable
 

Re: [DISCUSS] CASSANDRA-12126: LWTs correcteness and performance

2020-11-20 Thread Blake Eggleston
I’d also prefer #3 over #4

> On Nov 20, 2020, at 10:03 AM, Benedict Elliott Smith  
> wrote:
> 
> Well, I expressed a preference for #3 over #4, particularly for the 3.x 
> series.  However at this point, I think the lack of a clear project decision 
> means we can punt it back to you and Sylvain to make the final call.
> 
> On 20/11/2020, 16:23, "Benjamin Lerer"  wrote:
> 
>I will try to summarize the discussion to clarify the outcome.
> 
>Mick is in favor of #4
>Summanth is in favor of #4
>Sylvain answer was not clear for me. I understood it like I prefer #3 to #4
>and I am also fine with #1
>Jeff is in favor of #3 and will understand #4
>David is in favor #3 (fix bug and add flag to roll back to old behavior) in
>4.0 and #4 in 3.0 and 3.11
> 
>Do not hesitate to correct me if I misunderstood your answer.
> 
>Based on these answers it seems clear that most people prefer to go for #3
>or #4.
> 
>The choice between #3 (fix correctness opt-in to current behavior) and #4
>(current behavior opt-in to correctness) is a bit less clear specially if
>we consider the 3.X branches or 4.0.
> 
>Does anybody as some idea on how to choose between those 2 choices or some
>extra opinions on #3 versus #4?
> 
> 
> 
> 
> 
> 
>>On Wed, Nov 18, 2020 at 9:45 PM David Capwell  wrote:
>> 
>> I feel that #4 (fix bug and add flag to roll back to old behavior) is best.
>> 
>> About the alternative implementation, I am fine adding it to 3.x and 4.0,
>> but should treat it as a different path disabled by default that you can
>> opt-into, with a plan to opt-in by default "eventually".
>> 
>> On Wed, Nov 18, 2020 at 11:10 AM Benedict Elliott Smith <
>> bened...@apache.org>
>> wrote:
>> 
>>> Perhaps there might be broader appetite to weigh in on which major
>>> releases we might target for work that fixes the correctness bug without
>>> serious performance regression?
>>> 
>>> i.e., if we were to fix the correctness bug now, introducing a serious
>>> performance regression (either opt-in or opt-out), but were to land work
>>> without this problem for 5.0, would there be appetite to backport this
>> work
>>> to any of 4.0, 3.11 or 3.0?
>>> 
>>> 
>>> On 18/11/2020, 18:31, "Jeff Jirsa"  wrote:
>>> 
>>>This is complicated and relatively few people on earth understand it,
>>> so
>>>having little feedback is mostly expected, unfortunately.
>>> 
>>>My normal emotional response is "correctness is required, opt-in to
>>>performance improvements that sacrifice strict correctness", but I'm
>>> also
>>>sure this is going to surprise people, and would understand / accept
>> #4
>>>(default to current, opt-in to correct).
>>> 
>>> 
>>>On Wed, Nov 18, 2020 at 4:54 AM Benedict Elliott Smith <
>>> bened...@apache.org>
>>>wrote:
>>> 
 It doesn't seem like there's much enthusiasm for any of the options
 available here...
 
 On 12/11/2020, 14:37, "Benedict Elliott Smith" <
>> bened...@apache.org
 
 wrote:
 
> Is the new implementation a separate, distinctly modularized
>>> new
 body of work
 
It’s primarily a distinct, modularised and new body of work,
>>> however
 there is some shared code that has been modified - namely
>>> PaxosState, in
 which legacy code is maintained but modified for compatibility, and
>>> the
 system.paxos table (which receives a new column, and slightly
>>> modified
 serialization code).  It is conceptually an optimised version of
>> the
 existing algorithm.
 
If there's a chance of being of value to 4.0, I can try to put
>>> up a
 patch next week alongside a high level description of the changes.
 
> But a performance regression is a regression, I'm not
>>> shrugging it
 off.
 
I don't want to give the impression I'm shrugging off the
>>> correctness
 issue either. It's a serious issue to fix, but since all successful
>>> updates
 to the database are linearizable, I think it's likely that many
 applications behave correctly with the present semantics, or at
>> least
 encounter only transient errors. No doubt many also do not, but I
>>> have no
 idea of the ratio.
 
The regression isn't itself a simple issue either - depending
>> on
>>> the
 topology and message latencies it is not difficult to produce
>>> inescapable
 contention, i.e. guaranteed timeouts - that might persist as long
>> as
 clients continue to retry. It could be quite a serious degradation
>> of
 service to impose on our users.
 
I don't pretend to know the correct way to make a decision
>>> balancing
 these considerations, but I am perhaps more concerned about
>> imposing
 service outages than I am temporarily maintaining semantics our
>>> users have
 apparently accepted for years - though I absolutely share your
 embarrassment there.
 
 
On 12/11/2020, 12:41, 

Re: [DISCUSS] CASSANDRA-12126: LWTs correcteness and performance

2020-11-20 Thread Benedict Elliott Smith
Well, I expressed a preference for #3 over #4, particularly for the 3.x series. 
 However at this point, I think the lack of a clear project decision means we 
can punt it back to you and Sylvain to make the final call.

On 20/11/2020, 16:23, "Benjamin Lerer"  wrote:

I will try to summarize the discussion to clarify the outcome.

Mick is in favor of #4
Summanth is in favor of #4
Sylvain answer was not clear for me. I understood it like I prefer #3 to #4
and I am also fine with #1
Jeff is in favor of #3 and will understand #4
David is in favor #3 (fix bug and add flag to roll back to old behavior) in
4.0 and #4 in 3.0 and 3.11

Do not hesitate to correct me if I misunderstood your answer.

Based on these answers it seems clear that most people prefer to go for #3
or #4.

The choice between #3 (fix correctness opt-in to current behavior) and #4
(current behavior opt-in to correctness) is a bit less clear specially if
we consider the 3.X branches or 4.0.

Does anybody as some idea on how to choose between those 2 choices or some
extra opinions on #3 versus #4?






On Wed, Nov 18, 2020 at 9:45 PM David Capwell  wrote:

> I feel that #4 (fix bug and add flag to roll back to old behavior) is 
best.
>
> About the alternative implementation, I am fine adding it to 3.x and 4.0,
> but should treat it as a different path disabled by default that you can
> opt-into, with a plan to opt-in by default "eventually".
>
> On Wed, Nov 18, 2020 at 11:10 AM Benedict Elliott Smith <
> bened...@apache.org>
> wrote:
>
> > Perhaps there might be broader appetite to weigh in on which major
> > releases we might target for work that fixes the correctness bug without
> > serious performance regression?
> >
> > i.e., if we were to fix the correctness bug now, introducing a serious
> > performance regression (either opt-in or opt-out), but were to land work
> > without this problem for 5.0, would there be appetite to backport this
> work
> > to any of 4.0, 3.11 or 3.0?
> >
> >
> > On 18/11/2020, 18:31, "Jeff Jirsa"  wrote:
> >
> > This is complicated and relatively few people on earth understand 
it,
> > so
> > having little feedback is mostly expected, unfortunately.
> >
> > My normal emotional response is "correctness is required, opt-in to
> > performance improvements that sacrifice strict correctness", but I'm
> > also
> > sure this is going to surprise people, and would understand / accept
> #4
> > (default to current, opt-in to correct).
> >
> >
> > On Wed, Nov 18, 2020 at 4:54 AM Benedict Elliott Smith <
> > bened...@apache.org>
> > wrote:
> >
> > > It doesn't seem like there's much enthusiasm for any of the 
options
> > > available here...
> > >
> > > On 12/11/2020, 14:37, "Benedict Elliott Smith" <
> bened...@apache.org
> > >
> > > wrote:
> > >
> > > > Is the new implementation a separate, distinctly modularized
> > new
> > > body of work
> > >
> > > It’s primarily a distinct, modularised and new body of work,
> > however
> > > there is some shared code that has been modified - namely
> > PaxosState, in
> > > which legacy code is maintained but modified for compatibility, 
and
> > the
> > > system.paxos table (which receives a new column, and slightly
> > modified
> > > serialization code).  It is conceptually an optimised version of
> the
> > > existing algorithm.
> > >
> > > If there's a chance of being of value to 4.0, I can try to put
> > up a
> > > patch next week alongside a high level description of the changes.
> > >
> > > > But a performance regression is a regression, I'm not
> > shrugging it
> > > off.
> > >
> > > I don't want to give the impression I'm shrugging off the
> > correctness
> > > issue either. It's a serious issue to fix, but since all 
successful
> > updates
> > > to the database are linearizable, I think it's likely that many
> > > applications behave correctly with the present semantics, or at
> least
> > > encounter only transient errors. No doubt many also do not, but I
> > have no
> > > idea of the ratio.
> > >
> > > The regression isn't itself a simple issue either - depending
> on
> > the
> > > topology and message latencies it is not difficult to produce
> > inescapable
> > > contention, i.e. guaranteed timeouts - that might persist as long
> as
> > > clients continue to retry. It could be quite a serious degradation
> of
> > > service to impose on our users.
> > 

Re: [DISCUSS] CASSANDRA-12126: LWTs correcteness and performance

2020-11-20 Thread Benjamin Lerer
I will try to summarize the discussion to clarify the outcome.

Mick is in favor of #4
Summanth is in favor of #4
Sylvain answer was not clear for me. I understood it like I prefer #3 to #4
and I am also fine with #1
Jeff is in favor of #3 and will understand #4
David is in favor #3 (fix bug and add flag to roll back to old behavior) in
4.0 and #4 in 3.0 and 3.11

Do not hesitate to correct me if I misunderstood your answer.

Based on these answers it seems clear that most people prefer to go for #3
or #4.

The choice between #3 (fix correctness opt-in to current behavior) and #4
(current behavior opt-in to correctness) is a bit less clear specially if
we consider the 3.X branches or 4.0.

Does anybody as some idea on how to choose between those 2 choices or some
extra opinions on #3 versus #4?






On Wed, Nov 18, 2020 at 9:45 PM David Capwell  wrote:

> I feel that #4 (fix bug and add flag to roll back to old behavior) is best.
>
> About the alternative implementation, I am fine adding it to 3.x and 4.0,
> but should treat it as a different path disabled by default that you can
> opt-into, with a plan to opt-in by default "eventually".
>
> On Wed, Nov 18, 2020 at 11:10 AM Benedict Elliott Smith <
> bened...@apache.org>
> wrote:
>
> > Perhaps there might be broader appetite to weigh in on which major
> > releases we might target for work that fixes the correctness bug without
> > serious performance regression?
> >
> > i.e., if we were to fix the correctness bug now, introducing a serious
> > performance regression (either opt-in or opt-out), but were to land work
> > without this problem for 5.0, would there be appetite to backport this
> work
> > to any of 4.0, 3.11 or 3.0?
> >
> >
> > On 18/11/2020, 18:31, "Jeff Jirsa"  wrote:
> >
> > This is complicated and relatively few people on earth understand it,
> > so
> > having little feedback is mostly expected, unfortunately.
> >
> > My normal emotional response is "correctness is required, opt-in to
> > performance improvements that sacrifice strict correctness", but I'm
> > also
> > sure this is going to surprise people, and would understand / accept
> #4
> > (default to current, opt-in to correct).
> >
> >
> > On Wed, Nov 18, 2020 at 4:54 AM Benedict Elliott Smith <
> > bened...@apache.org>
> > wrote:
> >
> > > It doesn't seem like there's much enthusiasm for any of the options
> > > available here...
> > >
> > > On 12/11/2020, 14:37, "Benedict Elliott Smith" <
> bened...@apache.org
> > >
> > > wrote:
> > >
> > > > Is the new implementation a separate, distinctly modularized
> > new
> > > body of work
> > >
> > > It’s primarily a distinct, modularised and new body of work,
> > however
> > > there is some shared code that has been modified - namely
> > PaxosState, in
> > > which legacy code is maintained but modified for compatibility, and
> > the
> > > system.paxos table (which receives a new column, and slightly
> > modified
> > > serialization code).  It is conceptually an optimised version of
> the
> > > existing algorithm.
> > >
> > > If there's a chance of being of value to 4.0, I can try to put
> > up a
> > > patch next week alongside a high level description of the changes.
> > >
> > > > But a performance regression is a regression, I'm not
> > shrugging it
> > > off.
> > >
> > > I don't want to give the impression I'm shrugging off the
> > correctness
> > > issue either. It's a serious issue to fix, but since all successful
> > updates
> > > to the database are linearizable, I think it's likely that many
> > > applications behave correctly with the present semantics, or at
> least
> > > encounter only transient errors. No doubt many also do not, but I
> > have no
> > > idea of the ratio.
> > >
> > > The regression isn't itself a simple issue either - depending
> on
> > the
> > > topology and message latencies it is not difficult to produce
> > inescapable
> > > contention, i.e. guaranteed timeouts - that might persist as long
> as
> > > clients continue to retry. It could be quite a serious degradation
> of
> > > service to impose on our users.
> > >
> > > I don't pretend to know the correct way to make a decision
> > balancing
> > > these considerations, but I am perhaps more concerned about
> imposing
> > > service outages than I am temporarily maintaining semantics our
> > users have
> > > apparently accepted for years - though I absolutely share your
> > > embarrassment there.
> > >
> > >
> > > On 12/11/2020, 12:41, "Joshua McKenzie"  >
> > wrote:
> > >
> > > Is the new implementation a separate, distinctly
> modularized
> > new
> > > body of
> > > work or does it make substantial changes to existing
> > > implementation and
> > > subsume it?
> > >
> >