Upcoming Ignite events in the US and India in February

2020-02-03 Thread Denis Magda
Ignite community members,

If you live nearby Chicago, Boston, San Francisco or Bengaluru (India) area
visit our upcoming meetups and conference talks in those cities:
https://ignite.apache.org/events.html

Some of the community members are planning webinars in February and they
will be announced on the events' page soon.

-
Denis


Re: Ignite Events

2018-10-12 Thread drosso
Hi Ivan,
thank you so much for your explanation! In fact it was a bit tricky, but now
I understand what's going on. 
I'm currently using Ignite 2.4.

Bets regards

Davide



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Re: Ignite Events

2018-10-11 Thread Павлухин Иван
Hi drosso,

Luckily there is no mystery. By the way, what version of Ignite do you use?

The clue to strange behavior here is topology change during your test
execution. As I see, Putter node is a server data node as well, so it will
hold some data partitions on it and consequently will receive some
OBJECT_PUT events. The second seeming strange thing here is observing
events for same keys on different nodes. It is explained by so-called "late
affinity assignment". Putter enters cluster and some partitions are loaded
to it from other nodes. But Putter is usable before all data is actually
loaded, instead of waiting data and freezing cluster for possibly long time
Ignite creates temporary backup partition on Putter node and primary
partition is kept on one of ServerNodes from your example (and when all
data is loaded by Putter from other nodes partitions on it will be
considered primary and previous primary partitions on other nodes will be
destroyed). Events like OBJECT_PUT are fired on backup partitions as well.
And it explains why you observe events for same keys on different nodes. If
you make Putter non-data node for the target cache (e.g. by starting it as
a client node) then you will see events only on ServerNodes.

чт, 11 окт. 2018 г. в 11:20, drosso :

