Re: How to use Affinity Function to Map a set of Keys to a particular node in a cluster?

2018-06-12 Thread the_palakkaran
Hi Val,

My requirement is something like this:

5 nodes, 5 customers.

I will keep data of 1 on each node.

Whenever a file in the range 1-1 is coming in, I will process it in node
1, so that the read time is minimal (rather than looking for data on all
nodes).

I hope you got my requirement.



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


Re: Ignite RPM Package Installation error: Failed dependencies: java-1.8.0 is needed by apache-ignite-2.4.0-1.noarch

2018-06-12 Thread Peter Ivanov
Which Linux do you have?

Currently packages are designed to be compatible with CentOS and RHEL.
To satisfy dependencies, any rpm package that provides “java-1.8.0” should
be installed as well (java-1.8.0-openjdk for instance).


On Wed, 13 Jun 2018 at 01:42, bhaskar 
wrote:

> I am trying to Install Ignite using RPG package, downloaded
> apache-ignite-2.4.0-1.noarch.rpm from
> https://www.apache.org/dist/ignite/rpm.
>
> Getting Java dependency error but JDK is already instaled, what is missing
> here?
>
> # rpm -Uvh apache-ignite-2.4.0-1.noarch.rpm
> warning: apache-ignite-2.4.0-1.noarch.rpm: Header V4 RSA/SHA1 Signature,
> key
> ID f67fe6f2: NOKEY
> error: Failed dependencies:
> java-1.8.0 is needed by apache-ignite-2.4.0-1.noarch
> # echo $JAVA_HOME
> /etc/jdk1.8.0_121
>
> Thanks
> Bhaskar
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>


Ignite RPM Package Installation error: Failed dependencies: java-1.8.0 is needed by apache-ignite-2.4.0-1.noarch

2018-06-12 Thread bhaskar
I am trying to Install Ignite using RPG package, downloaded
apache-ignite-2.4.0-1.noarch.rpm from
https://www.apache.org/dist/ignite/rpm.
 
Getting Java dependency error but JDK is already instaled, what is missing
here?

# rpm -Uvh apache-ignite-2.4.0-1.noarch.rpm
warning: apache-ignite-2.4.0-1.noarch.rpm: Header V4 RSA/SHA1 Signature, key
ID f67fe6f2: NOKEY
error: Failed dependencies:
java-1.8.0 is needed by apache-ignite-2.4.0-1.noarch
# echo $JAVA_HOME
/etc/jdk1.8.0_121

Thanks
Bhaskar



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


Re: And again... Failed to get page IO instance (page content is corrupted)

2018-06-12 Thread Oleks K
Hi guys,

I got similar errors in 2.4.0

First: 

org.apache.ignite.IgniteException: Runtime failure on bounds: [lower=null,
upper=PendingRow []]
  --> Caused by: java.lang.IllegalStateException: Failed to get page IO
instance (page content is corrupted)

Then lots of: 

org.apache.ignite.IgniteException: Runtime failure on bounds
  --> Caused by: java.lang.IllegalStateException: Item not found: 3

This was reproduced when I started and stopped server nodes under the load
Topology: 2 server and 2 client nodes
Java: 1.8.0_162
OS: Windows Server 2012 R2 6.3 amd64

Cache config:










Ignite team, can you comment on this please?
How critical is the issue? What is the impact?
Any workarounds? Fix planned?

