This particular method, Region.getStatistics, when called on a client does
not send a message to the server.
So it returns a stats object describing the region on the client.
So this would not change the behaviour on a client running an older version
of geode.

On Thu, May 23, 2019 at 1:00 PM Owen Nichols <onich...@pivotal.io> wrote:

> +1
>
> I see no semantic difference between adding a new method vs implementing a
> stub that previously threw UnsupportedOperationException
>
> > On May 23, 2019, at 12:56 PM, Udo Kohlmeyer <u...@apache.org> wrote:
> >
> > +1 to implementing this method.
> >
> > There is no plausible reason NOT to implement this.
> >
> > --Udo
> >
> > On 5/23/19 12:44, Dan Smith wrote:
> >> +1 to implementing this method in a minor release.
> >>
> >> I'm with Jake on this one. Every bug we fix changes the behavior of the
> >> product in some small way. This seems like a behavior change for the
> better
> >> - I can't picture a use case where someone is actually *relying* on this
> >> method throwing UnsupportedOperationException.
> >>
> >> I suppose someone might write a test that this feature is not supported
> -
> >> but it seems like the only reason to do that would be to detect when
> geode
> >> starts supporting getStatistics, so they'd probably be happy to see
> >> getStatistics start working!
> >>
> >>
> >> -Dan
> >>
> >> On Thu, May 23, 2019 at 10:31 AM Anilkumar Gingade <aging...@pivotal.io
> >
> >> wrote:
> >>
> >>> I agree, this may not look like the usecase that one would be using or
> >>> depending. Going with the backward compatibility requirement this will
> be
> >>> breaking that contract.
> >>> Again, based on the scenario and usecases, there could be exceptions.
> I am
> >>> trying to see if the versioning support that's used to keep the
> backward
> >>> compatibility contract can be used here.
> >>>
> >>> On Thu, May 23, 2019 at 10:17 AM Jacob Barrett <jbarr...@pivotal.io>
> >>> wrote:
> >>>
> >>>> But what application is going to legitimately call this method and
> expect
> >>>> that it throw an exception? What would be the function of that usage?
> >>>>
> >>>> If you assume that calling this method under these conditions had no
> >>> value
> >>>> and would therefor never have been called then one could argue that
> >>>> implementing this method is adding a feature. It adds a case where one
> >>>> could legitimately call this method under new conditions.
> >>>>
> >>>>> On May 23, 2019, at 10:06 AM, Anilkumar Gingade <aging...@pivotal.io
> >
> >>>> wrote:
> >>>>> As this changes the behavior on the existing older application; it
> >>> seems
> >>>> to
> >>>>> break the backward compatibility requirements.
> >>>>> We use client versions to keep the contracts/behavior same for older
> >>>>> client; can we do the same here.
> >>>>>
> >>>>> -Anil.
> >>>>>
> >>>>>
> >>>>> On Thu, May 23, 2019 at 8:33 AM Darrel Schneider <
> >>> dschnei...@pivotal.io>
> >>>>> wrote:
> >>>>>
> >>>>>> Is it okay, in a minor release, to implement Region.getStatistics
> for
> >>>>>> partitioned regions? See GEODE-2685. The current behavior is for it
> to
> >>>>>> always throw UnsupportedOperationException. I doubt that any
> >>>> application is
> >>>>>> depending on that behavior but it could be. I know we have seen
> >>> changes
> >>>>>> like this in the past break the tests of other products that are
> >>>> layered on
> >>>>>> top of Geode.
> >>>>>> Should this type of change be considered one that breaks backwards
> >>>>>> compatibility?
> >>>>>>
> >>>>
>
>

Reply via email to