I second Patrick about the parties and all that… Thanks, Simon for all your work! I am excited to see what’s next from you as I am sure it will be awesome!
Cheers! On Thu, 16 May 2024 at 14:50, Jon Haddad <j...@jonhaddad.com> wrote: > Benjamin, I’m +1 on adding BETWEEN, thanks for bringing this up. > > To all, my intention wasn’t to suggest we add support for update between > via range writes at the same time, if it came across that way i apologize > for the confusion. > > Josh, thanks for the suggestion. If I feel inspired to discuss with the > dev list any further I’ll be sure to start a new thread. > > Jon > > > On Thu, May 16, 2024 at 7:57 AM Josh McKenzie <jmcken...@apache.org> > wrote: > >> More of a "how could we technically reach mars?" discussion than a "how >> we get congress to authorize a budget to reach mars?" >> >> Wow - that is genuinely a great simile. Really good point. >> >> To Jeff's point - want to kick off a [DISCUSS] thread referencing this >> thread Jon so we can take the conversation there? Definitely think it's >> worth continuing from a technical perspective. >> >> On Wed, May 15, 2024, at 2:49 PM, Jeff Jirsa wrote: >> >> You can remove the shadowed values at compaction time, but you can’t ever >> fully propagate the range update to point updates, so you’d be propagating >> all of the range-update structures throughout everything forever. It’s JUST >> like a range tombstone - you don’t know what it’s shadowing (and can’t, in >> many cases, because the width of the range is uncountable for some types). >> >> Setting aside whether or not this construct is worth adding (I suspect a >> lot of binding votes would say it’s not), the thread focuses on BETWEEN >> operator, and there’s no reason we should pollute the conversation of “add >> a missing SQL operator that basically maps to existing functionality” with >> creation of a brand new form of update that definitely doesn’t map to any >> existing concepts. >> >> >> >> >> >> On May 14, 2024, at 10:05 AM, Jon Haddad <j...@jonhaddad.com> wrote: >> >> Personally, I don't think that something being scary at first glance is a >> good reason not to explore an idea. The scenario you've described here is >> tricky but I'm not expecting it to be any worse than say, SAI, which (the >> last I checked) has O(N) complexity on returning result sets with regard to >> rows returned. We've also merged in Vector search which has O(N) overhead >> with the number of SSTables. We're still fundamentally looking at, in most >> cases, a limited number of SSTables and some merging of values. >> >> Write updates are essentially a timestamped mask, potentially >> overlapping, and I suspect potentially resolvable during compaction by >> propagating the values. They could be eliminated or narrowed based on how >> they've propagated by using the timestamp metadata on the SSTable. >> >> It would be a lot more constructive to apply our brains towards solving >> an interesting problem than pointing out all its potential flaws based on >> gut feelings. We haven't even moved this past an idea. >> >> I think it would solve a massive problem for a lot of people and is 100% >> worth considering. Thanks Patrick and David for raising this. >> >> Jon >> >> >> >> On Tue, May 14, 2024 at 9:48 AM Bowen Song via dev < >> dev@cassandra.apache.org> wrote: >> >> >> Ranged update sounds like a disaster for compaction and read performance. >> >> Imagine compacting or reading some SSTables in which a large number of >> overlapping but non-identical ranges were updated with different values. It >> gives me a headache by just thinking about it. >> >> Ranged delete is much simpler, because the "value" is the same tombstone >> marker, and it also is guaranteed to expire and disappear eventually, so >> the performance impact of dealing with them at read and compaction time >> doesn't suffer in the long term. >> >> On 14/05/2024 16:59, Benjamin Lerer wrote: >> >> It should be like range tombstones ... in much worse ;-). A tombstone is >> a simple marker (deleted). An update can be far more complex. >> >> Le mar. 14 mai 2024 à 15:52, Jon Haddad <j...@jonhaddad.com> a écrit : >> >> Is there a technical limitation that would prevent a range write that >> functions the same way as a range tombstone, other than probably needing a >> version bump of the storage format? >> >> >> On Tue, May 14, 2024 at 12:03 AM Benjamin Lerer <ble...@apache.org> >> wrote: >> >> Range restrictions (>, >=, =<, < and BETWEEN) do not work on UPDATEs. >> They do work on DELETE because under the hood C* they get translated into >> range tombstones. >> >> Le mar. 14 mai 2024 à 02:44, David Capwell <dcapw...@apple.com> a écrit : >> >> I would also include in UPDATE… but yeah, <3 BETWEEN and welcome this >> work. >> >> On May 13, 2024, at 7:40 AM, Patrick McFadin <pmcfa...@gmail.com> wrote: >> >> This is a great feature addition to CQL! I get asked about it from time >> to time but then people figure out a workaround. It will be great to just >> have it available. >> >> And right on Simon! I think the only project I had as a high school >> senior was figuring out how many parties I could go to and still maintain a >> passing grade. Thanks for your work here. >> >> Patrick >> >> On Mon, May 13, 2024 at 1:35 AM Benjamin Lerer <ble...@apache.org> wrote: >> >> Hi everybody, >> >> Just raising awareness that Simon is working on adding support for the >> BETWEEN operator in WHERE clauses (SELECT and DELETE) in CASSANDRA-19604. >> We plan to add support for it in conditions in a separate patch. >> >> The patch is available. >> >> As a side note, Simon chose to do his highschool senior project >> contributing to Apache Cassandra. This patch is his first contribution for >> his senior project (his second feature contribution to Apache Cassandra). >> >> >> >>