From dev-return-42092-archive-asf-public=cust-asf.ponee.io@ignite.apache.org Tue Nov 20 16:09:03 2018 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx-eu-01.ponee.io (Postfix) with SMTP id 8BBB018064E for ; Tue, 20 Nov 2018 16:09:02 +0100 (CET) Received: (qmail 13982 invoked by uid 500); 20 Nov 2018 15:09:01 -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 13957 invoked by uid 99); 20 Nov 2018 15:09:00 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd4-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 20 Nov 2018 15:09:00 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd4-us-west.apache.org (ASF Mail Server at spamd4-us-west.apache.org) with ESMTP id 4508BC1A84 for ; Tue, 20 Nov 2018 15:09:00 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 0.652 X-Spam-Level: X-Spam-Status: No, score=0.652 tagged_above=-999 required=6.31 tests=[DKIMWL_WL_MED=-1.46, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_REPLY=1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URI_HEX=1.313] autolearn=disabled Authentication-Results: spamd4-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd4-us-west.apache.org [10.40.0.11]) (amavisd-new, port 10024) with ESMTP id 9RSUAQ1RdzAA for ; Tue, 20 Nov 2018 15:08:53 +0000 (UTC) Received: from mail-pl1-f178.google.com (mail-pl1-f178.google.com [209.85.214.178]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with ESMTPS id 7D764626EA for ; Tue, 20 Nov 2018 15:03:00 +0000 (UTC) Received: by mail-pl1-f178.google.com with SMTP id s5-v6so1116191plq.11 for ; Tue, 20 Nov 2018 07:03:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :content-transfer-encoding; bh=5LvqM5d1DjzVRhiwctF1RPghGDaNx6/039PuXrcBrV8=; b=blpv8CgvXCAN+4g4X3sjydpxeywabB8FQOXUM0Lp5p2TNkEyq7CWTWk2JjTsy4t75m wzTQJPb3TvjLXjkX32z2wOWYy2Rxz+WCJoAJbBq7u6SC271B2L9xCenUcAkX2U7reF1X XjrWcZd9HsApcelenqkB2XASSwmCNvGCGcZbLbk54iWM62IaBsSRcm7iewNzla+jQEOW 62tZgahRj2CQVOxw4WYx8ra3zmi5AJSiMj4BIHsU+H9mgf5bZqJ5hmdAQj2/qrhQTc3u J1K6kcYjwU4XRLRA5PyYqbNN+6qcl8GD+ciJPOyeyPt6X90UKTr+MI0CtGI6MruhnJm6 PSIA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:content-transfer-encoding; bh=5LvqM5d1DjzVRhiwctF1RPghGDaNx6/039PuXrcBrV8=; b=d7vB125FHgmAXclSCoJF4QAQDI/UfVYk+69WuBaexCCsZDHTrj+aXLcjVr2+eEntFY 63aDmulk2PoQBs1wPlH10HlQcf4sKl/Fw/0lqzaEfjIpsmiiXe+pNTDRNTAhtBJOSFdz 4jJis5VepMDTQpXCBacZRzGoNj1052Z+rvDb53qnauhVBRrWYV/iC8Z7i7df+EhWNL4F Mb6reYRykvtMdaR6L+40JQ91Kd5TZvTjt45NpFHwVQ6HSn1xqebasgxvYHKdnswd5/CX d0y3NGF+xIN0FTKbYZ3rnofMspprEfqmbCi08KE/GmGxk8cD4O1FtiQYiBW5HZo42SxZ B2xQ== X-Gm-Message-State: AA+aEWZ9cdptavOwGGuxcJsdMNZEn4kt889Jrxa9EXJzVFM9loZckCxV eDYmkkmn2RNN8fxCJSQoKApv3SuLj97blHikFCguZXFjvvY= X-Google-Smtp-Source: AFSGD/WyTccYL627yy3bZPuPNyL2+xqyDwQ4qtFc+hGiYEcr5qpvnLifQ6Qn2M/FYxog535/1Aqk4EjrA0U/1nCgTpo= X-Received: by 2002:a17:902:7b88:: with SMTP id w8mr2552515pll.320.1542726178978; Tue, 20 Nov 2018 07:02:58 -0800 (PST) MIME-Version: 1.0 References: <021b64eb10c373d3d9d64733e64fe2364fd0a5ac.camel@gmail.com> In-Reply-To: From: Vyacheslav Daradur Date: Tue, 20 Nov 2018 18:02:44 +0300 Message-ID: Subject: Re: Service grid redesign To: dev@ignite.apache.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Denis, thanks for your participation! >> There is no exchange in case of service deployment There is some kind of exchange of services map which describes mapping services instances to nodes in the cluster. I'm a bit confused because of your notes about naming, the main goal was to do the code to be transparent for Ignites experts and to not confuse them. Also, the messages names and structure has been presented and discussed with community [1] during a design overview. [1] http://apache-ignite-developers.2346864.n4.nabble.com/Service-Grid-new-= design-overview-td34201.html On Tue, Nov 20, 2018 at 5:19 PM Denis Mekhanikov wr= ote: > > Vyacheslav, > > I'm in process of reviewing your changes. Sorry for taking so long. > I posted the first portion of review comments yesterday. > I'd like to finish looking through the code. I'll post more comments late= r. > > I see, that you called things analogously to partition map exchange. > I realize, that there is an analogy in used procedures, but I don't reall= y > like the idea to use the same names for everything. > The partition map exchange is called this way because it involves an actu= al > exchange of information. > All nodes need to tell each other, which partitions they have, and what > their states are. > > There is no exchange in case of service deployment, so I would skip the > "exchange" part. > And *single message ->* *full message* look more like *request -> respons= e* > in case of services. > > Suppose we abandon the PME procedure and move to something else. > Then *ServiceDeploymentExchange* name won't make sense. > And I don't want to be in a situation, when I say to my colleague a word > "exchange", > and get "which one?" in return. > So, I'm for the meaningful names rather than analogous to something else. > > What do you think? > > Denis > > =D0=B2=D1=82, 20 =D0=BD=D0=BE=D1=8F=D0=B1. 2018 =D0=B3. =D0=B2 12:09, Vya= cheslav Daradur : > > > Denis, Yakov have you had a chance to review the solution? > > > > Igniters, we need to define a list of reviewers, otherwise no end in si= gn. > > > > I'm ready to continue work on the Service Grid, including new features > > like hot-redeployment and versioning, also, I have ideas about new > > tools for monitoring and management which will be useful for our > > end-users. > > > > But for continuing work we need to overcome this first phase. > > > > On Tue, Nov 13, 2018 at 1:09 PM Vyacheslav Daradur > > wrote: > > > > > > Denis, Yakov, feel free to contact me directly in case of questions. > > Thanks! > > > > > > On Sun, Nov 11, 2018 at 10:09 PM Denis Mekhanikov > > wrote: > > > > > > > > Guys, > > > > > > > > I'd like to take a look at the changes before they are merged. > > > > I'll do my best to finish the review before the end of the upcoming > > week. > > > > > > > > Thanks! > > > > Denis > > > > > > > > =D1=81=D0=B1, 10 =D0=BD=D0=BE=D1=8F=D0=B1. 2018 =D0=B3. =D0=B2 14:2= 5, Nikolay Izhikov : > > > > > > > > > Hello, Vladimir. > > > > > > > > > > I'm agree with you. > > > > > > > > > > Can we write the list of reviewers for this feature? > > > > > Without a date or similar. > > > > > Just a list of experts who should review this feature. > > > > > > > > > > =D0=92 =D0=A1=D0=B1, 10/11/2018 =D0=B2 14:01 +0300, Vladimir Ozer= ov =D0=BF=D0=B8=D1=88=D0=B5=D1=82: > > > > > > Igniters, > > > > > > > > > > > > This is very huge thing with complex algorithms behind. We shou= ld > > not > > > > > merge > > > > > > it to the product unless several additional thorough reviews ar= e > > ready, > > > > > > irrespectively of how long will it take. We are about quality, = not > > speed. > > > > > > > > > > > > =D1=81=D0=B1, 10 =D0=BD=D0=BE=D1=8F=D0=B1. 2018 =D0=B3. =D0=B2 = 1:30, Denis Magda : > > > > > > > > > > > > > Vyacheslav, > > > > > > > > > > > > > > What are the cases when the service can be redeployed? Affini= ty, > > > > > failure, > > > > > > > etc., right. It would be good to list all the cases on the wi= ki > > and > > > > > then > > > > > > > our tech writers will get everything documented. > > > > > > > > > > > > > > -- > > > > > > > Denis > > > > > > > > > > > > > > On Thu, Nov 8, 2018 at 11:06 PM Vyacheslav Daradur < > > > > > daradurvs@gmail.com> > > > > > > > wrote: > > > > > > > > > > > > > > > Denis, > > > > > > > > > > > > > > > > Services reassignment process takes into account previous > > assignments > > > > > > > > to avoid redundant redeployments. > > > > > > > > So, in the described case, ServiceA won't be moved from nod= e1 > > to > > > > > node2. > > > > > > > > On Fri, Nov 9, 2018 at 4:41 AM Denis Magda > > > > > wrote: > > > > > > > > > > > > > > > > > > Vyacheslav, > > > > > > > > > > > > > > > > > > First of all, thanks for archiving this milestone and > > rolling out > > > > > these > > > > > > > > > > > > > > > > new > > > > > > > > > capabilities. > > > > > > > > > > > > > > > > > > Speaking of the topology change events [1], does the new > > > > > architecture > > > > > > > > > > > > > > > > avoid > > > > > > > > > a running service redeployment when a new node joins? For > > instance, > > > > > > > > > > > > > > let's > > > > > > > > > say I have ServiceA running node1, then node2 joins and I > > don't > > > > > want > > > > > > > > > > > > > > the > > > > > > > > > service to be redeployed to any other node. > > > > > > > > > > > > > > > > > > [1] > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=3D9565= 4584#ServiceGridredesign.Phase1.Implementationdetails.-Topologychange > > > > > > > > > > > > > > > > > > -- > > > > > > > > > Denis > > > > > > > > > > > > > > > > > > On Wed, Nov 7, 2018 at 7:04 AM Vyacheslav Daradur < > > > > > daradurvs@gmail.com > > > > > > > > > wrote: > > > > > > > > > > > > > > > > > > > Dmitriy, I published documentation in wiki: > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=3D9565= 4584 > > > > > > > > > > > > > > > > > > > > Thank you! > > > > > > > > > > On Wed, Nov 7, 2018 at 5:10 PM Dmitriy Pavlov < > > > > > dpavlov.spb@gmail.com > > > > > > > > > > wrote: > > > > > > > > > > > > > > > > > > > > > > Hi I think wiki is better than any attached docs. Cou= ld > > you > > > > > please > > > > > > > > > > > > > > > > > > > > create a > > > > > > > > > > > page? > > > > > > > > > > > > > > > > > > > > > > =D1=81=D1=80, 7 =D0=BD=D0=BE=D1=8F=D0=B1. 2018 =D0=B3= ., 14:39 Vyacheslav Daradur < > > > > > daradurvs@gmail.com > > > > > > > > > > > > > > > > : > > > > > > > > > > > > > > > > > > > > > > > I prepared a description of the implemented solutio= n > > and > > > > > attached > > > > > > > > > > > > > > > > it > > > > > > > > > > > > to the issue [1]. > > > > > > > > > > > > > > > > > > > > > > > > This should help during a review. Should I post the > > document > > > > > into > > > > > > > > > > > > > > > > wiki > > > > > > > > > > or > > > > > > > > > > > > IEP? > > > > > > > > > > > > > > > > > > > > > > > > I'd like to ask Ignite's experts review the solutio= n > > [1] [2], > > > > > > > > > > > > > > > > please? > > > > > > > > > > > > > > > > > > > > > > > > [1] https://issues.apache.org/jira/browse/IGNITE-96= 07 > > > > > > > > > > > > [2] https://github.com/apache/ignite/pull/4434 > > > > > > > > > > > > On Wed, Oct 31, 2018 at 5:04 PM Vyacheslav Daradur = < > > > > > > > > > > > > > > > > > > > > daradurvs@gmail.com> > > > > > > > > > > > > wrote: > > > > > > > > > > > > > > > > > > > > > > > > > > Hi, Igniters! Good news! > > > > > > > > > > > > > > > > > > > > > > > > > > Service Grid Redesign Phase 1 - is in Patch > > Available now. > > > > > > > > > > > > > > > > > > > > > > > > > > Nikolay Izhikov has reviewed implementation. > > > > > > > > > > > > > > > > > > > > > > > > > > However, we need additional review from other Ign= ite > > > > > experts. > > > > > > > > > > > > > > > > > > > > > > > > > > Here is an umbrella ticket [1] and PR [2]. > > > > > > > > > > > > > > > > > > > > > > > > > > Could someone step in and do the review? > > > > > > > > > > > > > > > > > > > > > > > > > > [1] > > https://issues.apache.org/jira/browse/IGNITE-9607 > > > > > > > > > > > > > [2] https://github.com/apache/ignite/pull/4434 > > > > > > > > > > > > > On Sat, Aug 18, 2018 at 11:44 AM Denis Mekhanikov= < > > > > > > > > > > > > > > > > > > > > dmekhanikov@gmail.com> > > > > > > > > > > > > wrote: > > > > > > > > > > > > > > > > > > > > > > > > > > > > Pavel, could you assist? > > > > > > > > > > > > > > > > > > > > > > > > > > > > Does it make sense for .Net to specify service > > class name > > > > > > > > > > > > > > > > instead > > > > > > > > > > of > > > > > > > > > > > > its > > > > > > > > > > > > > > implementation? > > > > > > > > > > > > > > > > > > > > > > > > > > > > I think, it shouldn't be a problem. > > > > > > > > > > > > > > > > > > > > > > > > > > > > Denis > > > > > > > > > > > > > > > > > > > > > > > > > > > > On Sat, Aug 18, 2018, 11:33 Vyacheslav Daradur = < > > > > > > > > > > > > > > > > > > > > daradurvs@gmail.com> > > > > > > > > > > > > wrote: > > > > > > > > > > > > > > > > > > > > > > > > > > > > > I think that the replacement of serialized > > instance > > > > > makes > > > > > > > > > > > > > > > > sense > > > > > > > > > > to me > > > > > > > > > > > > > > > for Java part. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > But how it should work for .NET client? > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > On Tue, Aug 14, 2018 at 4:07 PM Dmitriy > > Setrakyan < > > > > > > > > > > > > > > > > > > > > > > > > dsetrakyan@apache.org> > > > > > > > > > > > > > > > wrote: > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > On Tue, Aug 14, 2018 at 6:10 AM, Nikita > > Amelchev < > > > > > > > > > > > > > > > > > > > > > > > > nsamelchev@gmail.com> > > > > > > > > > > > > > > > > wrote: > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > Hello, Igniters. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > I am working on task [1] that would repla= ce > > > > > serialized > > > > > > > > > > > > > > > > > > > > service's > > > > > > > > > > > > > > > instance > > > > > > > > > > > > > > > > > by service's class name and properties ma= p in > > > > > > > > > > > > > > > > > > > > > > > > {ServiceConfiguration}. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > The task describes that we should use > > > > > > > > > > > > > > > > > {String className} + {Map > > > > > properties} > > > > > > > > > > > > > > > > instead > > > > > > > > > > > > {Service > > > > > > > > > > > > > > > > > srvc}. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > I'd like to clarify the following questio= ns: > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > 1. What about public methods? > > > > > > > > > > > > > > > > > I suggest to mark them as deprecated and = use > > class > > > > > name > > > > > > > > > > > > > > > > of > > > > > > > > > > > > provided > > > > > > > > > > > > > > > > > instance. > > > > > > > > > > > > > > > > > Also to add deploying methods with new > > parameters: > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > @Deprecated > > > > > > > > > > > > > > > > > public IgniteInternalFuture > > > > > > > > > > > > > > > > > > > > deployNodeSingleton(ClusterGroup > > > > > > > > > > > > prj, > > > > > > > > > > > > > > > > > String > > > > > > > > > > > > > > > > > name, Service svc) > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > public IgniteInternalFuture > > > > > > > > > > > > > > > > > > > > deployNodeSingleton(ClusterGroup > > > > > > > > > > > > prj, > > > > > > > > > > > > > > > > > String > > > > > > > > > > > > > > > > > name, String srvcClsName, Map > Object> prop) > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > I think this makes sense, but I would like > > other > > > > > > > > > > > > > > > > committers to > > > > > > > > > > > > confirm. > > > > > > > > > > > > > > > > Perhaps Vladimir Ozerov should comment here= . > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > 2. Is {Map properties} > > parameter > > > > > > > > > > > > > > > > mandatory > > > > > > > > > > when > > > > > > > > > > > > > > > deploying a > > > > > > > > > > > > > > > > > service? > > > > > > > > > > > > > > > > > Is it make sense to add deploying methods > > without > > > > > it? > > > > > > > > > > > > > > For > > > > > > > > > > > > example: > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > public IgniteInternalFuture > > > > > > > > > > > > > > > > > > > > deployNodeSingleton(ClusterGroup > > > > > > > > > > > > prj, > > > > > > > > > > > > > > > > > String > > > > > > > > > > > > > > > > > name, String srvcClsName) > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > public IgniteInternalFuture > > > > > > > > > > > > > > > > > > > > deployNodeSingleton(ClusterGroup > > > > > > > > > > > > prj, > > > > > > > > > > > > > > > > > String > > > > > > > > > > > > > > > > > name, String srvcClsName, Map > Object> prop) > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > I would always ask the user to pass the > > property > > > > > map, but > > > > > > > > > > > > > > > > would > > > > > > > > > > > > allow it > > > > > > > > > > > > > > > to > > > > > > > > > > > > > > > > be null. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > D. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > > > > > > > > > > Best Regards, Vyacheslav D. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > > > > > > > > Best Regards, Vyacheslav D. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > > > > > > > Best Regards, Vyacheslav D. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > > > > > Best Regards, Vyacheslav D. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > > > Best Regards, Vyacheslav D. > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > Best Regards, Vyacheslav D. > > > > > > > > -- > > Best Regards, Vyacheslav D. > > --=20 Best Regards, Vyacheslav D.