Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 8F7CA200C53 for ; Tue, 11 Apr 2017 19:06:24 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 8E324160B9E; Tue, 11 Apr 2017 17:06:24 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id D4FDC160B7D for ; Tue, 11 Apr 2017 19:06:23 +0200 (CEST) Received: (qmail 50182 invoked by uid 500); 11 Apr 2017 17:06:23 -0000 Mailing-List: contact dev-help@ignite.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@ignite.apache.org Delivered-To: mailing list dev@ignite.apache.org Received: (qmail 50171 invoked by uid 99); 11 Apr 2017 17:06:23 -0000 Received: from mail-relay.apache.org (HELO mail-relay.apache.org) (140.211.11.15) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 11 Apr 2017 17:06:22 +0000 Received: from mail-qk0-f175.google.com (mail-qk0-f175.google.com [209.85.220.175]) by mail-relay.apache.org (ASF Mail Server at mail-relay.apache.org) with ESMTPSA id B06E41A002E for ; Tue, 11 Apr 2017 17:06:22 +0000 (UTC) Received: by mail-qk0-f175.google.com with SMTP id f133so2966220qke.2 for ; Tue, 11 Apr 2017 10:06:22 -0700 (PDT) X-Gm-Message-State: AFeK/H3RXXxpoKk0Vv1o7mrygAPjpe493J6gW4E4zTYQ0fLKppWEfCVUf4TISDv1Z3o0Tj/X2OMO7U+2d4XAKBP9 X-Received: by 10.55.115.67 with SMTP id o64mr61925036qkc.215.1491930381832; Tue, 11 Apr 2017 10:06:21 -0700 (PDT) MIME-Version: 1.0 Received: by 10.200.43.163 with HTTP; Tue, 11 Apr 2017 10:05:41 -0700 (PDT) In-Reply-To: References: From: Dmitriy Setrakyan Date: Tue, 11 Apr 2017 10:05:41 -0700 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: AffinityKeyMapper: break compatibility before 2.0 To: dev@ignite.apache.org Content-Type: multipart/alternative; boundary=001a114ff3b6706727054ce71c4a archived-at: Tue, 11 Apr 2017 17:06:24 -0000 --001a114ff3b6706727054ce71c4a Content-Type: text/plain; charset=UTF-8 OK, let's drop it. But we should provide clear instructions in the 2.0 migration guide about this change. On Tue, Apr 11, 2017 at 1:33 AM, Sergi Vladykin wrote: > +1 to Vladimir. > > Sergi > > 2017-04-11 10:48 GMT+03:00 Vladimir Ozerov : > > > Dima, > > > > The whole idea of AffinityKeyMapper appears to be wrong since we will > have > > only BinaryMarshaller. We do not have classes on server, how can we rely > on > > interface this class extends? I think we should do the following: > > 1) Allow @AffinityKeyMapped annotation on fields only (it doesn't work on > > methods with binary anyway). > > 2) Drop AffinityKeyMapper completely. > > 3) Hopefully, at some point we will implement old Yakov's idea of > > declarative extensions to binary objects, which will handle "affintiy > key", > > "equals/hashCode" and "compareTo" cases without necessity to have any > > interface implementation classes on the server. > > > > Thoughts? > > > > On Tue, Apr 11, 2017 at 10:41 AM, Dmitriy Setrakyan < > dsetrakyan@apache.org > > > > > wrote: > > > > > I agree that this interface is problematic. However, I don't think that > > > dropping it right away would be fair to our users. Can we deprecate it > > and > > > print out a warning that AffinityKeyMapper cannot be used with DDL > > > statements? > > > > > > D. > > > > > > On Tue, Apr 11, 2017 at 12:32 AM, Sergi Vladykin < > > sergi.vladykin@gmail.com > > > > > > > wrote: > > > > > > > Guys, > > > > > > > > We are moving in direction of better distributed SQL support, it > means > > > that > > > > we always will need to know an affinity field name for key type. > > > > > > > > Now we have AffinityKeyMapper which hides it from us. > > > > > > > > Since we have other means of configuring the affinity key, e.g > > > > CacheKeyConfiguration and @AffinityKeyMapped, I suggest to either > drop > > > this > > > > interface or change it so that it just return affinity key field name > > > > instead of the affinity key field value. I prefer dropping it. > > > > > > > > What do you think? > > > > > > > > Sergi > > > > > > > > > > --001a114ff3b6706727054ce71c4a--