2018-06-13 00:22:30.978 [exchange-worker-#42] INFO 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionDemander
- Starting rebalancing [mode=ASYNC,
fromNode=bdddfe24-aab3-46fa-9452-efe933783adb, partitionsCount=787,
topology=AffinityTopologyVersion [topVer=5, minorTopVer=0], updateSeq=12]
2018-06-13 00:22:31.594 [ttl-cleanup-worker-#52] ERROR
org.apache.ignite.internal.processors.cache.GridCacheSharedTtlCleanupManager
- Runtime error caught during grid runnable execution: GridWorker
[name=ttl-cleanup-worker, igniteInstanceName=null, finished=false,
hashCode=473353699, interrupted=false, runner=ttl-cleanup-worker-#52]
org.apache.ignite.IgniteException: Runtime failure on bounds: [lower=null,
upper=PendingRow []]
at
org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.find(BPlusTree.java:963)
~[ignite-core-2.4.0.jar:2.4.0]
at
org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.find(BPlusTree.java:942)
~[ignite-core-2.4.0.jar:2.4.0]
at
org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl.expire(IgniteCacheOffheapManagerImpl.java:974)
~[ignite-core-2.4.0.jar:2.4.0]
at
org.apache.ignite.internal.processors.cache.GridCacheTtlManager.expire(GridCacheTtlManager.java:197)
~[ignite-core-2.4.0.jar:2.4.0]
at
org.apache.ignite.internal.processors.cache.GridCacheSharedTtlCleanupManager$CleanupWorker.body(GridCacheSharedTtlCleanupManager.java:129)
~[ignite-core-2.4.0.jar:2.4.0]
at
org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110)
[ignite-core-2.4.0.jar:2.4.0]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_162]
Caused by: java.lang.IllegalStateException: Failed to get page IO instance
(page content is corrupted)
at
org.apache.ignite.internal.processors.cache.persistence.tree.io.IOVersions.forVersion(IOVersions.java:83)
~[ignite-core-2.4.0.jar:2.4.0]
at
org.apache.ignite.internal.processors.cache.persistence.tree.io.IOVersions.forPage(IOVersions.java:95)
~[ignite-core-2.4.0.jar:2.4.0]
at
org.apache.ignite.internal.processors.cache.persistence.CacheDataRowAdapter.initFromLink(CacheDataRowAdapter.java:148)
~[ignite-core-2.4.0.jar:2.4.0]
at
org.apache.ignite.internal.processors.cache.persistence.CacheDataRowAdapter.initFromLink(CacheDataRowAdapter.java:102)
~[ignite-core-2.4.0.jar:2.4.0]
at
org.apache.ignite.internal.processors.cache.tree.PendingRow.initKey(PendingRow.java:72)
~[ignite-core-2.4.0.jar:2.4.0]
at
org.apache.ignite.internal.processors.cache.tree.PendingEntriesTree.getRow(PendingEntriesTree.java:118)
~[ignite-core-2.4.0.jar:2.4.0]
at
org.apache.ignite.internal.processors.cache.tree.PendingEntriesTree.getRow(PendingEntriesTree.java:31)
~[ignite-core-2.4.0.jar:2.4.0]
at
org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$ForwardCursor.fillFromBuffer(BPlusTree.java:4614)
~[ignite-core-2.4.0.jar:2.4.0]
at
org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$ForwardCursor.init(BPlusTree.java:4516)
~[ignite-core-2.4.0.jar:2.4.0]
at
org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$ForwardCursor.access$5300(BPlusTree.java:4455)
~[ignite-core-2.4.0.jar:2.4.0]
at
org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.findLowerUnbounded(BPlusTree.java:919)
~[ignite-core-2.4.0.jar:2.4.0]
at
org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.find(BPlusTree.java:951)
~[ignite-core-2.4.0.jar:2.4.0]
... 6 more

2018-06-13 00:23:35.596 [sys-stripe-6-#7] ERROR
org.apache.ignite.internal.processors.cache.GridCacheIoManager - Failed to
process message [senderId=1dedb701-ffd1-4937-b202-7326367a92fb,
messageType=class
o.a.i.i.processors.cache.distributed.dht.atomic.GridNearAtomicFullUpdateRequest]
org.apache.ignite.IgniteException: Runtime failure on bounds: [lower=null,
upper=PendingRow []]
at
org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.find(BPlusTree.java:963)

Re: Baseline topology issue when restarting server nodes one by one

2018-06-12 Thread Olexandr K
I configured ConsistentId equal to hostname for each node and this issue is
not reproduced anymore

One more strange behaviour I noticed is that one of client nodes gets
disconnected after one of server nodes goes down.
I have reconnect logic in place so it comes back later but is such
behaviour expected?
Not sure whether it is related with consistent IDs but I didn't see it
earlier...

BTW, after configuring consistent IDs I see them in "control.bat
--baseline" output only.
Visor output and server logs still show generated IDs
That looks confusing...


Cluster state: active
Current topology version: 7
Baseline nodes:
ConsistentID=V-HP-LK-DCN01, STATE=ONLINE
ConsistentID=V-HP-LK-DCN02, STATE=ONLINE


9871EAFF(@n0) | Server
BBA63A1F(@n2) | Server
1DEDB701(@n1) | Client
5931AF53(@n3) | Client


logs\v-hp-lk-dcn01\ignite.log:383:>>> Local node
[ID=9871EAFF-73AF-4E2E-99A7-8F5DF58A3C40, order=1, clientMode=false]
logs\v-hp-lk-dcn02\ignite.log:274:>>> Local node
[ID=BBA63A1F-559E-461C-B7ED-B10CE3DE33CC, order=7, clientMode=false]


On Tue, Jun 12, 2018 at 9:48 PM, Olexandr K 
wrote:

> Hi, Dmitry
>
> server nodes start with ignite-server.xml and client nodes with
> ignite-client.xml
> server node hosts: v-hp-lk-dcn01, v-hp-lk-dcn02
>
> 
>
> 
> http://www.springframework.org/schema/beans;
>xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance;
>xsi:schemaLocation="http://www.springframework.org/schema/beans
> http://www.springframework.org/schema/beans/spring-beans.xsd;>
>
>  class="org.apache.ignite.configuration.IgniteConfiguration">
>
>
>  />
>
> 
>
> 
> 
> 
> 
> 
> 
>
> 
> 
>  value="s-hp-fs01\\dev$\\config\\keystore.jks"
> />
>  
> 
>  factory-method="getDisabledTrustManager" />
> 
> 
> 
>
> 
> 
>  value="S-hp-fs01\\dev$\\config\\log4j2.xml"/>
> 
> 
>
> 
> 
> 
> 
>  value="auth_durable_region"/>
> 
>  value="FULL_ASYNC"/>
> 
> 
> 
> 
> 
> 
> 
>
> 
> 
>
> 
> 
> 
> 
> 
> 
> 
>  
> 
> 
> 
> 
> 
> 
>  value="auth_durable_region"/>
>  value="true"/>
>  
>  />
> 
> 
> 
> 
> 
>
> 
> 
> 
> 
> 
> 
> 
> 
> v-hp-lk-dcn01:47500..47504
> v-hp-lk-dcn02:47500..47504
> 
> 
> 
> 
> 
> 
>
> 
> 
>
> 
>
> 
> http://www.springframework.org/schema/beans;
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance;
> xsi:schemaLocation="http://www.springframework.org/schema/beans
> http://www.springframework.org/schema/beans/spring-beans.xsd;>
>
> 
>
>  />
>
> 
> 
>  value="s-hp-fs01\\dev$\\config\\keystore.jks" />
>  
> 
>  factory-method="getDisabledTrustManager" />
> 
> 
> 
>
> 
> 
>  value="S-hp-fs01\\dev$\\config\\ignite-log4j2.xml"
> />
> 
> 
>
> 
> 
> 
> 
>  value="auth_durable_region" />
> 
>  value="FULL_ASYNC" />
> 
> 
>  
> 
> 
> 
> 
>
> 
> 
> 
> 
> 
>  value="f:\\ignite-wal\\archive"
> />
> 
> 
> 
>  />
>  
> 
> 
> 
> 
> 
> 
>  value="auth_durable_region" />
>  value="true" />
>  
> 
>  

Re: How to use Affinity Function to Map a set of Keys to a particular node in a cluster?

2018-06-12 Thread vkulichenko
Yes, every time topology is changed, assignments will be recalculated and
data will be rebalanced.

By partitioning mechanisms I meant basically the same that Dmitry was
describing before. Ignite automatically distributes cache entries across
nodes based on built-in affinity function. This function is pluggable and
you are free to create your own, but this task is usually not trivial - I
would recommend to do that only if you're absolutely sure that's the only
way to go. As a matter of fact, I have never seen a use case where it would
be a strong requirement.

I also believe that the actual partitioning algorithm (regardless of which
one you use) should be abstracted form the application, meaning that the
business logic should not depend on it. It sounds like you want to break
this abstraction which makes me think that you might go in the wrong
direction. But unfortunately I don't think I can help more since you're not
ready to disclose details :)

-Val



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


Re: How to use Affinity Function to Map a set of Keys to a particular node in a cluster?

2018-06-12 Thread the_palakkaran
The requirement is an actual scenario, mate. I would have explained it if it
was not a public forum.

Also this is now a personal interest of mine, you have a great product,
buddy.

What are those "partitioning" mechanisms?



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


RE: Ignite opens/close 5000 sockets in every 5mins after NODE_FAILED event

2018-06-12 Thread HEWA WIDANA GAMAGE, SUBASH
And I took a thread dump by then.

I could see about 10 of following WAITING. Is this looks fine ?

"sys-stripe-6-#29637%null%" #46762 prio=5 os_prio=0 tid=0x7fa24402b320 
nid=0x3900 waiting on condition [0x7fa22d454000]
   java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:304)
