For the record, the Druid adapter has used RangeSet for a long while, and it made sense, because Druid was doing tricky computations on date ranges. Introducing Sargs brought that style to other parts of Calcite.
If someone was to build an adapter similar to the Druid adapter, based on 1.26, externally to Calcite, they probably would not have to depend on RangeSet because Calcite’s Sarg class would do the rewrites that they need. Julian > On Sep 29, 2020, at 12:24 PM, Vladimir Sitnikov <[email protected]> > wrote: > > Julian>The vast majority of clients who use Sarg (or expressions that > contain Sarg) will not reference RangeSet > Julian> directly and therefore would not be impacted. So I think it’s an > acceptable risk. > > Well, it is hard to tell, however, I know Druid is using Sargs, and, I > guess, Druid is one among the very least tested adapters. > See > https://github.com/apache/calcite/pull/2182/commits/edf57dce13d00d3f7c4035c323f5de2568dc8699 > > In other words, Druid adapter proves Calcite forces clients to use > Guava's @Beta API :( > > Vladimir