> Hi Ivan,
> thank you for your interest! here below you can find the code for the 2
> sample programs:
>
> *** ServerNode.java **
>
> package TestATServerMode;
>
> import javax.cache.Cache;
> import javax.cache.event.CacheEntryEvent;
> import javax.cache.event.CacheEntryUpdatedListener;
> import javax.cache.event.EventType;
>
> import org.apache.ignite.Ignite;
> import org.apache.ignite.IgniteCache;
> import org.apache.ignite.IgniteException;
> import org.apache.ignite.Ignition;
> import org.apache.ignite.cache.CacheEntryEventSerializableFilter;
> import org.apache.ignite.cache.query.ContinuousQuery;
> import org.apache.ignite.cache.query.QueryCursor;
> import org.apache.ignite.cache.query.ScanQuery;
> import org.apache.ignite.events.*;
> import org.apache.ignite.lang.IgniteBiPredicate;
> import org.apache.ignite.lang.IgnitePredicate;
>
> import static org.apache.ignite.events.EventType.EVT_CACHE_OBJECT_PUT;
> import static org.apache.ignite.events.EventType.EVT_CACHE_OBJECT_READ;
> import static org.apache.ignite.events.EventType.EVT_CACHE_OBJECT_REMOVED;
>
> import java.util.UUID;
>
> /**
>  * Starts up an empty node with example compute configuration.
>  */
> public class ServerNode {
> /**
>  * Start up an empty node with example compute configuration.
>  *
>  * @param args
>  *Command line arguments, none required.
>  * @throws IgniteException
>  * If failed.
>  */
> private static final String CACHE_NAME = "MyCache";
>
> @SuppressWarnings("deprecation")
> public static void main(String[] args) throws IgniteException {
> Ignition.start("config/example-ignite.xml");
>
> Ignite ignite = Ignition.ignite();
>
> // Get an instance of named cache.
> final IgniteCache cache =
> ignite.getOrCreateCache(CACHE_NAME);
>
> // Sample remote filter
>
> IgnitePredicate locLsnr = new
> IgnitePredicate() {
> @Override
> public boolean apply(CacheEvent evt) {
> System.out.println("LOCAL cache event
> [evt=" + evt.name() + ",
> cacheName=" + evt.cacheName() + ", key="
> + evt.key() + ']');
>
> return true; // Return true to continue
> listening.
> }
> };
>
> // Register event listener for all local task execution
> events.
> ignite.events().localListen(locLsnr, EVT_CACHE_OBJECT_PUT);
>
>
> }
> }
>
>
>  Putter.java *
>
> package TestATServerMode;
>
> import static org.apache.ignite.events.EventType.EVT_CACHE_OBJECT_PUT;
>
> import java.sql.Time;
>
> import org.apache.ignite.Ignite;
> import org.apache.ignite.IgniteCache;
> import org.apache.ignite.Ignition;
> import org.apache.ignite.configuration.CacheConfiguration;
> import org.apache.ignite.events.CacheEvent;
> import org.apache.ignite.lang.IgnitePredicate;
>
>
> @SuppressWarnings("TypeMayBeWeakened")
> public class Putter {
> /** Cache name. */
> private static final String CACHE_NAME = "MyCache";
>
> /**
>  * Executes example.
>  *
>  * @param args Command line arguments, none required.
>  * @throws InterruptedException
>  */
> public static void main(String[] args) {
>
> // Mark this cluster member as client.
> //Ignition.setClientMode(true);
>
> try (Ignite ignite = Ignition.start("config/example-ignite.xml")) {
> System.out.println();
>  

Re: Ignite Events

2018-10-11 Thread drosso
Hi Ivan,
thank you for your interest! here below you can find the code for the 2
sample programs:

*** ServerNode.java **

package TestATServerMode;

import javax.cache.Cache;
import javax.cache.event.CacheEntryEvent;
import javax.cache.event.CacheEntryUpdatedListener;
import javax.cache.event.EventType;

import org.apache.ignite.Ignite;
import org.apache.ignite.IgniteCache;
import org.apache.ignite.IgniteException;
import org.apache.ignite.Ignition;
import org.apache.ignite.cache.CacheEntryEventSerializableFilter;
import org.apache.ignite.cache.query.ContinuousQuery;
import org.apache.ignite.cache.query.QueryCursor;
import org.apache.ignite.cache.query.ScanQuery;
import org.apache.ignite.events.*;
import org.apache.ignite.lang.IgniteBiPredicate;
import org.apache.ignite.lang.IgnitePredicate;

import static org.apache.ignite.events.EventType.EVT_CACHE_OBJECT_PUT;
import static org.apache.ignite.events.EventType.EVT_CACHE_OBJECT_READ;
import static org.apache.ignite.events.EventType.EVT_CACHE_OBJECT_REMOVED;

import java.util.UUID;

/**
 * Starts up an empty node with example compute configuration.
 */
public class ServerNode {
/**
 * Start up an empty node with example compute configuration.
 *
 * @param args
 *Command line arguments, none required.
 * @throws IgniteException
 * If failed.
 */
private static final String CACHE_NAME = "MyCache";

@SuppressWarnings("deprecation")
public static void main(String[] args) throws IgniteException {
Ignition.start("config/example-ignite.xml");

Ignite ignite = Ignition.ignite();

// Get an instance of named cache.
final IgniteCache cache =
ignite.getOrCreateCache(CACHE_NAME);

// Sample remote filter

IgnitePredicate locLsnr = new 
IgnitePredicate() {
@Override
public boolean apply(CacheEvent evt) {
System.out.println("LOCAL cache event [evt=" + 
evt.name() + ",
cacheName=" + evt.cacheName() + ", key="
+ evt.key() + ']');

return true; // Return true to continue 
listening.
}
};

// Register event listener for all local task execution events.
ignite.events().localListen(locLsnr, EVT_CACHE_OBJECT_PUT);


}
}


 Putter.java *

package TestATServerMode;

import static org.apache.ignite.events.EventType.EVT_CACHE_OBJECT_PUT;

import java.sql.Time;

import org.apache.ignite.Ignite;
import org.apache.ignite.IgniteCache;
import org.apache.ignite.Ignition;
import org.apache.ignite.configuration.CacheConfiguration;
import org.apache.ignite.events.CacheEvent;
import org.apache.ignite.lang.IgnitePredicate;


@SuppressWarnings("TypeMayBeWeakened")
public class Putter {
/** Cache name. */
private static final String CACHE_NAME = "MyCache";

/**
 * Executes example.
 *
 * @param args Command line arguments, none required.
 * @throws InterruptedException 
 */
public static void main(String[] args) {

// Mark this cluster member as client.
//Ignition.setClientMode(true);

try (Ignite ignite = Ignition.start("config/example-ignite.xml")) {
System.out.println();
System.out.println(">>> Myexample started.");

CacheConfiguration cfg = new
CacheConfiguration<>();

//cfg.setCacheMode(CacheMode.REPLICATED);
cfg.setName(CACHE_NAME);
//cfg.setAtomicityMode(CacheAtomicityMode.ATOMIC);


IgnitePredicate lsnr = new
IgnitePredicate() {
@Override public boolean apply(CacheEvent evt) {
System.out.println("Received cache event [evt=" +
evt.name() + ", cacheName=" + evt.cacheName() +
", key=" + evt.key() + ']');

return true; // Return true to continue listening.
}
};

try (IgniteCache cache =
ignite.getOrCreateCache(cfg)) {
if
(ignite.cluster().forDataNodes(cache.getName()).nodes().isEmpty()) {
System.out.println();
System.out.println(">>> This example requires remote
cache node nodes to be started.");
System.out.println(">>> Please start at least 1 remote
cache node.");
System.out.println(">>> Refer to example's javadoc for
details on configuration.");
System.out.println();

return;
}


// Register event listener for all local task execution
events.
ignite.events().localListen(lsnr, 

Re: Ignite Events

2018-10-10 Thread Павлухин Иван
Hi drosso,

Indeed looks strange. If you provide a reproducer I will take a look.

ср, 10 окт. 2018 г. в 16:44, drosso :

> Hi,
> I've been playing with Ignite events for a couple of days but there's a
> behavior of my sample programs that I really can't understand.
> I've prepared 2 sample programs:
> 1. a Putter program that "gets or creates" a simple cache "MyCache" with an
> Integer Key and a String Value and puts 9 elements (from 1 to 9) into
> "MyCache"
> 2. a ServerNode program that defines a local listener on "MyCache" for PUT
> events and displays the newly added keys.
>
> N.B. All programs are launched as "Server" Ignite nodes and "MyCache" is
> defined as PARTITIONED with 0 backuop copies
>
> If I launch 2 instances of ServerNode and 1 instance of Putter, I obtain
> the
> following output:
>
> ServerNode 1 displays the keys: 2, 3, 5, 7, 9
> ServerNode 2 display the keys: 1, 4,6,8
>
> Now, this is already an output that puzzles me: if the cache is
> partitioned,
> the keys should be spread onto all Server instances, so I should not see
> all
> the keys reported by the 2 ServerNode instances. There should be some keys
> missing (i.e. those on the Putter server node).
>
> Moreover, if I add a local listener also on the Putter node, the output
> becomes still more puzzling:
>
> ServerNode 1 displays the keys: 2, 3, 5, 7, 9
> ServerNode 2 display the keys: 1, 4,6,8
> Putter displays the keys : 2,3,5
>
> What am I missing here ? There surely must be something that I
> misunderstood, but I can't figure out what it could be.
> Any help will be much appreciated!
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>


-- 
Best regards,
Ivan Pavlukhin


Ignite Events

2018-10-10 Thread drosso
Hi,
I've been playing with Ignite events for a couple of days but there's a
behavior of my sample programs that I really can't understand.
I've prepared 2 sample programs:
1. a Putter program that "gets or creates" a simple cache "MyCache" with an
Integer Key and a String Value and puts 9 elements (from 1 to 9) into
"MyCache"
2. a ServerNode program that defines a local listener on "MyCache" for PUT
events and displays the newly added keys.

N.B. All programs are launched as "Server" Ignite nodes and "MyCache" is
defined as PARTITIONED with 0 backuop copies

If I launch 2 instances of ServerNode and 1 instance of Putter, I obtain the
following output:

ServerNode 1 displays the keys: 2, 3, 5, 7, 9
ServerNode 2 display the keys: 1, 4,6,8

Now, this is already an output that puzzles me: if the cache is partitioned,
the keys should be spread onto all Server instances, so I should not see all
the keys reported by the 2 ServerNode instances. There should be some keys
missing (i.e. those on the Putter server node).

Moreover, if I add a local listener also on the Putter node, the output
becomes still more puzzling:

ServerNode 1 displays the keys: 2, 3, 5, 7, 9
ServerNode 2 display the keys: 1, 4,6,8
Putter displays the keys : 2,3,5

What am I missing here ? There surely must be something that I
misunderstood, but I can't figure out what it could be.
Any help will be much appreciated!



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Re: Upcoming Apache Ignite events this month

2018-02-01 Thread Dmitriy Setrakyan
Great to see such a busy schedule!

Ignite community is unstoppable :)

D.

On Thu, Feb 1, 2018 at 3:19 PM, Tom Diederich <tom.dieder...@gridgain.com>
wrote:

> Igniters,
>
> The following is a list of upcoming events in February. To view this list
> from the Ignite events page, click here
> <https://ignite.apache.org/events.html>.
>
> *Tokyo*
>
> *February 1:*  *Meetup*: Meet Apache Ignite In-Memory Computing Platform
>
>  Join Roman Shtykh at the Tech it Easy- Tokyo Meetup for an introductory
> talk on Apache Ignite.
>
>  In this talk you will learn about Apache Ignite memory-centric
> distributed database, caching, and processing platform. Roman will explain
> how one can do distributed computing, and use SQL with horizontal
> scalability and high availability of NoSQL systems with Apache Ignite.
>
>  Only six spots left so RSVP now! http://bit.ly/2nygyRI
>
>  *San Francisco Bay Area*
>
>  *February 7*: *Conference talk:* Apache Ignite Service Grid: Foundation
> of Your Microservices-Based Solution
>
>  Denis Magda will be attending DeveloperWeek 2018 in San Francisco to
> deliver presentation that provides a step-by-step guide on how to build a
> fault-tolerant and scalable microservices-based solution using Apache
> Ignite's Service Grid and other components to resolve these aforementioned
> issues.
>
>  Details here: http://bit.ly/2BHwFBr
>
>
>
> *London*
>
>  *February 7:* *Meetup:* Building consistent and highly available
> distributed systems with Apache Ignite
>
>  Akmal Chaudhri will speak at the inaugural gathering of the London
> In-Memory Computing Meetup.
>
>  He'll explain that while it is well known that there is a tradeoff
> between data consistency and high availability, there are many applications
> that require very strong consistency guarantees. Making such applications
> highly available can be a significant challenge. Akmal will explain how to
> overcome these challenges.
>
> This will be an outstanding event with free food and beverages. Space is
> limited, however. RSVP now to reserve your spot (you may also include 2
> guests).
>
> http://bit.ly/2BH893c
>
>
> *Boston*
>
> *February 12: Meetup*: Turbocharge your MySQL queries in-memory with
> Apache Ignite
>
> Fotios Filacouris will be the featured speaker at the Boston MySQL Meetup
> Group.
>
> The abstract of his talk: Apache Ignite is a unique data management
> platform that is built on top of a distributed key-value storage and
> provides full-fledged MySQL support.Attendees will learn how Apache Ignite
> handles auto-loading of a MySQL schema and data from PostgreSQL, supports
> MySQL indexes, supports compound indexes, and various forms of MySQL
> queries including distributed MySQL joins.
>
> Space is limited so RSVP today! http://bit.ly/2DP8W44
>
>
> *Boston*
>
> *February 13: Meetup* -- Java and In-Memory Computing: Apache Ignite
>
>  Fotios Filacouris will speak at the Boston Java Meetup Group
>
> In his talk, Foti will introduce the many components of the open-source
> Apache Ignite. Meetup members, as Java professionals, will learn how to
> solve some of the most demanding scalability and performance challenges.
> He’ll also cover a few typical use cases and work through some code
> examples. Attendees would leave ready to fire up their own database
> deployments!
>
> RSVP here: http://bit.ly/2BJ1nde
>
>
>
> *Sydney, Australia  *
>
> *February 13: Meetup:* Ignite your Cassandra Love Story: Caching
> Cassandra with Apache Ignite
>
> Rachel Pedreschi will be the guest speaker at the Sydney Cassandra Users
> Meetup. In this session attendees will learn how Apache Ignite can
> turbocharge a Cassandra cluster without sacrificing availability
> guarantees. In this talk she'll cover:
>
>
>
>- An overview of the Apache Ignite architecture
>- How to deploy Apache Ignite in minutes on top of Cassandra
>- How companies use this powerful combination to handle extreme OLTP
>workloads
>
>
>  RSVP now to secure your spot: http://bit.ly/2sydneytalk
>
>
>
> * February 14: Webinar:*  Getting Started with Apache® Ignite™ as a
> Distributed Database
>
> Join presenter Valentin Kulichenko in this live webinar featuring Apache
> Ignite native persistence --  a distributed ACID and SQL-compliant store
> that turns Apache Ignite into a full-fledged distributed SQL database.
>
>  In this webinar, Valentin will:
>
>
>
>-  Explain what native persistence is, and how it works
>- Show step-by-step how to set up Apache Ignite with native persistence
>- Explain the best practices for configuration and tuning
>
>
> RSVP

Upcoming Apache Ignite events this month

2018-02-01 Thread Tom Diederich
Igniters, 

The following is a list of upcoming events in February. To view this list from 
the Ignite events page, click here <https://ignite.apache.org/events.html>. 

Tokyo

February 1:  Meetup: Meet Apache Ignite In-Memory Computing Platform 

 Join Roman Shtykh at the Tech it Easy- Tokyo Meetup for an introductory talk 
on Apache Ignite.


 In this talk you will learn about Apache Ignite memory-centric distributed 
database, caching, and processing platform. Roman will explain how one can do 
distributed computing, and use SQL with horizontal scalability and high 
availability of NoSQL systems with Apache Ignite.


 Only six spots left so RSVP now! http://bit.ly/2nygyRI <http://bit.ly/2nygyRI> 


 San Francisco Bay Area

 February 7: Conference talk: Apache Ignite Service Grid: Foundation of Your 
Microservices-Based Solution


 Denis Magda will be attending DeveloperWeek 2018 in San Francisco to deliver 
presentation that provides a step-by-step guide on how to build a 
fault-tolerant and scalable microservices-based solution using Apache Ignite's 
Service Grid and other components to resolve these aforementioned issues.


 Details here: http://bit.ly/2BHwFBr <http://bit.ly/2BHwFBr> 


 

London

 February 7: Meetup: Building consistent and highly available distributed 
systems with Apache Ignite


 Akmal Chaudhri will speak at the inaugural gathering of the London In-Memory 
Computing Meetup.


 He'll explain that while it is well known that there is a tradeoff between 
data consistency and high availability, there are many applications that 
require very strong consistency guarantees. Making such applications highly 
available can be a significant challenge. Akmal will explain how to overcome 
these challenges.


This will be an outstanding event with free food and beverages. Space is 
limited, however. RSVP now to reserve your spot (you may also include 2 guests).


http://bit.ly/2BH893c <http://bit.ly/2BH893c> 



Boston

February 12: Meetup: Turbocharge your MySQL queries in-memory with Apache 
Ignite 

Fotios Filacouris will be the featured speaker at the Boston MySQL Meetup Group.


The abstract of his talk: Apache Ignite is a unique data management platform 
that is built on top of a distributed key-value storage and provides 
full-fledged MySQL support.Attendees will learn how Apache Ignite handles 
auto-loading of a MySQL schema and data from PostgreSQL, supports MySQL 
indexes, supports compound indexes, and various forms of MySQL queries 
including distributed MySQL joins.


Space is limited so RSVP today! http://bit.ly/2DP8W44 <http://bit.ly/2DP8W44> 




Boston

February 13: Meetup -- Java and In-Memory Computing: Apache Ignite


 Fotios Filacouris will speak at the Boston Java Meetup Group


In his talk, Foti will introduce the many components of the open-source Apache 
Ignite. Meetup members, as Java professionals, will learn how to solve some of 
the most demanding scalability and performance challenges. He’ll also cover a 
few typical use cases and work through some code examples. Attendees would 
leave ready to fire up their own database deployments!


RSVP here: http://bit.ly/2BJ1nde <http://bit.ly/2BJ1nde> 


 
Sydney, Australia  

February 13: Meetup: Ignite your Cassandra Love Story: Caching Cassandra with 
Apache Ignite


Rachel Pedreschi will be the guest speaker at the Sydney Cassandra Users 
Meetup. In this session attendees will learn how Apache Ignite can turbocharge 
a Cassandra cluster without sacrificing availability guarantees. In this talk 
she'll cover:



An overview of the Apache Ignite architecture
How to deploy Apache Ignite in minutes on top of Cassandra
How companies use this powerful combination to handle extreme OLTP workloads


 RSVP now to secure your spot: http://bit.ly/2sydneytalk 
<http://bit.ly/2sydneytalk> 


 

 February 14: Webinar:  Getting Started with Apache® Ignite™ as a Distributed 
Database


Join presenter Valentin Kulichenko in this live webinar featuring Apache Ignite 
native persistence --  a distributed ACID and SQL-compliant store that turns 
Apache Ignite into a full-fledged distributed SQL database.


 In this webinar, Valentin will:



 Explain what native persistence is, and how it works
Show step-by-step how to set up Apache Ignite with native persistence
Explain the best practices for configuration and tuning


RSVP now to reserve your spot: http://bit.ly/2E0SWiS <http://bit.ly/2E0SWiS> 


 

Copenhagen

February 14: Meetup: Apache Ignite: the in-memory hammer in your data science 
toolkit


Akmal Chaudhri will be the guest speaker at the Symbion IoT Meetup (Copenhagen, 
Denmark). In this presentation, Akmal will explain some of the main components 
of Apache Ignite, such as the Compute Grid, Data Grid and the Machine Learning 
Grid. Through examples, attendees will learn how Apache Ignite can be used for 
data analysis.


This meetup is free but an RSVP is required to secure 

Re: Ignite Events Remote Filter

2017-10-27 Thread Valentin Kulichenko
Alexey,

Yes, seems to be the case. Unsubscription happens if *local listener*
returns false not remote filter.

-Val

On Fri, Oct 27, 2017 at 3:12 AM, Alexey Kukushkin  wrote:

> Also, I ran our CacheEventsExample and I confirm the remote filter is NOT
> unsubscribed when it returns false. So it looks like a documentation bug
> only.
>
> On Fri, Oct 27, 2017 at 1:10 PM, Alexey Kukushkin <
> kukushkinale...@gmail.com> wrote:
>
>> Hi,
>>
>> I think it is a documentation bug. I do not think remote listener will be
>> unsubscribed if it returns false. Let's confirm with the developers
>> community.
>>
>> *Ignite Developers*,
>>
>> We have this comment for the remoteListener argument of the
>> IgniteEvents#remoteListen(...):
>>
>> rmtFilter - Filter callback that is called on remote node. Only events
>> that pass the remote filter will be sent to local node. If null, all events
>> of specified types will be sent to local node. This remote filter can be
>> used to pre-handle events remotely, before they are passed in to local
>> callback. *It will be auto-unsubsribed on the node where event occurred
>> in case if it returns false*.
>>
>> The documentation in bold looks like a bug to me. Why we would do it that
>> way? To get only the first event? I think the idea is to listen until
>> either master node leaves or you call remoteUnsubscribe(). I feel we just
>> need to remove that sentence from the comments. Could you please confirm?
>>
>>
>> On Fri, Oct 27, 2017 at 4:25 AM, rajivgandhi 
>> wrote:
>>
>>> Hi,
>>> We wish to listen to remote events with a remote filter and local
>>> listener:
>>> https://apacheignite.readme.io/docs/events#section-remote-events
>>>
>>> Our requirement is to entertain only those events on local listener which
>>> are allowed by remote filter. This is the API we are trying to use:
>>> https://ignite.apache.org/releases/latest/javadoc/org/apache
>>> /ignite/IgniteEvents.html#remoteListen(org.apache.ignite.
>>> lang.IgniteBiPredicate,%20org.apache.ignite.lang.IgnitePredi
>>> cate,%20int...)
>>>
>>> As per this API:
>>> "rmtFilter - Filter callback that is called on remote node. Only events
>>> that
>>> pass the remote filter will be sent to local node. If null, all events of
>>> specified types will be sent to local node. This remote filter can be
>>> used
>>> to pre-handle events remotely, before they are passed in to local
>>> callback.
>>> *It will be auto-unsubsribed on the node where event occurred in case if
>>> it
>>> returns false.*"
>>>
>>> As per the bolded part, it seems the remote listener will be
>>> unsubscribed as
>>> soon as the remote filter returns false. Is that right? We want to be
>>> able
>>> to continue listening even after the remote filter has once
>>> filtered/blocked
>>> the event on remote nodes. If that is indeed the case (remote filter
>>> stops
>>> listening), are there any other work arounds?
>>>
>>> thanks!
>>> Rajeev Gandhi
>>>
>>>
>>>
>>>
>>>
>>>
>>> --
>>> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>>>
>>
>>
>>
>> --
>> Best regards,
>> Alexey
>>
>
>
>
> --
> Best regards,
> Alexey
>


Re: Ignite Events Remote Filter

2017-10-27 Thread rajivgandhi
Thank you Guys!



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Re: Ignite Events Remote Filter

2017-10-27 Thread Alexey Kukushkin
Also, I ran our CacheEventsExample and I confirm the remote filter is NOT
unsubscribed when it returns false. So it looks like a documentation bug
only.

On Fri, Oct 27, 2017 at 1:10 PM, Alexey Kukushkin  wrote:

> Hi,
>
> I think it is a documentation bug. I do not think remote listener will be
> unsubscribed if it returns false. Let's confirm with the developers
> community.
>
> *Ignite Developers*,
>
> We have this comment for the remoteListener argument of the
> IgniteEvents#remoteListen(...):
>
> rmtFilter - Filter callback that is called on remote node. Only events
> that pass the remote filter will be sent to local node. If null, all events
> of specified types will be sent to local node. This remote filter can be
> used to pre-handle events remotely, before they are passed in to local
> callback. *It will be auto-unsubsribed on the node where event occurred
> in case if it returns false*.
>
> The documentation in bold looks like a bug to me. Why we would do it that
> way? To get only the first event? I think the idea is to listen until
> either master node leaves or you call remoteUnsubscribe(). I feel we just
> need to remove that sentence from the comments. Could you please confirm?
>
>
> On Fri, Oct 27, 2017 at 4:25 AM, rajivgandhi 
> wrote:
>
>> Hi,
>> We wish to listen to remote events with a remote filter and local
>> listener:
>> https://apacheignite.readme.io/docs/events#section-remote-events
>>
>> Our requirement is to entertain only those events on local listener which
>> are allowed by remote filter. This is the API we are trying to use:
>> https://ignite.apache.org/releases/latest/javadoc/org/apache
>> /ignite/IgniteEvents.html#remoteListen(org.apache.ignite
>> .lang.IgniteBiPredicate,%20org.apache.ignite.lang.Ignit
>> ePredicate,%20int...)
>>
>> As per this API:
>> "rmtFilter - Filter callback that is called on remote node. Only events
>> that
>> pass the remote filter will be sent to local node. If null, all events of
>> specified types will be sent to local node. This remote filter can be used
>> to pre-handle events remotely, before they are passed in to local
>> callback.
>> *It will be auto-unsubsribed on the node where event occurred in case if
>> it
>> returns false.*"
>>
>> As per the bolded part, it seems the remote listener will be unsubscribed
>> as
>> soon as the remote filter returns false. Is that right? We want to be able
>> to continue listening even after the remote filter has once
>> filtered/blocked
>> the event on remote nodes. If that is indeed the case (remote filter stops
>> listening), are there any other work arounds?
>>
>> thanks!
>> Rajeev Gandhi
>>
>>
>>
>>
>>
>>
>> --
>> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>>
>
>
>
> --
> Best regards,
> Alexey
>



-- 
Best regards,
Alexey


Re: Ignite Events Remote Filter

2017-10-27 Thread Alexey Kukushkin
Hi,

I think it is a documentation bug. I do not think remote listener will be
unsubscribed if it returns false. Let's confirm with the developers
community.

*Ignite Developers*,

We have this comment for the remoteListener argument of the
IgniteEvents#remoteListen(...):

rmtFilter - Filter callback that is called on remote node. Only events that
pass the remote filter will be sent to local node. If null, all events of
specified types will be sent to local node. This remote filter can be used
to pre-handle events remotely, before they are passed in to local callback. *It
will be auto-unsubsribed on the node where event occurred in case if it
returns false*.

The documentation in bold looks like a bug to me. Why we would do it that
way? To get only the first event? I think the idea is to listen until
either master node leaves or you call remoteUnsubscribe(). I feel we just
need to remove that sentence from the comments. Could you please confirm?


On Fri, Oct 27, 2017 at 4:25 AM, rajivgandhi  wrote:

> Hi,
> We wish to listen to remote events with a remote filter and local listener:
> https://apacheignite.readme.io/docs/events#section-remote-events
>
> Our requirement is to entertain only those events on local listener which
> are allowed by remote filter. This is the API we are trying to use:
> https://ignite.apache.org/releases/latest/javadoc/org/
> apache/ignite/IgniteEvents.html#remoteListen(org.apache.
> ignite.lang.IgniteBiPredicate,%20org.apache.ignite.lang.
> IgnitePredicate,%20int...)
>
> As per this API:
> "rmtFilter - Filter callback that is called on remote node. Only events
> that
> pass the remote filter will be sent to local node. If null, all events of
> specified types will be sent to local node. This remote filter can be used
> to pre-handle events remotely, before they are passed in to local callback.
> *It will be auto-unsubsribed on the node where event occurred in case if it
> returns false.*"
>
> As per the bolded part, it seems the remote listener will be unsubscribed
> as
> soon as the remote filter returns false. Is that right? We want to be able
> to continue listening even after the remote filter has once
> filtered/blocked
> the event on remote nodes. If that is indeed the case (remote filter stops
> listening), are there any other work arounds?
>
> thanks!
> Rajeev Gandhi
>
>
>
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>



-- 
Best regards,
Alexey


Ignite Events Remote Filter

2017-10-26 Thread rajivgandhi
Hi,
We wish to listen to remote events with a remote filter and local listener:
https://apacheignite.readme.io/docs/events#section-remote-events

Our requirement is to entertain only those events on local listener which
are allowed by remote filter. This is the API we are trying to use:
https://ignite.apache.org/releases/latest/javadoc/org/apache/ignite/IgniteEvents.html#remoteListen(org.apache.ignite.lang.IgniteBiPredicate,%20org.apache.ignite.lang.IgnitePredicate,%20int...)

As per this API:
"rmtFilter - Filter callback that is called on remote node. Only events that
pass the remote filter will be sent to local node. If null, all events of
specified types will be sent to local node. This remote filter can be used
to pre-handle events remotely, before they are passed in to local callback.
*It will be auto-unsubsribed on the node where event occurred in case if it
returns false.*"

As per the bolded part, it seems the remote listener will be unsubscribed as
soon as the remote filter returns false. Is that right? We want to be able
to continue listening even after the remote filter has once filtered/blocked
the event on remote nodes. If that is indeed the case (remote filter stops
listening), are there any other work arounds?

thanks!
Rajeev Gandhi






--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Re: Ignite events related server nodes

2017-10-18 Thread Razmik Mkrtchyan
Thank you very much.

On Oct 19, 2017 00:33, "vkulichenko"  wrote:

> You should use disconnect/reconnect events in this case, as described in
> provided doc. They are designed exactly for you scenario.
>
> -Val
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>


Re: Ignite events related server nodes

2017-10-18 Thread daniels
Hi,
Thank you for answer.
e.g. I have 2 server nodes(scaled same node) and 4 clients. I am scaling
server node to  0 . Now I have 0 server 4 clients.
Now I am again scailing to 1 or 2.
And when first server node is connecting I want to do some refreshes in my
code (where my client node is located )  ,that refreshes are needed only one
time.from 0 nodes  to 1(firs connection) .(or from 2 nodes to 0-last
disconnection)

p.s. As to refreshing it can be for example  map clearing,not  related to
ignite.



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Re: Ignite events related server nodes

2017-10-18 Thread vkulichenko
Discovery events are essential, so they are always enabled, regardless of
configuration.

As for "last disconnection, or first connection", can you please clarify
what you mean by this? What's the use case behind this?

Also take a look at this page about client reconnection:
https://apacheignite.readme.io/docs/clients-vs-servers#client-reconnection.
It seems to me this can be what you're actually looking for.

-Val



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Ignite events related server nodes

2017-10-18 Thread daniels
Hi everybody,

I want to listen first server node connection , or last server node
disconnection,for doing some actions.

I wrote the following code 
ingite.events().localListen(event -> {
if(!((DiscoveryEvent) event).eventNode().isClient()){
something();
}
return true;
}, EventType.EVT_NODE_LEFT);

 something() method  occures every server node disconnection,but I want on
last disconnection,or first conncetion. 

And one more question related events,
 I read (from documentations) what -
"To get notified of any tasks or cache events occurring within the cluster,
includeEventTypes property of IgniteConfiguration must be enabled."

the above mentioned code works even if I didnt set "includeEventTypes" in
IgniteCinfiguration explicitly. Why it is works? 


Thanks.








--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Upcoming Apache Ignite Events

2017-07-13 Thread Denis Magda
Folks,

Check up our the news page [1]! We’re approaching cool meetups and webinars to 
be conducted by our community members. Take an action - sign up and attend! And 
if you have anything to share the world about Ignite reach me out ;)

* Webinar: Distributed ACID Transactions in Apache Ignite by Akmal, July 19, 
2017 (https://t.co/v2ng4LPfF7 )

* Meetup: An Intro to Apache Ignite, the Memory-centric Distributed Platform by 
Akmal in London, July 26, 2017 
(https://www.meetup.com/Brighton-Java/events/241395191/ 
)

* Meetup: Diving into the internals of Apache Ignite's memory architecture by 
Denis in Silicon Valley, Jul 27, 2017 
(https://www.meetup.com/Bay-Area-In-Memory-Computing/events/241381155/ 
)

* Webinar: Building Consistent and Highly Available Distributed Systems with 
Apache® Ignite™ by Val, August 02, 2017 (goo.gl/rpoZ9k )

[1] https://ignite.apache.org/news.html 

—
Denis

Upcoming Apache Ignite Events

2017-05-03 Thread Denis Magda
Igniters, 

Let me share with you a list of upcoming Apache Ignite events. Don’t hesitate 
and join, especially, if you live not that far.

* Webinar, May 10th, Apache Ignite and Apache Spark for IoT: 
https://www.gridgain.com/company/news/events/gridgain-webinar-apacher-ignitetm-real-time-processing-iot-generated-streaming

* Meetup in London, May 10th, Apache Flink meets Apache Ignite: 
https://www.meetup.com/Apache-Flink-London-Meetup/events/239663941/

*  Conference talk at OSCON, Austin, May 10th: 
https://conferences.oreilly.com/oscon/oscon-tx/public/schedule/detail/60801 

* Meetup in Miami, May 17th, Apache Ignite and Apache Spark for IoT: 
https://www.gridgain.com/company/news/events/miami-hadoop-user-group-may-17

* Two conference talks at ApacheCon and Apache BigData, Miami, May 18th: 
https://apachecon2017.sched.com/event/9zot
https://apachebigdata2017.sched.com/event/A01a?iframe=no

—
Denis






Re: Ignite Events overhead

2016-01-12 Thread Denis Magda

Hi,

Please see my answers inline

On 1/12/2016 10:23 AM, pavlinсм wrote:

Hello,

I have two questions about events :

1) In the documentation one can read "/Since thousands of events per second
are generated, it creates an additional load on the system./" What kind of
load to expect with local events - network, CPU, memory, overall ?
In case of local events both CPU & memory are consumed. CPU is used 
because an event object has to be constructed and processed by a local 
listener and stored in  EventStorageSpi [1].
Additional memory is occupied by created event objects and 
EventStorageSpi implementation.




2) If remote events are enabled will there be additional network traffic
between nodes ?
Yes, if a remote filter succeeds then an event is delivered to a local 
node's local listener that started the remote filter.


[1] 
https://ignite.apache.org/releases/1.5.0.final/javadoc/org/apache/ignite/spi/eventstorage/EventStorageSpi.html


--
Denis


--
View this message in context: 
http://apache-ignite-users.70518.x6.nabble.com/Ignite-Events-overhead-tp2511.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.