at 
org.apache.ignite.internal.util.StripedExecutor$StripeConcurrentQueue.take(StripedExecutor.java:526)
at 
org.apache.ignite.internal.util.StripedExecutor$Stripe.run(StripedExecutor.java:422)
at java.lang.Thread.run(Thread.java:748)


-Original Message-
From: HEWA WIDANA GAMAGE, SUBASH [mailto:subash.hewawidanagam...@fmr.com] 
Sent: Tuesday, June 12, 2018 2:06 PM
To: user@ignite.apache.org
Subject: RE: Ignite opens/close 5000 sockets in every 5mins after NODE_FAILED 
event

I have only 3 nodes, in three separate physical boxes. Question is, can there 
be any possibility for creating such number of sockets on 47500, between two 
nodes ? I cannot reproduce the issue. Hence trying to find any theoretical 
possibility.



-Original Message-
From: dkarachentsev [mailto:dkarachent...@gridgain.com] 
Sent: Tuesday, June 12, 2018 11:37 AM
To: user@ignite.apache.org
Subject: RE: Ignite opens/close 5000 sockets in every 5mins after NODE_FAILED 
event

There is no difference on how do you start/stop your node. 
Node on start will examine all connections specified in address list: it
takes one address and port and tries to connect to it. If not successfull,
get another address and port. For instance if you have address
1.2.3.4:47500..47509, node will check 10 addresses.

Does this impact you somehow?

Thanks!
-Dmitry



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


Re: Baseline topology issue when restarting server nodes one by one

2018-06-12 Thread Olexandr K
Hi, Dmitry

server nodes start with ignite-server.xml and client nodes with
ignite-client.xml
server node hosts: v-hp-lk-dcn01, v-hp-lk-dcn02




http://www.springframework.org/schema/beans;
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance;
   xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd;>

















 





























   







 








 
















v-hp-lk-dcn01:47500..47504
v-hp-lk-dcn02:47500..47504













http://www.springframework.org/schema/beans;
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance;
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd;>








 





















 















 








 















v-hp-lk-dcn01:47500..47504
v-hp-lk-dcn02:47500..47504












On Tue, Jun 12, 2018 at 7:03 PM, dkarachentsev 
wrote:

> Hi,
>
> What IgniteConfiguration do you use? Could you please share it?
>
> Thanks!
> -Dmitry
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>


Re: How to use Affinity Function to Map a set of Keys to a particular node in a cluster?

2018-06-12 Thread vkulichenko
Hi the_palakkaran,

Where this requirement is coming from? Why won't you just use partitioning
mechanisms Ignite provides out of the box?

-Val



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


Re: How to use Affinity Function to Map a set of Keys to a particular node in a cluster?

2018-06-12 Thread the_palakkaran
Thanks a ton man !!

One last doubt.

Will this overridden partition method be invoked everytime a new node is
added to the cluster? (Since there can be a new partition created at that
time). 

Similarly, when one node in the cluster is down, hence one partition is
gone, then also will this be invoked everytime so that rebalancing is done?

Would have tried this and checked on my own, but its hard to peek in a node
for the cache entries that it has in it.



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


RE: Ignite opens/close 5000 sockets in every 5mins after NODE_FAILED event

2018-06-12 Thread HEWA WIDANA GAMAGE, SUBASH
I have only 3 nodes, in three separate physical boxes. Question is, can there 
be any possibility for creating such number of sockets on 47500, between two 
nodes ? I cannot reproduce the issue. Hence trying to find any theoretical 
possibility.



-Original Message-
From: dkarachentsev [mailto:dkarachent...@gridgain.com] 
Sent: Tuesday, June 12, 2018 11:37 AM
To: user@ignite.apache.org
Subject: RE: Ignite opens/close 5000 sockets in every 5mins after NODE_FAILED 
event

There is no difference on how do you start/stop your node. 
Node on start will examine all connections specified in address list: it
takes one address and port and tries to connect to it. If not successfull,
get another address and port. For instance if you have address
1.2.3.4:47500..47509, node will check 10 addresses.

Does this impact you somehow?

Thanks!
-Dmitry



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


Re: Baseline topology issue when restarting server nodes one by one

2018-06-12 Thread dkarachentsev
Hi,

What IgniteConfiguration do you use? Could you please share it?

Thanks!
-Dmitry



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


Re: Transactional cache

2018-06-12 Thread dkarachentsev
Hi,

Ignite keeps Tx cached values on-heap.

Thanks!
-Dmitry



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


Transactional cache

2018-06-12 Thread Prasad Bhalerao
Hi,

When ignite transaction is started, it keeps the cache updates in temp
cache.

Does ignite keeps this temp cache in Off heap space?

Thanks,
Prasad


RE: Ignite opens/close 5000 sockets in every 5mins after NODE_FAILED event

2018-06-12 Thread HEWA WIDANA GAMAGE, SUBASH
We are using TcpDiscoveryVmIpFinder with PARTITIONED cache with one backup. 

But I specifically noticed this behavior ONLY after received a NODE_FAILED 
event on the node, and then we restart Ignite Process in the same JVM. So is 
there any known/possible implications of restarting Ignite without killing the 
JVM ?



-Original Message-
From: dkarachentsev [mailto:dkarachent...@gridgain.com] 
Sent: Tuesday, June 12, 2018 4:58 AM
To: user@ignite.apache.org
Subject: Re: Ignite opens/close 5000 sockets in every 5mins after NODE_FAILED 
event

Hi,

TcpDiscoveryMulticastIpFinder produces such a big number of connections. I'd
recommend to switch to TcpDiscoveryVmIpFinder with static set of addresses.

Thanks!
-Dmitry



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


Baseline topology issue when restarting server nodes one by one

