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 E6778200BD9 for ; Fri, 9 Dec 2016 19:46:11 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id E5470160B1D; Fri, 9 Dec 2016 18:46:11 +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 3A393160AFD for ; Fri, 9 Dec 2016 19:46:11 +0100 (CET) Received: (qmail 38279 invoked by uid 500); 9 Dec 2016 18:46:10 -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 38268 invoked by uid 99); 9 Dec 2016 18:46:10 -0000 Received: from mail-relay.apache.org (HELO mail-relay.apache.org) (140.211.11.15) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 09 Dec 2016 18:46:10 +0000 Received: from mail-qk0-f174.google.com (mail-qk0-f174.google.com [209.85.220.174]) by mail-relay.apache.org (ASF Mail Server at mail-relay.apache.org) with ESMTPSA id 256E41A046A for ; Fri, 9 Dec 2016 18:46:10 +0000 (UTC) Received: by mail-qk0-f174.google.com with SMTP id n21so26385573qka.3 for ; Fri, 09 Dec 2016 10:46:10 -0800 (PST) X-Gm-Message-State: AKaTC00EQG2WASbVVbJpIdisBSCgwGdIx2VruMt1M5LlLFbh04kmh7ZbsLe0k9t/C6jK6tBye6dM9u+7xfV+0Bz4 X-Received: by 10.55.120.195 with SMTP id t186mr69063639qkc.218.1481309169009; Fri, 09 Dec 2016 10:46:09 -0800 (PST) MIME-Version: 1.0 Received: by 10.237.62.119 with HTTP; Fri, 9 Dec 2016 10:45:28 -0800 (PST) In-Reply-To: References: From: Dmitriy Setrakyan Date: Fri, 9 Dec 2016 10:45:28 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: affinityCall in one distributed transaction To: dev@ignite.apache.org Content-Type: multipart/alternative; boundary=94eb2c05f920d2543d05433e2a37 archived-at: Fri, 09 Dec 2016 18:46:12 -0000 --94eb2c05f920d2543d05433e2a37 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Sounds like you need a centralized JTA server for this type of purpose, no? In that case, Ignite transactions can already merge into ongoing JTA transactions. I would prefer to see a distributed flow of events to fully understand the issue. For example, Client - start transaction - send compute Server - receive compute - execute ... - execute ... etc. D. On Fri, Dec 9, 2016 at 1:26 AM, =D0=90=D0=BD=D1=82=D0=BE=D0=BD =D0=A7=D1=83= =D1=80=D0=B0=D0=B5=D0=B2 wrote: > In some cases it is necessary to implement a transaction processing logic > in several different application servers. In this case, working with Igni= te > cache will be performed within the various applications. But all these > changes must be made within the same distributed transaction. > > In my opinion this will require context transfer between the threads with= in > a single node or multiple Ignite nodes. > > 2016-12-08 12:53 GMT+03:00 Alexei Scherbakov >: > > > Hi. > > > > It's unclear from your description what are you trying to achieve. > > > > AffinityCall is unicast and wil be send to single node. > > > > To parallelise task among the cluster I would recommend to use compute > task > > API [1] > > > > But the task execution is not transactional. Nevertheless, each job > > triggered by task can use it's own local transaction. > > > > And please explain, why can't you use a generic Ignite transaction for > you > > task? > > > > [1] https://apacheignite.readme.io/docs/compute-tasks > > > > 2016-12-08 4:09 GMT+03:00 Dmitriy Setrakyan : > > > > > Taras, is invokeAll() transactional? The javadoc is silent to this > fact. > > If > > > it is indeed transactional, then we should update the javadoc. > > > > > > D. > > > > > > On Wed, Dec 7, 2016 at 5:32 AM, Taras Ledkov > > wrote: > > > > > > > Ignite compute has no relation to the cache's transaction. > > > > > > > > I think that IgniteCache.invokeAll() is appropriate for described > case. > > > > > > > > On Wed, Dec 7, 2016 at 4:00 PM, =D0=98=D0=B3=D0=BE=D1=80=D1=8C =D0= =93 wrote: > > > > > > > > > Hi, igniters! > > > > > > > > > > Before openning JIRA ticket, I want to ask question about > > affinityCall > > > or > > > > > affinityRun transactions. > > > > > > > > > > For example I have batch task to modify many values in someCache > > > > according > > > > > to someRule. I want to parallel this task to whole cluster and > > minimize > > > > > network traffic. > > > > > So the resonable choice is affinityCall feature. > > > > > > > > > > But I want all this changes to be in one transactoin. i.e. with a= t > > > least > > > > > atomicity property (of ACID). And if for some reason my task will > be > > > > > canceled or failed on one node - it should change nothing at all. > > > > > > > > > > So, can I achieve this with existing functionality, or how can I > > > approach > > > > > to this task? > > > > > > > > > > > > > > > > > > > > -- > > > > Best regards, > > Alexei Scherbakov > > > > > > -- > =D0=A1 =D1=83=D0=B2=D0=B0=D0=B6=D0=B5=D0=BD=D0=B8=D0=B5=D0=BC, > =D0=A7=D1=83=D1=80=D0=B0=D0=B5=D0=B2 =D0=90=D0=BD=D1=82=D0=BE=D0=BD > --94eb2c05f920d2543d05433e2a37--