Dan, yeah, the suggested change in the stack overflow answer does work and I was able to put an if with the exact serialVersionUid before posting the proposal, but it is pretty hacky and may affect another class that somehow generated the same uid. I can make that change too but I'd prefer not to have to maintain it moving forward...
On Tue, Nov 28, 2017 at 5:09 PM Dan Smith <dsm...@pivotal.io> wrote: > I agree I don't think we can get rid of FunctionAdapter until the next > major version. > > I was thinking FunctionAdapter is rather widely used, but then I'm > surprised no one has hit this yet. > > All of the options kinda suck here - either pre 1.0 users have a > compatibility issue or 1.0-1.3 users do. With your proposoal 1.0 - 1.3 > users would have modify their source code on the client and the server for > the function, correct? > > If we got really fancy we could actually ignore the serialVersionUUID for > this class like this - https://stackoverflow.com/a/1816711/2813144. But > it's pretty messy. > > -Dan > > On Tue, Nov 28, 2017 at 1:59 PM, Alexander Murmann <amurm...@pivotal.io> > wrote: > > > Anil, I am not sure following. I think FunctionAdapter already is > > deprecated. Isn't it? Anthony is right though that we shouldn't remove > > anything customer facing unless we are doing a major release. Otherwise > we > > are violating the contract provided by semantic versioning. > > > > On Tue, Nov 28, 2017 at 1:52 PM, Anilkumar Gingade <aging...@pivotal.io> > > wrote: > > > > > I haven't seen many uses of FunctionAdapter; if its not used much, I > > think > > > we should deprecate this... > > > > > > It only provided default implementation for few of the methods; this > > could > > > be added in the docs/release notes to help application to move to > > function > > > implementation. > > > > > > -Anil. > > > > > > > > > On Tue, Nov 28, 2017 at 12:40 PM, Anthony Baker <aba...@pivotal.io> > > wrote: > > > > > > > I think we should wait for a major release to remove API’s. If we > > broke > > > a > > > > public API, we should fix that IMO. > > > > > > > > Anthony > > > > > > > > > > > > > On Nov 28, 2017, at 11:40 AM, Patrick Rhomberg < > prhomb...@pivotal.io > > > > > > > wrote: > > > > > > > > > > +1 to removing a long-deprecated class from the Geode side. > > > > > > > > > > On Tue, Nov 28, 2017 at 8:04 AM, Bruce Schuchardt < > > > > bschucha...@pivotal.io> > > > > > wrote: > > > > > > > > > >> How about just getting rid of this class? After all it was marked > > as > > > > >> being deprecated in 1.0. Pivotal could add a compatible > > > FunctionAdapter > > > > >> class in their GemFire builds to support these old clients. > > > > >> > > > > >> > > > > >> > > > > >> On 11/27/17 10:18 AM, Jason Huynh wrote: > > > > >> > > > > >>> This is a discussion for the fix to GEODE-4008: > > > > >>> InvalidClassException when deserializing FunctionAdapter from pre > > > Geode > > > > >>> clients > > > > >>> > > > > >>> There was a change to deprecate FunctionAdapter in Geode (before > > > 1.0), > > > > and > > > > >>> this also removed the method signatures in the class. This caused > > > Java > > > > to > > > > >>> generate a new serialVersionUID to the class because one was not > > > > assigned > > > > >>> previously. However we have clients pre Geode that when they > > attempt > > > to > > > > >>> execute a function by serializing the function across (not using > a > > > > >>> function > > > > >>> id), the FunctionAdapter class is unable to deserialize properly. > > > > >>> > > > > >>> The proposed fix is to assign a serialVersionUID to the class > that > > > > matches > > > > >>> that of the pre Geode FunctionAdapter. This will cause any Geode > > > > 1.0-1.3 > > > > >>> clients to now run into the error but the older clients would > work > > > > fine. > > > > >>> Because FunctionAdapter has been deprecated it should be easy > > enough > > > > for > > > > >>> Geode 1.0-1.3 users to change their custom classes to implement > > > > Function > > > > >>> directly and not use the deprecated FunctionAdapter class. > > > > >>> > > > > >>> Please let me know if there is a better solution or if there are > > > > problems > > > > >>> with the proposed fix. > > > > >>> > > > > >>> > > > > >>> Thanks, > > > > >>> > > > > >>> -Jason > > > > >>> > > > > >>> > > > > >> > > > > > > > > > > > > > >