2018-06-12 Thread Olexandr K
Hi Ignite team,

I'm faced with baseline topology issue.
Here are my testing steps:

1) start 2 server (A, B) and 2 client nodes (C, D)
2) ensure baseline topology consists of 2 server nodes
3) stop server node A
4) start server node A
5) stop server node B
... oops, it cannot be started anymore

ERROR: Caused by: org.apache.ignite.spi.IgniteSpiException: Node with set
up BaselineTopology is not allowed to join cluster without one:
c53de0cb-32de-4d9c-be08-a3da7fc35e6f

.. but c53de0cb-32de-4d9c-be08-a3da7fc35e6f  is actually node B
it looks to be started with different ID and cannot join the cluster

Is it possible to set consistentIds to be equals to host names? how to do
this?

Ignite version: 2.4.0

control.bat --baseline
Cluster state: active
Current topology version: 10

Baseline nodes:
ConsistentID=c53de0cb-32de-4d9c-be08-a3da7fc35e6f, STATE=OFFLINE
ConsistentID=f62816f4-2889-4e2e-85d4-515daed9cb4c, STATE=ONLINE


Getting NullPointerException during commit into cassandra, after reconnecting to ignite server

2018-06-12 Thread kotamrajuyashasvi
Hi

I'm working on an ignite project with cassandra as persistent storage.
Initially an ignite client connects to a ignite server. After connecting if
ignite server
is restarted, the client also reconnects to the server. But after
reconnecting during
committing data into cassandra I'm running into NullPointerException for
some of the runs/attempts randomly.

caused by: java.lang.NullPointerException
at
org.apache.ignite.cache.store.cassandra.persistence.PojoField.getValueFromObject(PojoField.java:167)
at
org.apache.ignite.cache.store.cassandra.persistence.PersistenceController.bindValues(PersistenceController.java:450)
at
org.apache.ignite.cache.store.cassandra.persistence.PersistenceController.bindKeyValue(PersistenceController.java:202)
at
org.apache.ignite.cache.store.cassandra.session.transaction.WriteMutation.bindStatement(WriteMutation.java:58)
at
org.apache.ignite.cache.store.cassandra.session.CassandraSessionImpl.execute(CassandraSessionImpl.java:499)

I'm observing the issue randomly and after going through the source code
there is a suspicion that its a java serialization issue in ignite cassandra
module

In org.apache.ignite.cache.store.cassandra.persistence.PojoField.java, there
is a PojoFieldAccessor instance variable which is transient type, so it will
not be part of serialization and if PojoField object is serialized and then
deserialized it would have PojoFieldAccessor as null. And in the Exception
we are seeing the same, NullPointerException when getValue(..) is called on
null PojoFieldAccessor in PojoField.getValueFromObject() method . So when
ever PojoField object is serialized and then deserialized we might be
observing the issue.

Below are steps for reproducing the issue

1. start the ignite server.
2. start the reproducer client and immediately after it starts to sleep,
kill and restart the ignite server.
we can observe that client reconnects to the server. 

But during commit we sometimes observe NullPointerException . We can try
attempting steps 1 and 2 till we encounter the issue.

Following is a sample reproducer: 

** DemoProgram  * 
package com.IgniteDemo; 

import java.util.*; 
import javax.cache.Cache.Entry; 
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.query.QueryCursor; 
import org.apache.ignite.cache.query.SqlFieldsQuery; 
import org.apache.ignite.cache.query.SqlQuery; 
import org.apache.ignite.configuration.CacheConfiguration; 
import org.apache.ignite.configuration.IgniteConfiguration; 

public class DemoMain { 

public static void main(String[] args){ 

String ConfigPath = "default-config.xml"; 

Ignite ignite = Ignition.start(ConfigPath); 

//sleep for 30 seconds after ignite client is started and connected to 
one
ignite server. 
//During this time quickly restart the ignite server to which the 
client is
connecting to.
System.out.println("sleeping..");
Thread.sleep(3);

IgniteCache cache = ignite.cache("Person"); 

Transaction tx =
ignite.transactions().txStart(TransactionConcurrency.PESSIMISTIC,
TransactionIsolation.REPEATABLE_READ, 6, 0);

long dob = 77146560L; 

Person p1 = new Person(1,"yash",22,"124345","addr",new Date(dob)); 

cache.put(p1.getPK(),p1); 
System.out.println("cache put successful");

System.out.println("committing..");
tx.commit();

System.out.println("cache size "+ cache.size());

} 

*** OUTPUT *** 
[18:13:00] Topology snapshot [ver=2, servers=1, clients=1, CPUs=4,
heap=2.8GB]

sleeping..

[18:13:04] Failed to connect to any address from IP finder (will retry to
join topology every 2 secs): [/127.0.0.1:47500]
[18:13:05,619][SEVERE][tcp-client-disco-sock-writer-#2][TcpDiscoverySpi]
Failed to send message: TcpDiscoveryClientMetricsUpdateMessage
[super=TcpDiscoveryAbstractMessage [sndNodeId=null,
id=9374504f361-228d774d-1de9-47ff-9ad7-cb69400bd890, verifierNodeId=null,
topVer=0, pendingIdx=0, failedNodes=null, isClient=true]]
java.net.SocketException: Socket is closed
at java.net.Socket.getSendBufferSize(Unknown Source)
at
org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.socketStream(TcpDiscoverySpi.java:1358)
at
org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.writeToSocket(TcpDiscoverySpi.java:1470)
at
org.apache.ignite.spi.discovery.tcp.ClientImpl$SocketWriter.body(ClientImpl.java:1240)
at org.apache.ignite.spi.IgniteSpiThread.run(IgniteSpiThread.java:62)
[18:13:09] New version is available at ignite.apache.org: 2.4.0
[18:13:10,727][SEVERE][tcp-client-disco-reconnector-#5][TcpDiscoverySpi]
Failed to reconnect to cluster (consider increasing 'networkTimeout'
configuration 

Re: How to use Affinity Function to Map a set of Keys to a particular node in a cluster?

2018-06-12 Thread the_palakkaran
Thanks a ton again.

Still few more doubts :

//It's much better if you in AffinityFunction.partition() method will 
calculate node according to your key. If you have key 1-1 it should go 
to partitions that belong to a single node. But at the same time method 
assignPartitions() should assign related partitions to the same node. //


1. AffinityFunction.partition() will calculate the partition where it will
be gone into. How to know which node/machine is this partition in? Is there
an API for this?

2.  // If you have key 1-1 it should go to partitions that belong to a
single node // 

How can I be sure about this? or how can I force this? Since the ids are
unique and does not have anything in common.

3.  //But at the same time method assignPartitions() should assign related
partitions to the same node.//
is this used for assigning partitions to nodes? when I checked, this returns
something else?

And finally and most importantly, this will all
work(load,rebalance,failover) if I load data from a single node and other
nodes won't have any data loading part.




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


RE: create two client instance in one JVM to connect two ignite

2018-06-12 Thread Jeff Jiao
got it, thanks



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


Re: Cache operations hanging for a minute when one of server nodesgoesdown

2018-06-12 Thread Olexandr K
Hi Stan,

I spent half of a day but was not able to find such balanced configuration.

I followed your second advice and everything looks good now

"I’d suggest to use an ExecutorService to call put()/putAsync(), getting a
cancelable Future from the start. "

I'm doing all ignite calls via dedicated thread pool and controlling max
call time via future.
Calls still hangs for 5-60 seconds after server nodes up/down but this
happens in cache-pool and is not affecting whole system.

I'm just handling this as cache misses on application side

Thanks


On Mon, Jun 11, 2018 at 7:27 PM, Stanislav Lukyanov 
wrote:

> When a node joins the cluster needs to perform partition map exchange
> process. If this process takes too long, the cluster may become
> unresponsive.
>
> Looks like this is what happened in your case. You can check how long an
> exchange took by looking for “Started exchange” and “Finished exchange” in
> the logs – I assume it’s around 20 seconds.
>
>
>
> Debugging hanged partition map exchange issues may be pretty tricky.
>
> My best guess so far is that the reduced timeouts you’ve set resulted in
> failed network IO (e.g. instead of waiting for a message for 10s and
> getting it on the first try, you retry every 3s until a fast enough
> delivery happens – which might be the 10th or 20th attempt).
>
> Try changing timeouts back and see how long your exchanges take on a node
> join. Perhaps some value will be low enough to detect node failures and
> high enough to allow regular operations to pass.
>
> If that doesn’t help, please share the full logs from all nodes.
>
>
>
> Thanks,
>
> Stan
>
>
>
> *From: *Olexandr K 
> *Sent: *11 июня 2018 г. 14:24
> *To: *user@ignite.apache.org
> *Subject: *Re: Cache operations hanging for a minute when one of server
> nodesgoesdown
>
>
>
> Hi Stan,
>
>
>
> I tried to decrease network/failure timeouts and it worked fine when node
> stopped.
>
> Unfortunately I got lot's of hanged calls when it started again.
>
> At that time all cache calls got stuck for 25-30 seconds.
>
> Is it expected? I thought rebalancing should occur in background and node
> should join the cluster when it is 100% ready, no?
>
> See some log extracts below.
>
>
>
>  
>  
>  
>  
> 
> 
>
>
>
>
>
> -- CACHE CALL STARTED: cache.put()
>
>
>
> 83837380032 2018-06-11 13:51:54.777 [https-jsse-nio-8080-exec-4] INFO
> com.xxx.lk.backend.cache.impl.RefreshTokenCache - Store:
> d289a0a3-bca6-49a4-ae9d-9568517d656e
>
>
>
> -- MANY WARNINGS BEFORE CALL COMPLETED
>
>
> 2018-06-11 13:51:55.058 [grid-timeout-worker-#4] DEBUG
> org.apache.ignite.internal.processors.timeout.GridTimeoutProcessor -
> Timeout has occurred [obj=CancelableTask 
> [id=fe9e57ee361-ba3899f9-a10b-4498-98e6-ed3b65dfc3f8,
> endTime=1528714315053, period=3000, cancel=false, task=org.apache.ignite.
> internal.processors.query.GridQueryProcessor$2@2649758c], process=true]
> 2018-06-11 13:51:55.355 [grid-timeout-worker-#4] DEBUG
> org.apache.ignite.internal.processors.timeout.GridTimeoutProcessor -
> Timeout has occurred [obj=CancelableTask 
> [id=ee9e57ee361-ba3899f9-a10b-4498-98e6-ed3b65dfc3f8,
> endTime=1528714315351, period=2000, cancel=false, task=org.apache.ignite.
> internal.processors.query.h2.IgniteH2Indexing$13@110ac52b], process=true]
> 2018-06-11 13:51:56.339 [nio-acceptor-#5] DEBUG org.apache.ignite.spi.
> communication.tcp.TcpCommunicationSpi - Balancing data [min0=0, minIdx=0,
> max0=-1, maxIdx=-1]
>
> 2018-06-11 13:51:57.074 [exchange-worker-#18] WARN
> org.apache.ignite.internal.diagnostic - Failed to wait for partition map
> exchange [topVer=AffinityTopologyVersion [topVer=6, minorTopVer=0],
> node=ba482197-64cc-4d84-81f7-2b58f0c66a0c]. Dumping pending objects that
> might be the cause:
>  2018-06-11 13:51:57.074 [exchange-worker-#18] WARN
> org.apache.ignite.internal.diagnostic - Ready affinity version:
> AffinityTopologyVersion [topVer=5, minorTopVer=0]
>  2018-06-11 13:51:57.074 [exchange-worker-#18] WARN
> org.apache.ignite.internal.diagnostic - Last exchange future:
> GridDhtPartitionsExchangeFuture [firstDiscoEvt=DiscoveryEvent
> [evtNode=TcpDiscoveryNode [id=f5fbdfd8-8df1-4222-b4e5-2d12f42dd95f,
> addrs=[10.2.0.163, 127.0.0.1, 30.251.106.199], sockAddrs=[v-hp-lk-dcn01.
> xxxgroup.tek.loc/10.2.0.163:47500, /127.0.0.1:47500, /30.251.106.199:47500],
> discPort=47500, order=6, intOrder=5, lastExchangeTime=1528714313636,
> loc=false, ver=2.4.0#20180305-sha1:aa342270, isClient=false], topVer=6,
> nodeId8=ba482197, msg=Node joined: TcpDiscoveryNode
> [id=f5fbdfd8-8df1-4222-b4e5-2d12f42dd95f, addrs=[10.2.0.163, 127.0.0.1,
> 30.251.106.199], sockAddrs=[v-hp-lk-dcn01.xxxgroup.tek.loc/10.2.0.163:
> 47500, /127.0.0.1:47500, /30.251.106.199:47500], discPort=47500, order=6,
> intOrder=5, lastExchangeTime=1528714313636, loc=false,
> ver=2.4.0#20180305-sha1:aa342270, isClient=false], type=NODE_JOINED,
> tstamp=1528714314058], crd=TcpDiscoveryNode 
> [id=34dc1ff0-45ec-4fee-995b-84dde8a451cb,
> 

Re: How to use Affinity Function to Map a set of Keys to a particular node in a cluster?

2018-06-12 Thread dkarachentsev
There are various  possible ways, but use one partition per node is
definitely a bad idea, because you're loosing scaling possibilities. If you
have 5 partitions and 5 nodes, then 6 node will be empty.

It's much better if you in AffinityFunction.partition() method will
calculate node according to your key. If you have key 1-1 it should go
to partitions that belong to a single node. But at the same time method
assignPartitions() should assign related partitions to the same node.

Or (bad solution, but easier), use 5 partitions, distribute across nodes and
put related keys to proper partition.

Thanks!
-Dmitry



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


Re: How to use Affinity Function to Map a set of Keys to a particular node in a cluster?

2018-06-12 Thread the_palakkaran
Actually my requirement is something like the below:

I have customers with customer numbers from 1 to 5, I have 5 nodes.
I need my first 1 in node1, next 1 in node2 and so on.
So I guess I cannot do that here.

Again about the below:

//AffinityFunction does two things: maps partitions to nodes and keys to 
partitions. If you override RendezvousAffinityFunction in that way, when 
partitions 1-4 will go to node 1, you need to make sure that your keys will 
fall into that partitions. //

Does this mean a node can have multiple partitions? How to make it single
partition on a single node so that if I have 5 nodes, then there shall be
maximum 5 partitions?




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


Re: How to use Affinity Function to Map a set of Keys to a particular node in a cluster?

2018-06-12 Thread dkarachentsev
Normally (without @AffinityKeyMapped) Ignite will use CustomerKey hash code
(not object hashCode()) to find a partition. Ignite will colsult with
AffinityFunction (partition() method) and to what partition put key and with
assignPartitions find concrete node that holds that partition.

In other hand, if you annotate some field with @AffinityKeyMapped, value
from that field would be used for mapping to partition. In your case, I
suppose, you need to map a field that is common to your keys, by what you
can group into one partition. For example, if you set annotation to customer
name will mean that keys with the same customer name will always hit the
same partition.

AffinityFunction does two things: maps partitions to nodes and keys to
partitions. If you override RendezvousAffinityFunction in that way, when
partitions 1-4 will go to node 1, you need to make sure that your keys will
fall into that partitions.

You may start with annotation first (this process named affinity
co-location, when some related keys put into same partition), I think that
is what you need.

Affinity implementation is set in CacheConfiguration.setAffinity().

Thanks!
-Dmitry



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


Re: How to use Affinity Function to Map a set of Keys to a particular node in a cluster?

2018-06-12 Thread the_palakkaran
Thanks.

I still have few doubts:

1. If I have a customer id, customer number, customer name fields in
CustomerKey, but only customer number is unique, I should annotate only
customer number with @@AffinityKeyMapped. Is that so? 

2. If so, ignite internally decides which node a key with the annotation
should always go into, right? To overcome this, are you suggesting
Rendezvous Affinity Function?

3. How do I get Rendezvous Affinity Function instance? How do I map it with
a node, say N1 in a cluster of 3 nodes N1,N2,N3 ?

Sorry to ask for spoon feeding, I am in a hurry to complete this, that is
why.



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


Re: How to use Affinity Function to Map a set of Keys to a particular node in a cluster?

2018-06-12 Thread dkarachentsev
Hi,

Make sure that your keys are go to specific partition. Only one node could
keep that partition at a time (except backups, of course). To do that, you
may use @AffinityKeyMapped annotation [1].

Additionally you can implement your own AffinityFunction that will assign
partitions that you need to specific node(s). You may try to extend
RendezvousAffinityFunction for that. In this case you may assign number of
partitions to proper node that you need.

[1]
https://github.com/apache/ignite/blob/master/examples/src/main/java/org/apache/ignite/examples/model/EmployeeKey.java#L33

Thanks!
-Dmitry



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


Re: Ignite opens/close 5000 sockets in every 5mins after NODE_FAILED event

2018-06-12 Thread dkarachentsev
Hi,

TcpDiscoveryMulticastIpFinder produces such a big number of connections. I'd
recommend to switch to TcpDiscoveryVmIpFinder with static set of addresses.

Thanks!
-Dmitry



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


How to use Affinity Function to Map a set of Keys to a particular node in a cluster?

2018-06-12 Thread the_palakkaran
Hi,

How can I use Affinity Function to map a set of keys (may be an id range) to
a particular node? 

What I need is that all the time this node will be responsible for
loading/handling these set of keys. 

Also if there is a node failure, this should be distributed to other nodes.



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


RE: create two client instance in one JVM to connect two ignite

2018-06-12 Thread Stanislav Lukyanov
You need to provide distinct names to the instances when starting them in the 
same JVM.
Set IgniteConfiguration::igniteInstanceName property in both configurations.

Stan

From: Jeff Jiao
Sent: 12 июня 2018 г. 9:58
To: user@ignite.apache.org
Subject: Re: create two client instance in one JVM to connect two ignite

Hi Shawn,

Have you solved this problem? I'm encountering the same problem.
how to start two Ignite instances in one JVM, I already have 2 separate
Ignite cluster(Server) running.

when I start two ignite clients in one JVM, it throws:

org.apache.ignite.IgniteException: Default Ignite instance has already been
started.
at
org.apache.ignite.internal.util.IgniteUtils.convertException(IgniteUtils.java:966)
at org.apache.ignite.Ignition.start(Ignition.java:325)
at
com.pingan.pilot.ignite.client.AIgniteClient.setIgniteAddressesAndStart(AIgniteClient.java:65)
at
com.pingan.pilot.ignite.client.AIgniteClient.(AIgniteClient.java:37)
at
com.pingan.pilot.ignite.client.IgniteExcelRangeClient.(IgniteExcelRangeClient.java:27)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at
org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:147)
at
org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:89)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1088)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1040)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:505)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:476)
at
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:321)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
at
org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:956)


Thank you~
Jeff



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



RE: ignite server cpu is high

2018-06-12 Thread Stanislav Lukyanov
These threads are not actually running (i.e. are not consuming CPU) – they are 
blocked on the socket IO.
This SO question explains why they’re RUNNABLE 
https://stackoverflow.com/questions/20795295/why-jstack-out-says-thread-state-is-runnable-while-socketread.

> if disk IO is very slow, it will make CPU busy?
Generally, no, not in modern systems.
Another SO question explains this 
https://stackoverflow.com/questions/13596997/why-is-the-cpu-not-needed-to-service-i-o-requests.

Stan

From: shawn.du
Sent: 12 июня 2018 г. 6:11
To: user
Subject: Re: ignite server cpu is high

Hi,
I see most running threads are doing below code:
     "tcp-disco-sock-reader-#469" #82488 prio=10 os_prio=0 
tid=0x7febf8308000 nid=0x3e8f runnable [0x7feb948ef000]
   java.lang.Thread.State: RUNNABLE
        at java.net.SocketInputStream.socketRead0(Native Method)
        at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
        at java.net.SocketInputStream.read(SocketInputStream.java:171)
        at java.net.SocketInputStream.read(SocketInputStream.java:141)
        at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
        at java.io.BufferedInputStream.read1(BufferedInputStream.java:286)
        at java.io.BufferedInputStream.read(BufferedInputStream.java:345)
        - locked <0x0005cee474e0> (a java.io.BufferedInputStream)
        at 
org.apache.ignite.marshaller.jdk.JdkMarshallerInputStreamWrapper.read(JdkMarshallerInputStreamWrapper.java:53)
        at 
java.io.ObjectInputStream$PeekInputStream.read(ObjectInputStream.java:2657)
        at 
java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2673)
        at 
java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:3150)
        at 
java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:859)
        at java.io.ObjectInputStream.(ObjectInputStream.java:355)
        at 
org.apache.ignite.marshaller.jdk.JdkMarshallerObjectInputStream.(JdkMarshallerObjectInputStream.java:39)
        at 
org.apache.ignite.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:119)
        at 
org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:94)
        at 
org.apache.ignite.internal.util.IgniteUtils.unmarshal(IgniteUtils.java:9740)
        at 
org.apache.ignite.spi.discovery.tcp.ServerImpl$SocketReader.body(ServerImpl.java:5946)
        at org.apache.ignite.spi.IgniteSpiThread.run(IgniteSpiThread.java:62)

Our data into ignite are big(at most several Mega bytes.) binary data like 
below:  
class Data
{
  byte[] data; 
}

one question:
if disk IO is very slow, it will make CPU busy?


Thanks
Shawn
On 6/12/2018 00:01,Stanislav Lukyanov wrote: 
Sorry, but there isn’t much else to be said without additional data.
If consistent usage of resources on that host is important, I suggest to setup 
some monitoring so that if it happens again there’ll be at least some place to 
start.
 
Stan
 
From: shawn.du
Sent: 11 июня 2018 г. 16:34
To: user@ignite.apache.org
Cc: user@ignite.apache.org
Subject: Re: ignite server cpu is high
 
the server is a dedicate ignite server。i am sure it is ignite consume cpu. I 
can’t get more info now, the cpu issue is gone as now there are very few 
traffic on our system. 
 
For our case,we store data into ignite every 30 seconds. If no query, the cpu 
should be very low. But yesterday it is a exception. Very strange.
 

shawn.du
邮箱:shawn...@neulion.com.cn 
Signature is customized by Netease Mail Master
On 06/11/2018 17:43, Stanislav Lukyanov wrote: 
How do you monitor your CPU usage? Do you know which processes consume CPU? Are 
you sure it is Ignite’s process? Is CPU consumed more in user space or in 
system space? Can you share the actual stats?
 
>From what I see in the thread dump, there is at least some activity on this 
>Ignite: sys-stripe-5-#6 thread is processing an update.
In any case, that thread is the only one in the JVM that is actually performing 
some work, so I’d assume that the CPU load comes from other processes. 
 
Thanks,
Stan
 
From: shawn.du
Sent: 11 июня 2018 г. 5:38
To: user
Subject: ignite server cpu is high
 
Hi Community,
 
My single-node ignite cluster has started since Apr 23. In past couple weeks, 
It worked fine. 
For our case, Ignite server's CPU is very low at most time with exception that 
there are complex/concurrent queries.
event in case of query, ignite server's CPU will be high for a very short 
while. I think all above is normal behavior.
But yesterday, ignite server's CPU keep high for a long time event we don't 
have query.
I use jstack to dump the threads(see the attachment), We don't find any our 
business code.
please help and thanks in advance.
 
We use ignite 2.3.0. 
java version "1.8.0_151"
Java(TM) SE Runtime Environment (build 1.8.0_151-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.151-b12, mixed mode)
 
Thanks
Shawn
 
 



Re: "WAL segment tail is reached", Is it a problem ?

2018-06-12 Thread Mikael

Hi!

Ok, lets see if this helps, here is a log from when it happens with 
"debug" enabled, it's just at the end of ignite.log file included and 
looks like:


09:22:08 [main] INFO : Read checkpoint status 
[startMarker=c:\slask\usfnew\ignite\persistence\node00-aa432e75-26ac-4af4-b631-d8944f8e155d\cp\1528787179283-4876401a-d2e8-4a90-972e-8e88115ba586-START.bin, 
endMarker=c:\slask\usfnew\ignite\persistence\node00-aa432e75-26ac-4af4-b631-d8944f8e155d\cp\1528787020090-4ee11808-263a-4955-bbea-2828f7e65af1-END.bin]
09:22:08 [main] INFO : Started page memory [memoryAllocated=100,0 MiB, 
pages=24808, tableSize=1,9 MiB, checkpointBuffer=100,0 MiB]
09:22:08 [main] INFO : Checking memory state 
[lastValidPos=FileWALPointer [idx=55, fileOff=17480259, len=75832], 
lastMarked=FileWALPointer [idx=55, fileOff=61695692, len=342535], 
lastCheckpointId=4876401a-d2e8-4a90-972e-8e88115ba586]
09:22:08 [main] WARN : Ignite node stopped in the middle of checkpoint. 
Will restore memory state and finish checkpoint on node start.
09:22:08 [main] DEBUG: Initialized WAL cursor [start=FileWALPointer 
[idx=55, fileOff=17480259, len=75832], end=null, curWalSegmIdx=54]

09:22:08 [main] DEBUG: Reserved work segment [absIdx=55, pins=1]
09:22:08 [main] DEBUG: Reading next file [absIdx=55, 
file=c:\slask\usfnew\ignite\wal\node00-aa432e75-26ac-4af4-b631-d8944f8e155d\0005.wal]
09:22:08 [main] WARN : WAL segment tail is reached. [ Expected next 
state: {Index=55,Offset=62038227}, Actual state : 
{Index=795584623626172805,Offset=13791} ]


The ignite configuration is also included (the caches are created from 
the application in Java but it's just a number of partitioned caches 
with backups=0 with native persistence, I am just running this on a 
single node at the moment, the node was shutdown nice and friendly and 
it's running in FSYNC mode, it does not happen every time the node is 
started, maybe every 5 or 6 times or so.


Mikael


Den 2018-06-11 kl. 17:26, skrev dkarachentsev:

Hi Mikael,

Please share your Ignite settings and logs.

Thanks!
-Dmitry



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




>>>__    
>>>   /  _/ ___/ |/ /  _/_  __/ __/  
>>>  _/ // (7 7// /  / / / _/
>>> /___/\___/_/|_/___/ /_/ /___/   
>>> 
>>> ver. 2.5.0#20180523-sha1:86e110c7
>>> 2018 Copyright(C) Apache Software Foundation
>>> 
>>> Ignite documentation: http://ignite.apache.org

09:22:07 [main] INFO : Config URL: file:/c:/slask/usfnew/ignite_config.xml
09:22:07 [main] INFO : IgniteConfiguration [igniteInstanceName=null, 
pubPoolSize=8, svcPoolSize=8, callbackPoolSize=8, stripedPoolSize=8, 
sysPoolSize=8, mgmtPoolSize=4, igfsPoolSize=8, dataStreamerPoolSize=8, 
utilityCachePoolSize=8, utilityCacheKeepAliveTime=6, p2pPoolSize=2, 
qryPoolSize=8, igniteHome=null, igniteWorkDir=c:\slask\usfnew\ignite\work, 
mbeanSrv=com.sun.jmx.mbeanserver.JmxMBeanServer@2cae1042, 
nodeId=ae6ecbf7-2b3f-4f82-98e2-a91480c88d71, 
marsh=org.apache.ignite.internal.binary.BinaryMarshaller@de77146, 
marshLocJobs=false, daemon=false, p2pEnabled=true, netTimeout=5000, 
sndRetryDelay=1000, sndRetryCnt=3, metricsHistSize=1, 
metricsUpdateFreq=2000, metricsExpTime=9223372036854775807, 
discoSpi=TcpDiscoverySpi [addrRslvr=null, sockTimeout=0, ackTimeout=0, 
marsh=null, reconCnt=10, reconDelay=2000, maxAckTimeout=60, 
forceSrvMode=false, clientReconnectDisabled=false, internalLsnr=null], 
segPlc=STOP, segResolveAttempts=2, waitForSegOnStart=true, 
allResolversPassReq=true, segChkFreq=1, commSpi=TcpCommunicationSpi 
[connectGate=null, connPlc=null, enableForcibleNodeKill=false, 
enableTroubleshootingLog=false, 
srvLsnr=org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi$2@50ec4bfc, 
locAddr=null, locHost=null, locPort=47100, locPortRange=100, shmemPort=-1, 
directBuf=true, directSndBuf=false, idleConnTimeout=60, connTimeout=5000, 
maxConnTimeout=60, reconCnt=10, sockSndBuf=32768, sockRcvBuf=32768, 
msgQueueLimit=0, slowClientQueueLimit=0, nioSrvr=null, shmemSrv=null, 
usePairedConnections=false, connectionsPerNode=1, tcpNoDelay=true, 
filterReachableAddresses=false, ackSndThreshold=32, unackedMsgsBufSize=0, 
sockWriteTimeout=2000, lsnr=null, boundTcpPort=-1, boundTcpShmemPort=-1, 
selectorsCnt=4, selectorSpins=0, addrRslvr=null, 
ctxInitLatch=java.util.concurrent.CountDownLatch@8b13d91[Count = 1], 
stopping=false, 
metricsLsnr=org.apache.ignite.spi.communication.tcp.TcpCommunicationMetricsListener@2589d787],
 evtSpi=org.apache.ignite.spi.eventstorage.NoopEventStorageSpi@1788cb61, 
colSpi=NoopCollisionSpi [], deploySpi=LocalDeploymentSpi [lsnr=null], 
indexingSpi=org.apache.ignite.spi.indexing.noop.NoopIndexingSpi@7558633, 
addrRslvr=null, clientMode=false, rebalanceThreadPoolSize=1, 
txCfg=org.apache.ignite.configuration.TransactionConfiguration@5657967b, 
cacheSanityCheckEnabled=true, discoStartupDelay=6, deployMode=SHARED, 
p2pMissedCacheSize=100, locHost=null, timeSrvPortBase=31100, 

Re: create two client instance in one JVM to connect two ignite

2018-06-12 Thread Jeff Jiao
Hi Shawn,

Have you solved this problem? I'm encountering the same problem.
how to start two Ignite instances in one JVM, I already have 2 separate
Ignite cluster(Server) running.

when I start two ignite clients in one JVM, it throws:

org.apache.ignite.IgniteException: Default Ignite instance has already been
started.
at
org.apache.ignite.internal.util.IgniteUtils.convertException(IgniteUtils.java:966)
at org.apache.ignite.Ignition.start(Ignition.java:325)
at
com.pingan.pilot.ignite.client.AIgniteClient.setIgniteAddressesAndStart(AIgniteClient.java:65)
at
com.pingan.pilot.ignite.client.AIgniteClient.(AIgniteClient.java:37)
at
com.pingan.pilot.ignite.client.IgniteExcelRangeClient.(IgniteExcelRangeClient.java:27)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at
org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:147)
at
org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:89)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1088)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1040)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:505)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:476)
at
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:321)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
at
org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:956)


Thank you~
Jeff



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