[jira] [Updated] (IGNITE-2105) DirectMessageWriter cannot write nested collections.

2015-12-10 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2105?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-2105:

Component/s: (was: 1.4)
 general

> DirectMessageWriter cannot write nested collections.
> 
>
> Key: IGNITE-2105
> URL: https://issues.apache.org/jira/browse/IGNITE-2105
> Project: Ignite
>  Issue Type: Bug
>  Components: general
>Affects Versions: ignite-1.4
>Reporter: Vladimir Ozerov
>Assignee: Valentin Kulichenko
>Priority: Blocker
> Fix For: 1.5
>
>
> Steps to reproduce:
> 1) Run GridMessageCollectionTest in ignite-1.5 branch
> 2) Observe class-cast exception.
> The problem is caused by DirectByteBufferStreamImplV2 which is re-used across 
> all nested objects. 
> This class is stateful. When nested collection is written, instead of writing 
> collection element it writes element of another collection which is upper in 
> call stack.
> Looks pretty critical for me.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (IGNITE-2145) Async cache operations on primary node might block

2015-12-13 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2145?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko resolved IGNITE-2145.
-
Resolution: Won't Fix

{{EntryProcessor}} has to be invoked atomically, regardless of whether you're 
executing it synchronously or asynchronously. This means that the entry will be 
locked during the execution.

If you need to execute a long-running task collocated with the data, you can 
use {{IgniteCompute.affinityRun()}} method instead, which sends a closure to 
the node where the entry is stored without locking it.

> Async cache operations on primary node might block
> --
>
> Key: IGNITE-2145
> URL: https://issues.apache.org/jira/browse/IGNITE-2145
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: ignite-1.4
> Environment: Windows 8.1 64 bit
> java version "1.8.0_51"
> Java(TM) SE Runtime Environment (build 1.8.0_51-b16)
> Java HotSpot(TM) 64-Bit Server VM (build 25.51-b03, mixed mode)
> Ignite 1.4.0
>Reporter: Avihai Berkovitz
>
> When executing async operations on caches the initial function call is 
> supposed to return immediately, without regard to cache state, network 
> traffic, etc. If we reference a cache key on a different node it works. But 
> if the primary node for a cache key is the same node that initiate the 
> operation everything is executed synchronously.
> This is probably an optimization, but can have side effects. For example, if 
> a long running CacheProcessor is invoked on this key, every operation will 
> block.
> Here is some code to illustrate the problem. Notice that there is a 4 seconds 
> delay between "Before async op" and "After async op". If you reverse the 
> isPrimary() condition it won't happen.
> {code}
> IgniteConfiguration igniteConfiguration = new IgniteConfiguration()
>   .setFailoverSpi(new AlwaysFailoverSpi())
>   .setGridLogger(new Slf4jLogger())
>   .setPeerClassLoadingEnabled(false)
>   .setDeploymentMode(DeploymentMode.CONTINUOUS);
> Ignite ignite1 = Ignition.start(igniteConfiguration);
> Ignite ignite2 = Ignition.start(igniteConfiguration.setGridName("2"));
> assert ignite1.cluster().nodes().size() == 2;
> assert ignite2.cluster().nodes().size() == 2;
> CacheConfiguration cacheConfiguration = new 
> CacheConfiguration()
>   .setName("test")
>   .setCacheMode(CacheMode.PARTITIONED)
>   .setAtomicityMode(CacheAtomicityMode.ATOMIC)
>   
> .setWriteSynchronizationMode(CacheWriteSynchronizationMode.FULL_SYNC);
> IgniteCache cache1 = 
> ignite1.getOrCreateCache(cacheConfiguration);
> IgniteCache cache2 = 
> ignite2.getOrCreateCache(cacheConfiguration);
> // Find key mapped to the first node
> String key = IntStream.range(0, 100)
>   .mapToObj(value -> "HI" + value)
>   .filter(s -> 
> ignite1.affinity(cacheConfiguration.getName()).isPrimary(ignite1.cluster().localNode(),
>  s))
>   .findFirst().get();
> // Run a blocked processor from node 2
> Thread thread = new Thread() {
>   @Override
>   public void run() {
>   System.out.println("Invoking blocked processor");
>   cache2.invoke(key, (entry, arguments) -> {
>   System.out.println("IN INVOKE");
>   try {
>   Thread.sleep(5 * 1000);
>   } catch (InterruptedException e) {
>   e.printStackTrace();
>   }
>   return null;
>   });
>   System.out.println("Blocked invoke returned");
>   }
> };
> thread.start();
> Thread.sleep(1000);
> IgniteCache async1 = cache1.withAsync();
> System.out.println("Before async op");
> //async1.put(key, 1);
> //async1.get(key);
> async1.containsKey(key);
> System.out.println("After async op");
> assert async1.future().isDone();
> thread.join();
> ignite2.close();
> ignite1.close();
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Comment Edited] (IGNITE-2087) Ignite CacheManager ignores provided class loader

2015-12-15 Thread Valentin Kulichenko (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-2087?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15059425#comment-15059425
 ] 

Valentin Kulichenko edited comment on IGNITE-2087 at 12/16/15 7:50 AM:
---

We should also set class loader for non-default URI.

This can be achieved by passing the loader to {{IgnitionEx}} and setting it to 
{{IgniteConfiguration}} after it's loaded from the XML.

UPD: I think {{IgniteConfiguration.setClassLoader}} should not be called if the 
class loader is already explicitly set.


was (Author: vkulichenko):
We should also set class loader for non-default URI.

This can be achieved by passing the loader to {{IgnitionEx}} and setting it to 
{{IgniteConfiguration}} after it's loaded from the XML.

> Ignite CacheManager ignores provided class loader
> -
>
> Key: IGNITE-2087
> URL: https://issues.apache.org/jira/browse/IGNITE-2087
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Reporter: Valentin Kulichenko
>Assignee: Anton Vinogradov
>Priority: Critical
> Fix For: 1.5
>
>
> {{CacheManager}} should delegate the provided class loader to 
> {{IgniteConfiguration.setClassLoader()}}. Currently it's ignored.
> user@ thread: 
> http://apache-ignite-users.70518.x6.nabble.com/Help-with-integrating-Ignite-as-JCache-with-JBoss-EAP-6-4-td2134.html



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-2332) Service proxy can't be created for package-private implementation

2016-01-04 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2332:
---

 Summary: Service proxy can't be created for package-private 
implementation
 Key: IGNITE-2332
 URL: https://issues.apache.org/jira/browse/IGNITE-2332
 Project: Ignite
  Issue Type: Bug
  Components: managed services
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
 Fix For: 1.6


{noformat}
Caused by: java.lang.IllegalAccessException: Class 
org.apache.ignite.internal.processors.service.GridServiceProxy$ServiceProxyCallable
 can not access a member of class 
org.apache.ignite.examples.service.MyServiceImpl with modifiers "public"
at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:109)
at 
java.lang.reflect.AccessibleObject.slowCheckMemberAccess(AccessibleObject.java:261)
at 
java.lang.reflect.AccessibleObject.checkAccess(AccessibleObject.java:253)
at java.lang.reflect.Method.invoke(Method.java:599)
at 
org.apache.ignite.internal.processors.service.GridServiceProxy$ServiceProxyCallable.call(GridServiceProxy.java:382)
at 
org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1789)
at 
org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:509)
at 
org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6372)
at 
org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:503)
at 
org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:456)
at 
org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110)
at 
org.apache.ignite.internal.processors.job.GridJobProcessor.processJobExecuteRequest(GridJobProcessor.java:1166)
at 
org.apache.ignite.internal.processors.job.GridJobProcessor$JobExecutionListener.onMessage(GridJobProcessor.java:1770)
at 
org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:823)
at 
org.apache.ignite.internal.managers.communication.GridIoManager.access$1600(GridIoManager.java:105)
at 
org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:786)
at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
{noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-2080) JVM crashes on SunOS with SIGBUS (0xa) on frame [libjvm.so+0xc7c438] Unsafe_SetInt+0x14c

2015-12-29 Thread Valentin Kulichenko (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-2080?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15074116#comment-15074116
 ] 

Valentin Kulichenko commented on IGNITE-2080:
-

Andrey,

{{DirectByteBufferStreamImplV1}} is an old version of the protocol which is 
left for compatibility only. Are you sure it needs to be changed? Also, is 
changing {{DirectByteBufferStreamImplV2}} is OK from compatibility standpoint? 
Shouldn't we introduce new protocol version for these changes?

> JVM crashes on SunOS with SIGBUS (0xa) on frame [libjvm.so+0xc7c438]  
> Unsafe_SetInt+0x14c
> -
>
> Key: IGNITE-2080
> URL: https://issues.apache.org/jira/browse/IGNITE-2080
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 1.5, 1.4
> Environment: SunOS 5.11, JDK 7
>Reporter: Andrey Gura
>Assignee: Andrey Gura
> Fix For: 1.6
>
> Attachments: 054424_0_localhost.log, benchmark-offheap.properties, 
> hs_err_pid10523.log
>
>
> JVM crashes on SunOS 5.11 with the following message:
> {noformat}
> # A fatal error has been detected by the Java Runtime Environment:
> #
> #  SIGBUS (0xa) at pc=0x76a7c438, pid=10523, tid=652
> #
> # JRE version: Java(TM) SE Runtime Environment (7.0_79-b15) (build 
> 1.7.0_79-b15)
> # Java VM: Java HotSpot(TM) 64-Bit Server VM (24.79-b02 mixed mode 
> solaris-sparc )
> # Problematic frame:
> # V  [libjvm.so+0xc7c438]  Unsafe_SetInt+0x14c
> {noformat}
> Stack trace:
> {noformat}
> Stack: [0xfff0f6f0,0xfff0f700],  sp=0xfff0f6ffd1f0,  free 
> space=1012k
> Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native 
> code)
> V  [libjvm.so+0xc7c438]  Unsafe_SetInt+0x14c
> j  sun.misc.Unsafe.putInt(Ljava/lang/Object;JI)V+-1763873616
> j  sun.misc.Unsafe.putInt(Ljava/lang/Object;JI)V+0
> j  
> org.apache.ignite.internal.util.IgniteUtils.writeVersion([BJLorg/apache/ignite/internal/processors/cache/version/GridCacheVersion;)J+135
> j  
> org.apache.ignite.internal.processors.cache.GridCacheSwapEntryImpl.marshal()[B+128
> j  
> org.apache.ignite.internal.processors.cache.GridCacheSwapManager.write(Lorg/apache/ignite/internal/processors/cache/KeyCacheObject;Ljava/nio/ByteBuffer;BLorg/apache/
> ignite/internal/processors/cache/version/GridCacheVersion;JJLorg/apache/ignite/lang/IgniteUuid;Lorg/apache/ignite/lang/IgniteUuid;)V+86
> j  org.apache.ignite.internal.processors.cache.GridCacheMapEntry.swap()V+333
> j  
> org.apache.ignite.internal.processors.cache.GridCacheMapEntry.evictInternal(ZLorg/apache/ignite/internal/processors/cache/version/GridCacheVersion;[Lorg/apache/ignit
> e/internal/processors/cache/CacheEntryPredicate;)Z+122
> j  
> org.apache.ignite.internal.processors.cache.GridCacheEvictionManager.evict0(Lorg/apache/ignite/internal/processors/cache/GridCacheAdapter;Lorg/apache/ignite/internal
> /processors/cache/GridCacheEntryEx;Lorg/apache/ignite/internal/processors/cache/version/GridCacheVersion;[Lorg/apache/ignite/internal/processors/cache/CacheEntryPredica
> te;Z)Z+117
> j  
> org.apache.ignite.internal.processors.cache.GridCacheEvictionManager.touch(Lorg/apache/ignite/internal/processors/cache/GridCacheEntryEx;Lorg/apache/ignite/internal/
> processors/affinity/AffinityTopologyVersion;)V+123
> j  
> org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridDhtAtomicCache.unlockEntries(Ljava/util/Collection;Lorg/apache/ignite/internal/processors/affi
> nity/AffinityTopologyVersion;)V+331
> j  
> org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridDhtAtomicCache.updateAllAsyncInternal0(Ljava/util/UUID;Lorg/apache/ignite/internal/processors/
> cache/distributed/dht/atomic/GridNearAtomicUpdateRequest;Lorg/apache/ignite/internal/util/typedef/CI2;)V+1023
> j  
> org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridDhtAtomicCache.updateAllAsyncInternal(Ljava/util/UUID;Lorg/apache/ignite/internal/processors/c
> ache/distributed/dht/atomic/GridNearAtomicUpdateRequest;Lorg/apache/ignite/internal/util/typedef/CI2;)V+33
> j  
> org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridNearAtomicUpdateFuture.mapSingle(Ljava/util/UUID;Lorg/apache/ignite/internal/processors/cache/
> distributed/dht/atomic/GridNearAtomicUpdateRequest;)V+28
> j  
> org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridNearAtomicUpdateFuture.access$1200(Lorg/apache/ignite/internal/processors/cache/distributed/dh
> t/atomic/GridNearAtomicUpdateFuture;Ljava/util/UUID;Lorg/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateRequest;)V+3
> j  
> org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridNearAtomicUpdateFuture$UpdateState.map(Lorg/apache/ignite/internal/processors/affinity/Affinit
> 

[jira] [Created] (IGNITE-2345) Implement JPA-based store session listener

2016-01-09 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2345:
---

 Summary: Implement JPA-based store session listener
 Key: IGNITE-2345
 URL: https://issues.apache.org/jira/browse/IGNITE-2345
 Project: Ignite
  Issue Type: Improvement
  Components: cache
Reporter: Valentin Kulichenko


We already have JDBC, Spring and Hibernate-based listeners, but it would be 
useful to have JPA-based implementation as well.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2345) Implement JPA-based store session listener

2016-01-09 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2345?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-2345:

Fix Version/s: 1.6

> Implement JPA-based store session listener
> --
>
> Key: IGNITE-2345
> URL: https://issues.apache.org/jira/browse/IGNITE-2345
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache
>Reporter: Valentin Kulichenko
> Fix For: 1.6
>
>
> We already have JDBC, Spring and Hibernate-based listeners, but it would be 
> useful to have JPA-based implementation as well.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1575) NPE when cache is started concurrently with the node stop

2016-01-05 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-1575?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-1575:

Labels:   (was: usability)

> NPE when cache is started concurrently with the node stop
> -
>
> Key: IGNITE-1575
> URL: https://issues.apache.org/jira/browse/IGNITE-1575
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Reporter: Valentin Kulichenko
>Priority: Minor
> Fix For: 1.6
>
>
> It's not causing any harm, but it's possible to get the NPE below during the 
> node stop.
> {noformat}
> 57724 [main] ERROR IgniteKernal%t1-1 - Got exception while starting (will 
> rollback startup routine).
> java.lang.NullPointerException
> at 
> org.apache.ignite.internal.processors.cache.query.continuous.CacheContinuousQueryManager.onKernalStart0(CacheContinuousQueryManager.java:91)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheManagerAdapter.onKernalStart(GridCacheManagerAdapter.java:97)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheProcessor.onKernalStart(GridCacheProcessor.java:1058)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheProcessor.onKernalStart(GridCacheProcessor.java:833)
> at org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:829)
> at 
> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:1549)
> at 
> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1416)
> at org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:916)
> at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:477)
> at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:458)
> at org.apache.ignite.Ignition.start(Ignition.java:321)
> .. application stack frames ...
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:497)
> at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
> at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
> at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
> at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
> at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
> at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
> at 
> org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:283)
> at 
> org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:173)
> at 
> org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153)
> at 
> org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:128)
> at 
> org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:203)
> at 
> org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:155)
> at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1575) NPE when cache is started concurrently with the node stop

2016-01-05 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-1575?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-1575:

   Flags: Important
Priority: Major  (was: Minor)

> NPE when cache is started concurrently with the node stop
> -
>
> Key: IGNITE-1575
> URL: https://issues.apache.org/jira/browse/IGNITE-1575
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Reporter: Valentin Kulichenko
> Fix For: 1.6
>
>
> It's not causing any harm, but it's possible to get the NPE below during the 
> node stop.
> {noformat}
> 57724 [main] ERROR IgniteKernal%t1-1 - Got exception while starting (will 
> rollback startup routine).
> java.lang.NullPointerException
> at 
> org.apache.ignite.internal.processors.cache.query.continuous.CacheContinuousQueryManager.onKernalStart0(CacheContinuousQueryManager.java:91)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheManagerAdapter.onKernalStart(GridCacheManagerAdapter.java:97)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheProcessor.onKernalStart(GridCacheProcessor.java:1058)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheProcessor.onKernalStart(GridCacheProcessor.java:833)
> at org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:829)
> at 
> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:1549)
> at 
> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1416)
> at org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:916)
> at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:477)
> at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:458)
> at org.apache.ignite.Ignition.start(Ignition.java:321)
> .. application stack frames ...
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:497)
> at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
> at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
> at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
> at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
> at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
> at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
> at 
> org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:283)
> at 
> org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:173)
> at 
> org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153)
> at 
> org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:128)
> at 
> org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:203)
> at 
> org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:155)
> at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2212) Transactional put triggers several deserializations on server of there are recordable events

2015-12-20 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2212?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-2212:

Attachment: TxTest.java

> Transactional put triggers several deserializations on server of there are 
> recordable events
> 
>
> Key: IGNITE-2212
> URL: https://issues.apache.org/jira/browse/IGNITE-2212
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Reporter: Valentin Kulichenko
> Fix For: 1.6
>
> Attachments: TxTest.java
>
>
> Test attached.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-2212) Transactional put triggers several deserializations on server of there are recordable events

2015-12-20 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2212:
---

 Summary: Transactional put triggers several deserializations on 
server of there are recordable events
 Key: IGNITE-2212
 URL: https://issues.apache.org/jira/browse/IGNITE-2212
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
 Fix For: 1.6
 Attachments: TxTest.java

Test attached.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-2249) Services are sometimes deserialized on client

2015-12-22 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2249:
---

 Summary: Services are sometimes deserialized on client
 Key: IGNITE-2249
 URL: https://issues.apache.org/jira/browse/IGNITE-2249
 Project: Ignite
  Issue Type: Bug
  Components: managed services
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
Priority: Critical
 Fix For: 1.6






--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2202) Local server query result doesn't include versions in entries

2015-12-22 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2202?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-2202:

Fix Version/s: 1.6

> Local server query result doesn't include versions in entries
> -
>
> Key: IGNITE-2202
> URL: https://issues.apache.org/jira/browse/IGNITE-2202
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Reporter: Valentin Kulichenko
>Priority: Critical
>  Labels: important
> Fix For: 1.6
>
> Attachments: QueryTest2.java
>
>
> Cache entries returned as query results don't contain versions even if the 
> query is local.
> Test attached.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-2202) Local server query result doesn't include versions in entries

2015-12-22 Thread Valentin Kulichenko (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-2202?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15069219#comment-15069219
 ] 

Valentin Kulichenko commented on IGNITE-2202:
-

This ticket is about local query on server (changed title to more informative).

Moved back to 1.6

> Local server query result doesn't include versions in entries
> -
>
> Key: IGNITE-2202
> URL: https://issues.apache.org/jira/browse/IGNITE-2202
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Reporter: Valentin Kulichenko
>Priority: Critical
>  Labels: important
> Fix For: 1.6
>
> Attachments: QueryTest2.java
>
>
> Cache entries returned as query results don't contain versions even if the 
> query is local.
> Test attached.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-967) Internal thread locals are not always cleaned

2015-12-24 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-967?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-967:
---
Labels: important  (was: )

> Internal thread locals are not always cleaned
> -
>
> Key: IGNITE-967
> URL: https://issues.apache.org/jira/browse/IGNITE-967
> Project: Ignite
>  Issue Type: Bug
>  Components: general
>Affects Versions: sprint-4
>Reporter: Valentin Kulichenko
>Assignee: Artem Shutak
>Priority: Critical
>  Labels: important
> Fix For: 1.6
>
>
> One of our users reported that he sees warnings in Tomcat's log when the 
> application that's running Ignite in embedded mode is undeployed:
> {code}
> SEVERE: The web application [/XXX] created a ThreadLocal with key of type 
> [org.apache.ignite.internal.util.GridSpinReadWriteLock$1] (value 
> [org.apache.ignite.internal.util.GridSpinReadWriteLock$1@2c2858af]) and a 
> value of type [java.lang.Integer] (value [0]) but failed to remove it when 
> the web application was stopped. Threads are going to be renewed over time to 
> try and avoid a probable memory leak.
> {code}
> There is also the similar warning for {{GridToStringBuilder.threadCache}}. 
> While it's usually OK not to clean thread locals on standalone node, in app 
> server it can cause a memory leak.
> To avoid such issues I suggest to add a special step after all test suites 
> that will check thread locals in test runner thread. If we have this check in 
> CI, we will fix it once and for always.
> Thread local values can be introspected through {{Thread.threadLocals}} 
> variable. It would also be a good idea to check Tomcat's sources on how it's 
> done there.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2195) Accessing from IGFS to HDFS that is in kerberised environment

2015-12-24 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2195?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-2195:

Labels: important  (was: )

> Accessing from IGFS to HDFS that is in kerberised environment
> -
>
> Key: IGNITE-2195
> URL: https://issues.apache.org/jira/browse/IGNITE-2195
> Project: Ignite
>  Issue Type: Bug
>  Components: hadoop, IGFS
>Affects Versions: ignite-1.4
>Reporter: Denis Magda
>Assignee: Ivan Veselovsky
>Priority: Critical
>  Labels: important
> Fix For: 1.6
>
>
> There is some issue in the current IGFS implementation that doesn't take into 
> account some Kerberos user related settings which leads to the exception 
> below when there is an attempt to work with Kerberised cluster
> {noformat}
> Connecting to HDFS with the following settings [uri=null, cfg=all-site.xml, 
> userName=null]
> log4j:WARN No appenders could be found for logger 
> (org.apache.hadoop.metrics2.lib.MutableMetricsFactory).
> log4j:WARN Please initialize the log4j system properly.
> log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more 
> info.
> org.apache.hadoop.security.AccessControlException: SIMPLE authentication is 
> not enabled. Available:[TOKEN, KERBEROS]
> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
> at 
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
> at 
> org.apache.hadoop.ipc.RemoteException.instantiateException(RemoteException.java:106)
> at 
> org.apache.hadoop.ipc.RemoteException.unwrapRemoteException(RemoteException.java:73)
> at org.apache.hadoop.hdfs.DFSClient.listPaths(DFSClient.java:2096)
> at 
> org.apache.hadoop.hdfs.DistributedFileSystem$DirListingIterator.(DistributedFileSystem.java:944)
> at 
> org.apache.hadoop.hdfs.DistributedFileSystem$DirListingIterator.(DistributedFileSystem.java:927)
> at 
> org.apache.hadoop.hdfs.DistributedFileSystem$19.doCall(DistributedFileSystem.java:872)
> at 
> org.apache.hadoop.hdfs.DistributedFileSystem$19.doCall(DistributedFileSystem.java:868)
> at 
> org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81)
> at 
> org.apache.hadoop.hdfs.DistributedFileSystem.listLocatedStatus(DistributedFileSystem.java:868)
> at org.apache.hadoop.fs.FileSystem.listLocatedStatus(FileSystem.java:1694)
> at org.apache.hadoop.fs.FileSystem$6.(FileSystem.java:1786)
> at org.apache.hadoop.fs.FileSystem.listFiles(FileSystem.java:1783)
> at com.ig.HadoopFsIssue.main(HadoopFsIssue.java:35)
> Caused by: 
> org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.AccessControlException):
>  SIMPLE authentication is not enabled. Available:[TOKEN, KERBEROS]
> at org.apache.hadoop.ipc.Client.call(Client.java:1427)
> at org.apache.hadoop.ipc.Client.call(Client.java:1358)
> at 
> org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:229)
> at com.sun.proxy.$Proxy7.getListing(Unknown Source)
> at 
> org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolTranslatorPB.getListing(ClientNamenodeProtocolTranslatorPB.java:573)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:606)
> at 
> org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:187)
> at 
> org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:102)
> at com.sun.proxy.$Proxy8.getListing(Unknown Source)
> at org.apache.hadoop.hdfs.DFSClient.listPaths(DFSClient.java:2094)
> {noformat}
> The issue is fixed in the following way. Need to revisit the fix and check 
> whether it can lead to some other consequences.
> {noformat}
> /**
> * @return {@link org.apache.hadoop.fs.FileSystem}  instance for this 
> secondary Fs.
> * @throws IOException
> */
> public FileSystem createFileSystem(String userName) throws IOException {
> userName = IgfsUtils.fixUserName(userName);
> UserGroupInformation.setConfiguration(cfg);
> UserGroupInformation ugi = UserGroupInformation.createProxyUser(userName, 
> UserGroupInformation.getCurrentUser());
> try {
> return ugi.doAs(new PrivilegedExceptionAction() {
> @Override
> public FileSystem run() throws Exception {
> return FileSystem.get(uri, cfg);
> }
> });
> } catch (InterruptedException e) 

[jira] [Updated] (IGNITE-2258) Hadoop: secondary file system is initialized on client even if there are no explicit PROXY paths.

2015-12-24 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2258?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-2258:

Labels: important  (was: )

> Hadoop: secondary file system is initialized on client even if there are no 
> explicit PROXY paths.
> -
>
> Key: IGNITE-2258
> URL: https://issues.apache.org/jira/browse/IGNITE-2258
> Project: Ignite
>  Issue Type: Bug
>  Components: hadoop
>Affects Versions: ignite-1.4
>Reporter: Vladimir Ozerov
>Priority: Critical
>  Labels: important
> Fix For: 1.6
>
>
> *Problem*:
> In case at least one PROXY path exists, we intialize secondary file system on 
> the client (IgniteHadoopFileSystem). 
> We have 4 "default paths" which are always defined (see IgfsImpl) and one of 
> these paths is in PROXY mode.
> As a result, whenever secondary file system is defined, it will always be 
> intiialized on the client whether it is needed or not.
> *Proposed solutions*:
> a) Remove these default paths as they are of little use in real apps.
> b) Or make them optional through configuration parameter.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2083) EntryProcessor is called twice on primary node in transactional cache

2015-12-24 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2083?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-2083:

Labels: important  (was: )

> EntryProcessor is called twice on primary node in transactional cache
> -
>
> Key: IGNITE-2083
> URL: https://issues.apache.org/jira/browse/IGNITE-2083
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Reporter: Valentin Kulichenko
>Priority: Critical
>  Labels: important
> Fix For: 1.5
>
>
> Issue is described in details here: 
> http://apache-ignite-developers.2346864.n4.nabble.com/EntryProcessor-invoked-twice-td5494.html
> Looks like that this can be optimized, at least for {{REPEATABLE_READ}} 
> transactions.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2079) GridCacheIoManager eats exception trail if it falls into the directed case

2015-12-24 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2079?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-2079:

Labels: important  (was: )

> GridCacheIoManager eats exception trail if it falls into the directed case
> --
>
> Key: IGNITE-2079
> URL: https://issues.apache.org/jira/browse/IGNITE-2079
> Project: Ignite
>  Issue Type: Bug
>Reporter: Anton Vinogradov
>Assignee: Anton Vinogradov
>  Labels: important
> Fix For: 1.6
>
>
> During a recent test I have run into an issue where a storage disabled client 
> of a Fabric that has services deployed for which the client does not have the 
> fabric in the class path failed with the following exception:
> com.workday.fabric.HelloWorldTest STANDARD_ERROR
> Nov 08, 2015 6:15:20 PM org.apache.ignite.logger.java.JavaLogger error
> SEVERE: Failed to process message 
> [senderId=30775397-457a-400f-a6c9-077c9e762d61, messageType=class 
> o.a.i.i.processors.cache.query.GridCacheQueryResponse]
> class org.apache.ignite.IgniteCheckedException: Failed to send response to 
> node. Unsupported direct type [message=GridCacheQueryResponse [finished=true, 
> reqId=5, err=null, fields=false, metadata=null]]
>  at 
> org.apache.ignite.internal.processors.cache.GridCacheIoManager.processFailedMessage(GridCacheIoManager.java:546)
>  at 
> org.apache.ignite.internal.processors.cache.GridCacheIoManager.onMessage0(GridCacheIoManager.java:272)
>  at 
> org.apache.ignite.internal.processors.cache.GridCacheIoManager.access$700(GridCacheIoManager.java:77)
>  at 
> org.apache.ignite.internal.processors.cache.GridCacheIoManager$OrderedMessageListener.onMessage(GridCacheIoManager.java:1078)
>  at 
> org.apache.ignite.internal.managers.communication.GridIoManager$GridCommunicationMessageSet.unwind(GridIoManager.java:2302)
>  at 
> org.apache.ignite.internal.managers.communication.GridIoManager.unwindMessageSet(GridIoManager.java:992)
>  at 
> org.apache.ignite.internal.managers.communication.GridIoManager.access$1700(GridIoManager.java:106)
>  at 
> org.apache.ignite.internal.managers.communication.GridIoManager$6.run(GridIoManager.java:961)
>  at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>  at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>  at java.lang.Thread.run(Thread.java:745)
> This unfortunately gives me 0 information to work on to resolve the issue, as 
> the original unmarshalling exception (from the JdkMarshaller) was eaten as 
> this is the code for the default process failed message:
> default:
> throw new IgniteCheckedException("Failed to send response to node. 
> Unsupported direct type [message="
> + msg + "]");
> }
> you should also include the original stack from msg.getError() in the newly 
> thrown IgniteCheckedException



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1553) Optimize transaction prepare step when store is enabled

2015-12-24 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-1553?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-1553:

Labels: important  (was: )

> Optimize transaction prepare step when store is enabled
> ---
>
> Key: IGNITE-1553
> URL: https://issues.apache.org/jira/browse/IGNITE-1553
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache
>Affects Versions: ignite-1.4
>Reporter: Alexey Goncharuk
>  Labels: important
>
> Currently entries are enlisted in a database transaction after grid 
> transaction is in PREPARED state. We can do this in parallel in the following 
> fashion (pseudo-code):
> {code}
> fut = tx.prepareAsync();
> db.write(tx.writes());
> fut.get();
> try {
> db.commit();
> 
> tx.commit();
> }
> catch (Exception e) {
> tx.rollback();
> }
> {code}
> If this approach is applied, we should be able to reduce latency for 
> transactions when write-through is enabled.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1864) Cannot configure jndiNames for CacheJndiTmLookup

2015-12-24 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-1864?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-1864:

Labels: important  (was: )

> Cannot configure jndiNames for CacheJndiTmLookup 
> -
>
> Key: IGNITE-1864
> URL: https://issues.apache.org/jira/browse/IGNITE-1864
> Project: Ignite
>  Issue Type: Bug
>  Components: general
>Reporter: Yakov Zhdanov
>Assignee: Artem Shutak
>Priority: Critical
>  Labels: important
> Fix For: 1.5
>
>
> Since user have an ability to configure only lookup class name via 
> org.apache.ignite.configuration.TransactionConfiguration#getTxManagerLookupClassName,
>  he lacks ability to properly configure all of its properties.
> This seems to be a general problem for this approach



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2249) Services are sometimes deserialized on client

2015-12-24 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2249?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-2249:

Labels: important  (was: )

> Services are sometimes deserialized on client
> -
>
> Key: IGNITE-2249
> URL: https://issues.apache.org/jira/browse/IGNITE-2249
> Project: Ignite
>  Issue Type: Bug
>  Components: managed services
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
>Priority: Critical
>  Labels: important
> Fix For: 1.6
>
>




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2212) Transactional put triggers several deserializations on server of there are recordable events

2015-12-24 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2212?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-2212:

Labels: important  (was: )

> Transactional put triggers several deserializations on server of there are 
> recordable events
> 
>
> Key: IGNITE-2212
> URL: https://issues.apache.org/jira/browse/IGNITE-2212
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Reporter: Valentin Kulichenko
>Assignee: Alexey Goncharuk
>  Labels: important
> Fix For: 1.6
>
> Attachments: TxTest.java
>
>
> Test attached.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2004) Asynchronous execution of ContinuousQuery's remote filter

2015-12-24 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2004?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-2004:

Labels: important  (was: )

> Asynchronous execution of ContinuousQuery's remote filter
> -
>
> Key: IGNITE-2004
> URL: https://issues.apache.org/jira/browse/IGNITE-2004
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Affects Versions: ignite-1.4
>Reporter: Denis Magda
>Assignee: Nikolay Tikhonov
>  Labels: important
> Fix For: 1.6
>
>
> Presently remote filters are executed synchronously an entry update. This 
> leads to the limitation when it's disallowed to perform cache related 
> operation in a filter body.
> It's required to add the ability to execute remote filters asynchronously. 
> This will let to execute any kind of operations including cache operations 
> directly in the filter body.
> The solution must be fault-tolerant. At least once execution of a filter in 
> case of a failure works fine. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1403) forOldest() cluster group returns predicate that is not updated when topology changes

2015-12-24 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-1403?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-1403:

Labels: important  (was: )

> forOldest() cluster group returns predicate that is not updated when topology 
> changes
> -
>
> Key: IGNITE-1403
> URL: https://issues.apache.org/jira/browse/IGNITE-1403
> Project: Ignite
>  Issue Type: Bug
>  Components: general
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
>  Labels: important
>
> {{AgeClusterGroup}} that implements {{forOldest()}} and {{forYoungest}} 
> cluster groups is dynamically updated when topology changes. But the 
> predicate that can be acquired from this group via {{predicate()}} method is 
> static, which is incorrect.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1523) Need to always serialize user objects with configured marshaller

2015-12-24 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-1523?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-1523:

Labels: important user-request  (was: user-request)

> Need to always serialize user objects with configured marshaller
> 
>
> Key: IGNITE-1523
> URL: https://issues.apache.org/jira/browse/IGNITE-1523
> Project: Ignite
>  Issue Type: Improvement
>  Components: general
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
>Priority: Critical
>  Labels: important, user-request
> Fix For: 1.6
>
>
> Currently some components (at least discovery) use {{JdkMarshaller}} for all 
> objects.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1186) Filter is sent instead of factory when continuous query is created

2015-12-24 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-1186?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-1186:

Labels: important  (was: )

> Filter is sent instead of factory when continuous query is created
> --
>
> Key: IGNITE-1186
> URL: https://issues.apache.org/jira/browse/IGNITE-1186
> Project: Ignite
>  Issue Type: Sub-task
>  Components: cache
>Affects Versions: 1.1.4
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
>Priority: Critical
>  Labels: important
> Fix For: 1.6
>
>
> {{CacheContinuousQueryHandler}}, which is sent to remote nodes on query 
> creation always contains {{CacheEntryEventSerializableFilter}}. This is OK 
> for our {{ContinuousQuery}} API, because it doesn't work with factories, but 
> not OK for JCache entry listener API. {{CacheEntryListenerConfiguration}} 
> contains factory and it's assumed that the filter is created on remote node 
> and is never sent through network. But we require the filter to be 
> {{Serializable}}.
> We need to always send factory instead of the filter. In case of 
> {{ContinuousQuery}} API we can use singleton factory that will wrap the 
> instance that already exist.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1979) Support case insensitive nonquoted cache names in SQL queries

2015-12-24 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-1979?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-1979:

Labels: important  (was: )

> Support case insensitive nonquoted cache names in SQL queries
> -
>
> Key: IGNITE-1979
> URL: https://issues.apache.org/jira/browse/IGNITE-1979
> Project: Ignite
>  Issue Type: Bug
>  Components: SQL
>Affects Versions: ignite-1.4
>Reporter: Denis Magda
>Priority: Critical
>  Labels: important
> Fix For: 1.6
>
>
> According to SQL ANSI-99 standard the schema name (corresponds to a cache 
> name in Ignite) is case insensitive.
> However Ignite has the requirement to put a cache name into the quotation 
> marks. This violates the standard.
> The main reasons of that is because a cache name in Ignite is case sensitive 
> and can contain all kind of symbols that are not supported by underlying H2 
> engine.
> Proposed to introduce a new configuration property to {{CacheConfiguration}} 
> that will let the end user use a cache name in case insensitive manner 
> without quoted identifiers in SQL queries.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-426) Make sure continuous queries notifications are not missed in case primary node fails

2015-12-24 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-426?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-426:
---
Labels: important  (was: )

> Make sure continuous queries notifications are not missed in case primary 
> node fails
> 
>
> Key: IGNITE-426
> URL: https://issues.apache.org/jira/browse/IGNITE-426
> Project: Ignite
>  Issue Type: Sub-task
>  Components: cache
>Reporter: Yakov Zhdanov
>Assignee: Nikolay Tikhonov
>Priority: Critical
>  Labels: important
> Fix For: 1.5
>
>
> * Maintain updates queue on backup node(s) in addition to primary node.
> * If primary node crushes, this queue is flushed to listening clients.
> * To avoid notification duplicates we will have a per-partition update 
> counter. Once an entry in some partition is updated, counter for this 
> partition is incremented on both primary and backups. The value of this 
> counter is also sent along with the update to the client, which also 
> maintains the copy of this mapping. If at some moment it receives an update 
> with the counter less than in its local map, this update is a duplicate and 
> can be discarded.
> * To cleanup the backup queue we will use communication acks. When batch 
> receival is acked by the client, we will send special ack message to backup 
> nodes that will remove items that are not longer needed. This message has to 
> contain partition to latest update counter map.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2213) Handle duplicate field names in BinaryMarshaller.

2015-12-24 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2213?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-2213:

Labels: important  (was: )

> Handle duplicate field names in BinaryMarshaller.
> -
>
> Key: IGNITE-2213
> URL: https://issues.apache.org/jira/browse/IGNITE-2213
> Project: Ignite
>  Issue Type: Bug
>  Components: general, interop
>Affects Versions: ignite-1.4
>Reporter: Vladimir Ozerov
>Assignee: Vladimir Ozerov
>Priority: Blocker
>  Labels: important
> Fix For: 1.5
>
>
> Consider the following scenario:
> {code}
> class A {
> int field;
> }
> class B : class A {
> int field;
> }
> {code}
> In this case BinaryMarshaller will throw an exception about duplicate field 
> names. And there is no sensible workaround for user. 
> We can add some prefix/suffix to comflicting fields. E.g. A.field will be 
> written as "field", B.field will be written as "field_B".



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-2289) Eviction policy doesn't work with OFFHEAP_VALUES mode

2015-12-25 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2289:
---

 Summary: Eviction policy doesn't work with OFFHEAP_VALUES mode
 Key: IGNITE-2289
 URL: https://issues.apache.org/jira/browse/IGNITE-2289
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
 Fix For: 1.6


For issue description and the test refer to this discussion: 
http://apache-ignite-users.70518.x6.nabble.com/Eviction-for-OFFHEAP-TIERED-vs-OFFHEAP-VALUES-td2302.html



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-2310) Add lock/unlock partition operations on IgniteCache

2015-12-28 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2310:
---

 Summary: Add lock/unlock partition operations on IgniteCache
 Key: IGNITE-2310
 URL: https://issues.apache.org/jira/browse/IGNITE-2310
 Project: Ignite
  Issue Type: New Feature
  Components: cache
Reporter: Valentin Kulichenko
Priority: Critical
 Fix For: 1.6


Need to add public API methods that will allow to lock and unlock partitions. 
This may be useful to avoid data movements when using {{affinityRun}} during 
topology changes.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-2311) Need to add an option to store cache objects only in deserialized form

2015-12-28 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2311:
---

 Summary: Need to add an option to store cache objects only in 
deserialized form
 Key: IGNITE-2311
 URL: https://issues.apache.org/jira/browse/IGNITE-2311
 Project: Ignite
  Issue Type: New Feature
  Components: cache
Reporter: Valentin Kulichenko
Priority: Critical
 Fix For: 1.6


In this new mode objects should be always deserialized when saved in cache and 
serialized form should be discarded. Serialization should happen only on demand 
(e.g., for get() or rebalancing).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2311) Need to add an option to store cache objects only in deserialized form

2015-12-28 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2311?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-2311:

Flags: Important

> Need to add an option to store cache objects only in deserialized form
> --
>
> Key: IGNITE-2311
> URL: https://issues.apache.org/jira/browse/IGNITE-2311
> Project: Ignite
>  Issue Type: New Feature
>  Components: cache
>Reporter: Valentin Kulichenko
>Priority: Critical
> Fix For: 1.6
>
>
> In this new mode objects should be always deserialized when saved in cache 
> and serialized form should be discarded. Serialization should happen only on 
> demand (e.g., for get() or rebalancing).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-2225) Externalizable classes are serialized twice with binary marshaller

2015-12-21 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2225:
---

 Summary: Externalizable classes are serialized twice with binary 
marshaller
 Key: IGNITE-2225
 URL: https://issues.apache.org/jira/browse/IGNITE-2225
 Project: Ignite
  Issue Type: Bug
  Components: general
Reporter: Valentin Kulichenko
Priority: Blocker
 Fix For: 1.5


Test that reproduces that issue is attached to IGNITE-2212



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-2087) Ignite CacheManager ignores provided class loader

2015-12-17 Thread Valentin Kulichenko (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-2087?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15063265#comment-15063265
 ] 

Valentin Kulichenko commented on IGNITE-2087:
-

Anton,

Changes look good. Please add tests and if OK, good to merge.

> Ignite CacheManager ignores provided class loader
> -
>
> Key: IGNITE-2087
> URL: https://issues.apache.org/jira/browse/IGNITE-2087
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Reporter: Valentin Kulichenko
>Assignee: Anton Vinogradov
>Priority: Critical
> Fix For: 1.5
>
>
> {{CacheManager}} should delegate the provided class loader to 
> {{IgniteConfiguration.setClassLoader()}}. Currently it's ignored.
> user@ thread: 
> http://apache-ignite-users.70518.x6.nabble.com/Help-with-integrating-Ignite-as-JCache-with-JBoss-EAP-6-4-td2134.html



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2203) CacheEntryImplEx contains version twice

2015-12-17 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2203?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-2203:

Attachment: EpTest.java

> CacheEntryImplEx contains version twice
> ---
>
> Key: IGNITE-2203
> URL: https://issues.apache.org/jira/browse/IGNITE-2203
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Reporter: Valentin Kulichenko
>Priority: Critical
> Fix For: 1.5
>
> Attachments: EpTest.java
>
>
> {{CacheEntryImplEx}} extends {{CacheEntryImpl}}, which duplicated the version.
> This makes it impossible to serialize with the {{BinaryMarshaller}}:
> {code}
> class org.apache.ignite.binary.BinaryObjectException: Duplicate field name 
> [fieldName=ver, 
> cls=org.apache.ignite.internal.processors.cache.CacheEntryImplEx]
> {code}
> Test that reproduces the failure is attached.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-2202) Query result entries don't include versions

2015-12-17 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2202:
---

 Summary: Query result entries don't include versions
 Key: IGNITE-2202
 URL: https://issues.apache.org/jira/browse/IGNITE-2202
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
Priority: Critical
 Fix For: 1.6


Cache entries returned as query results don't contain versions even if the 
query is local.

Test attached.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2202) Query result entries don't include versions

2015-12-17 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2202?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-2202:

Attachment: QueryTest2.java

> Query result entries don't include versions
> ---
>
> Key: IGNITE-2202
> URL: https://issues.apache.org/jira/browse/IGNITE-2202
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Reporter: Valentin Kulichenko
>Priority: Critical
> Fix For: 1.6
>
> Attachments: QueryTest2.java
>
>
> Cache entries returned as query results don't contain versions even if the 
> query is local.
> Test attached.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (IGNITE-1988) NPE when explicit lock is acquired within a transaction

2015-11-26 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-1988?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko closed IGNITE-1988.
---

> NPE when explicit lock is acquired within a transaction
> ---
>
> Key: IGNITE-1988
> URL: https://issues.apache.org/jira/browse/IGNITE-1988
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
>Priority: Critical
> Fix For: 1.5
>
>
> This code:
> {code}
> try (Transaction tx = Ignition.ignite().transactions().txStart()) {
> cache.lock(1).lock();
> }
> {code}
> result in the NPE:
> {code}
> Exception in thread "main" java.lang.NullPointerException
>   at 
> org.apache.ignite.internal.processors.cache.distributed.dht.colocated.GridDhtColocatedLockFuture.addEntry(GridDhtColocatedLockFuture.java:294)
>   at 
> org.apache.ignite.internal.processors.cache.distributed.dht.colocated.GridDhtColocatedLockFuture.addLocalKey(GridDhtColocatedLockFuture.java:1172)
>   at 
> org.apache.ignite.internal.processors.cache.distributed.dht.colocated.GridDhtColocatedLockFuture.mapAsPrimary(GridDhtColocatedLockFuture.java:1118)
>   at 
> org.apache.ignite.internal.processors.cache.distributed.dht.colocated.GridDhtColocatedLockFuture.map(GridDhtColocatedLockFuture.java:736)
>   at 
> org.apache.ignite.internal.processors.cache.distributed.dht.colocated.GridDhtColocatedLockFuture.mapOnTopology(GridDhtColocatedLockFuture.java:677)
>   at 
> org.apache.ignite.internal.processors.cache.distributed.dht.colocated.GridDhtColocatedLockFuture.map(GridDhtColocatedLockFuture.java:629)
>   at 
> org.apache.ignite.internal.processors.cache.distributed.dht.colocated.GridDhtColocatedCache.lockAllAsync(GridDhtColocatedCache.java:628)
>   at 
> org.apache.ignite.internal.processors.cache.distributed.GridDistributedCacheAdapter.lockAllAsync(GridDistributedCacheAdapter.java:117)
>   at 
> org.apache.ignite.internal.processors.cache.GridCacheAdapter.lockAll(GridCacheAdapter.java:3150)
>   at 
> org.apache.ignite.internal.processors.cache.CacheLockImpl.lock(CacheLockImpl.java:72)
>   at 
> org.apache.ignite.examples.datagrid.CacheTransactionExample.deposit(CacheTransactionExample.java:92)
>   at 
> org.apache.ignite.examples.datagrid.CacheTransactionExample.main(CacheTransactionExample.java:70)
> {code}
> If such usage is invalid, proper exception should be thrown.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-967) Internal thread locals are not always cleaned

2015-11-20 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-967?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-967:
---
Priority: Critical  (was: Blocker)

> Internal thread locals are not always cleaned
> -
>
> Key: IGNITE-967
> URL: https://issues.apache.org/jira/browse/IGNITE-967
> Project: Ignite
>  Issue Type: Bug
>  Components: general
>Affects Versions: sprint-4
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
>Priority: Critical
> Fix For: 1.6
>
>
> One of our users reported that he sees warnings in Tomcat's log when the 
> application that's running Ignite in embedded mode is undeployed:
> {code}
> SEVERE: The web application [/XXX] created a ThreadLocal with key of type 
> [org.apache.ignite.internal.util.GridSpinReadWriteLock$1] (value 
> [org.apache.ignite.internal.util.GridSpinReadWriteLock$1@2c2858af]) and a 
> value of type [java.lang.Integer] (value [0]) but failed to remove it when 
> the web application was stopped. Threads are going to be renewed over time to 
> try and avoid a probable memory leak.
> {code}
> There is also the similar warning for {{GridToStringBuilder.threadCache}}. 
> While it's usually OK not to clean thread locals on standalone node, in app 
> server it can cause a memory leak.
> To avoid such issues I suggest to add a special step after all test suites 
> that will check thread locals in test runner thread. If we have this check in 
> CI, we will fix it once and for always.
> Thread local values can be introspected through {{Thread.threadLocals}} 
> variable. It would also be a good idea to check Tomcat's sources on how it's 
> done there.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-967) Internal thread locals are not always cleaned

2015-11-20 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-967?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-967:
---
Fix Version/s: 1.6

> Internal thread locals are not always cleaned
> -
>
> Key: IGNITE-967
> URL: https://issues.apache.org/jira/browse/IGNITE-967
> Project: Ignite
>  Issue Type: Bug
>  Components: general
>Affects Versions: sprint-4
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
>Priority: Blocker
> Fix For: 1.6
>
>
> One of our users reported that he sees warnings in Tomcat's log when the 
> application that's running Ignite in embedded mode is undeployed:
> {code}
> SEVERE: The web application [/XXX] created a ThreadLocal with key of type 
> [org.apache.ignite.internal.util.GridSpinReadWriteLock$1] (value 
> [org.apache.ignite.internal.util.GridSpinReadWriteLock$1@2c2858af]) and a 
> value of type [java.lang.Integer] (value [0]) but failed to remove it when 
> the web application was stopped. Threads are going to be renewed over time to 
> try and avoid a probable memory leak.
> {code}
> There is also the similar warning for {{GridToStringBuilder.threadCache}}. 
> While it's usually OK not to clean thread locals on standalone node, in app 
> server it can cause a memory leak.
> To avoid such issues I suggest to add a special step after all test suites 
> that will check thread locals in test runner thread. If we have this check in 
> CI, we will fix it once and for always.
> Thread local values can be introspected through {{Thread.threadLocals}} 
> variable. It would also be a good idea to check Tomcat's sources on how it's 
> done there.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1523) Need to always serialize user objects with configured marshaller

2015-11-20 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-1523?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-1523:

Priority: Critical  (was: Blocker)

> Need to always serialize user objects with configured marshaller
> 
>
> Key: IGNITE-1523
> URL: https://issues.apache.org/jira/browse/IGNITE-1523
> Project: Ignite
>  Issue Type: Improvement
>  Components: general
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
>Priority: Critical
>  Labels: user-request
> Fix For: 1.6
>
>
> Currently some components (at least discovery) use {{JdkMarshaller}} for all 
> objects.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1523) Need to always serialize user objects with configured marshaller

2015-11-20 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-1523?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-1523:

Fix Version/s: 1.6

> Need to always serialize user objects with configured marshaller
> 
>
> Key: IGNITE-1523
> URL: https://issues.apache.org/jira/browse/IGNITE-1523
> Project: Ignite
>  Issue Type: Improvement
>  Components: general
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
>Priority: Blocker
>  Labels: user-request
> Fix For: 1.6
>
>
> Currently some components (at least discovery) use {{JdkMarshaller}} for all 
> objects.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1186) Filter is sent instead of factory when continuous query is created

2015-11-20 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-1186?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-1186:

Fix Version/s: 1.6

> Filter is sent instead of factory when continuous query is created
> --
>
> Key: IGNITE-1186
> URL: https://issues.apache.org/jira/browse/IGNITE-1186
> Project: Ignite
>  Issue Type: Sub-task
>  Components: cache
>Affects Versions: 1.1.4
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
>Priority: Critical
> Fix For: 1.6
>
>
> {{CacheContinuousQueryHandler}}, which is sent to remote nodes on query 
> creation always contains {{CacheEntryEventSerializableFilter}}. This is OK 
> for our {{ContinuousQuery}} API, because it doesn't work with factories, but 
> not OK for JCache entry listener API. {{CacheEntryListenerConfiguration}} 
> contains factory and it's assumed that the filter is created on remote node 
> and is never sent through network. But we require the filter to be 
> {{Serializable}}.
> We need to always send factory instead of the filter. In case of 
> {{ContinuousQuery}} API we can use singleton factory that will wrap the 
> instance that already exist.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1538) Query performance is 2 times slower in OFFHEAP_TIERED mode

2015-11-20 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-1538?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-1538:

Assignee: (was: Valentin Kulichenko)

> Query performance is 2 times slower in OFFHEAP_TIERED mode
> --
>
> Key: IGNITE-1538
> URL: https://issues.apache.org/jira/browse/IGNITE-1538
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Reporter: Valentin Kulichenko
>Priority: Blocker
>  Labels: performance, user-request
> Fix For: 1.6
>
>
> Corresponding user@ thread: 
> http://apache-ignite-users.70518.x6.nabble.com/SQL-Performance-indexing-performance-on-heap-vs-off-heap-td1352.html
> Need to run benchmarks and investigate.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1538) Query performance is 2 times slower in OFFHEAP_TIERED mode

2015-11-20 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-1538?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-1538:

Fix Version/s: (was: 1.5)
   1.6

> Query performance is 2 times slower in OFFHEAP_TIERED mode
> --
>
> Key: IGNITE-1538
> URL: https://issues.apache.org/jira/browse/IGNITE-1538
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
>Priority: Blocker
>  Labels: performance, user-request
> Fix For: 1.6
>
>
> Corresponding user@ thread: 
> http://apache-ignite-users.70518.x6.nabble.com/SQL-Performance-indexing-performance-on-heap-vs-off-heap-td1352.html
> Need to run benchmarks and investigate.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1840) Exception in eviction manager on startup

2015-11-20 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-1840?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-1840:

Fix Version/s: (was: 1.5)
   1.6

> Exception in eviction manager on startup
> 
>
> Key: IGNITE-1840
> URL: https://issues.apache.org/jira/browse/IGNITE-1840
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Affects Versions: ignite-1.4
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
> Fix For: 1.6
>
>
> It's rarely reproduced and looks like a race condition on startup. In some 
> cases eviction backup worker start to work too early which leads to this 
> exception on first iterations:
> {noformat}
> Exception in thread "cache-eviction-backup-worker-#40%null%" 
> java.lang.AssertionError: AffinityTopologyVersion [topVer=-1, minorTopVer=0]
> at 
> org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache.cachedAffinity(GridAffinityAssignmentCache.java:423)
> at 
> org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache.primaryPartitions(GridAffinityAssignmentCache.java:397)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheAffinityManager.primaryPartitions(GridCacheAffinityManager.java:352)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheEvictionManager$BackupWorker.body(GridCacheEvictionManager.java:1478)
> at 
> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110)
> at java.lang.Thread.run(Thread.java:745)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-1956) Portable object requires to have a class to get Enum field value

2015-11-19 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1956:
---

 Summary: Portable object requires to have a class to get Enum 
field value
 Key: IGNITE-1956
 URL: https://issues.apache.org/jira/browse/IGNITE-1956
 Project: Ignite
  Issue Type: Bug
  Components: general
Reporter: Valentin Kulichenko
 Fix For: 1.6


{{PortableObject.field()}} method implementation attempts to resolve the class 
if the field type is Enum. This is wrong, because this method should work on 
server side without classes on classpath. Also this breaks the {{toString()}} 
method in this case.

In addition, .NET always writes {{-1}} as a type ID for any enum, so on Java 
side it is resolved into {{java.lang.Object}}. As a result, {{field()}} and 
{{toString()} method fail with this exception:
{code}
Caused by: org.apache.ignite.internal.portable.api.PortableException: Class 
does not represent enum type: java.lang.Object
{code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-1956) Portable object requires to have a class to get Enum field value

2015-11-19 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-1956?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-1956:

Description: 
{{PortableObject.field()}} method implementation attempts to resolve the class 
if the field type is Enum. This is wrong, because this method should work on 
server side without classes on classpath. Also this breaks the {{toString()}} 
method in this case.

In addition, .NET always writes {{-1}} as a type ID for any enum, so on Java 
side it is resolved into {{java.lang.Object}}. As a result, {{field()}} and 
{{toString()}} method fail with this exception:
{code}
Caused by: org.apache.ignite.internal.portable.api.PortableException: Class 
does not represent enum type: java.lang.Object
{code}

  was:
{{PortableObject.field()}} method implementation attempts to resolve the class 
if the field type is Enum. This is wrong, because this method should work on 
server side without classes on classpath. Also this breaks the {{toString()}} 
method in this case.

In addition, .NET always writes {{-1}} as a type ID for any enum, so on Java 
side it is resolved into {{java.lang.Object}}. As a result, {{field()}} and 
{{toString()} method fail with this exception:
{code}
Caused by: org.apache.ignite.internal.portable.api.PortableException: Class 
does not represent enum type: java.lang.Object
{code}


> Portable object requires to have a class to get Enum field value
> 
>
> Key: IGNITE-1956
> URL: https://issues.apache.org/jira/browse/IGNITE-1956
> Project: Ignite
>  Issue Type: Bug
>  Components: general, interop
>Reporter: Valentin Kulichenko
>Assignee: Vladimir Ozerov
> Fix For: 1.5
>
>
> {{PortableObject.field()}} method implementation attempts to resolve the 
> class if the field type is Enum. This is wrong, because this method should 
> work on server side without classes on classpath. Also this breaks the 
> {{toString()}} method in this case.
> In addition, .NET always writes {{-1}} as a type ID for any enum, so on Java 
> side it is resolved into {{java.lang.Object}}. As a result, {{field()}} and 
> {{toString()}} method fail with this exception:
> {code}
> Caused by: org.apache.ignite.internal.portable.api.PortableException: Class 
> does not represent enum type: java.lang.Object
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (IGNITE-1227) Need to implement Ignite-based Spring transaction manager

2015-11-20 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-1227?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko closed IGNITE-1227.
---

> Need to implement Ignite-based Spring transaction manager
> -
>
> Key: IGNITE-1227
> URL: https://issues.apache.org/jira/browse/IGNITE-1227
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache
>Affects Versions: 1.1.4
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
>  Labels: newbie
> Fix For: 1.5
>
> Attachments: IGNITE-1227.patch
>
>
> This will allow to use Spring transaction interceptor for wrapping cache 
> operations into Ignite transaction.
> Essentially, we need to implement Spring's {{PlatformTransactionManager}} 
> interface using {{IgniteTransactions}} API.
> Corresponding user list thread: 
> http://apache-ignite-users.70518.x6.nabble.com/Transactions-td885.html



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-2358) Write behind store swallows exception trace in case of error

2016-01-11 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2358:
---

 Summary: Write behind store swallows exception trace in case of 
error
 Key: IGNITE-2358
 URL: https://issues.apache.org/jira/browse/IGNITE-2358
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
 Fix For: 1.6


See {{GridCacheWriteBehindStore:708}}:

{code}
LT.warn(log, e, "Unable to update underlying store: " + store);
{code}

The exception trace is never printed out in case of warnings, therefore user 
sees only message, which is usually not enough.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-3153) TcpDiscoveryZookeeperIpFinder doesn't properly handle client reconnections

2016-06-08 Thread Valentin Kulichenko (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-3153?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15320679#comment-15320679
 ] 

Valentin Kulichenko commented on IGNITE-3153:
-

Anton,

I was under impression that {{onSpiContextDestroyed}} can be called on client 
disconnect. If this is not true, I think you're right. But the usage of 
{{initGuard}} should be revisited in any case.

> TcpDiscoveryZookeeperIpFinder doesn't properly handle client reconnections
> --
>
> Key: IGNITE-3153
> URL: https://issues.apache.org/jira/browse/IGNITE-3153
> Project: Ignite
>  Issue Type: Bug
>  Components: general
>Affects Versions: 1.5.0.final
>Reporter: Valentin Kulichenko
>Assignee: Anton Vinogradov
> Fix For: 1.7
>
>
> The exception below is possible when client reconnects and ZooKeeper IP 
> finder is used. Most likely this is caused by the fact that {{initGuard}} is 
> flipped back to {{false}} when the context is destroyed and new curator 
> instance is not created during the reconnect.
> This should be fixed and test coverage for this scenario should be improved.
> {noformat}
> 2016-05-16 12:00:59,096 5786  ERROR 
> org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi Runtime error caught 
> during grid runnable execution: IgniteSpiThread 
> [name=tcp-client-disco-reconnector-#5%Default%] 
> java.lang.IllegalStateException: Cannot be started more than once
> at 
> org.apache.curator.framework.imps.CuratorFrameworkImpl.start(CuratorFrameworkImpl.java:237)
> ...
> at 
> org.apache.ignite.spi.discovery.tcp.ipfinder.zk.TcpDiscoveryZookeeperIpFinder.init(TcpDiscoveryZookeeperIpFinder.java:144)
> at 
> org.apache.ignite.spi.discovery.tcp.ipfinder.zk.TcpDiscoveryZookeeperIpFinder.getRegisteredAddresses(TcpDiscoveryZookeeperIpFinder.java:169)
> at 
> org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.registeredAddresses(TcpDiscoverySpi.java:1603)
> at 
> org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.resolvedAddresses(TcpDiscoverySpi.java:1552)
> at 
> org.apache.ignite.spi.discovery.tcp.ClientImpl.joinTopology(ClientImpl.java:475)
> at 
> org.apache.ignite.spi.discovery.tcp.ClientImpl.access$900(ClientImpl.java:118)
> at 
> org.apache.ignite.spi.discovery.tcp.ClientImpl$Reconnector.body(ClientImpl.java:1175)
> at org.apache.ignite.spi.IgniteSpiThread.run(IgniteSpiThread.java:62)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (IGNITE-3232) Ignite RDD: need to add transformer closure to saveValues and savePairs

2016-06-06 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-3232?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko closed IGNITE-3232.
---

> Ignite RDD: need to add transformer closure to saveValues and savePairs
> ---
>
> Key: IGNITE-3232
> URL: https://issues.apache.org/jira/browse/IGNITE-3232
> Project: Ignite
>  Issue Type: Improvement
>  Components: Ignite RDD
>Reporter: Yakov Zhdanov
>Assignee: Valentin Kulichenko
> Fix For: 1.7
>
>
> We need to add transformer closure that allows inline transformation.
> Closure should accept rdd row and return result eligible to be saved in 
> cache. User should also should have access to Ignite instance inside closure 
> to be able to provide affinity key to store on desired node.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (IGNITE-3175) BigDecimal fields are not supported if query is executed from IgniteRDD

2016-06-06 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-3175?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko closed IGNITE-3175.
---

> BigDecimal fields are not supported if query is executed from IgniteRDD
> ---
>
> Key: IGNITE-3175
> URL: https://issues.apache.org/jira/browse/IGNITE-3175
> Project: Ignite
>  Issue Type: Bug
>  Components: Ignite RDD
>Affects Versions: 1.5.0.final
>Reporter: Valentin Kulichenko
>Assignee: Taras Ledkov
> Fix For: 1.7
>
>
> If one of the fields participating in the query is {{BigDecimal}}, the query 
> will fail when executed from {{IgniteRDD}} with the following error:
> {noformat}
> scala.MatchError: 1124757 (of class java.math.BigDecimal)
>   at 
> org.apache.spark.sql.catalyst.CatalystTypeConverters$StructConverter.toCatalystImpl(CatalystTypeConverters.scala:255)
>   at 
> org.apache.spark.sql.catalyst.CatalystTypeConverters$StructConverter.toCatalystImpl(CatalystTypeConverters.scala:250)
>   at 
> org.apache.spark.sql.catalyst.CatalystTypeConverters$CatalystTypeConverter.toCatalyst(CatalystTypeConverters.scala:102)
>   at 
> org.apache.spark.sql.catalyst.CatalystTypeConverters$StructConverter.toCatalystImpl(CatalystTypeConverters.scala:260)
>   at 
> org.apache.spark.sql.catalyst.CatalystTypeConverters$StructConverter.toCatalystImpl(CatalystTypeConverters.scala:250)
>   at 
> org.apache.spark.sql.catalyst.CatalystTypeConverters$CatalystTypeConverter.toCatalyst(CatalystTypeConverters.scala:102)
>   at 
> org.apache.spark.sql.catalyst.CatalystTypeConverters$$anonfun$createToCatalystConverter$2.apply(CatalystTypeConverters.scala:401)
>   at 
> org.apache.spark.sql.SQLContext$$anonfun$6.apply(SQLContext.scala:492)
>   at 
> org.apache.spark.sql.SQLContext$$anonfun$6.apply(SQLContext.scala:492)
>   at scala.collection.Iterator$$anon$11.next(Iterator.scala:328)
>   at scala.collection.Iterator$$anon$11.next(Iterator.scala:328)
>   at 
> org.apache.spark.sql.execution.aggregate.TungstenAggregationIterator.processInputs(TungstenAggregationIterator.scala:505)
>   at 
> org.apache.spark.sql.execution.aggregate.TungstenAggregationIterator.(TungstenAggregationIterator.scala:686)
>   at 
> org.apache.spark.sql.execution.aggregate.TungstenAggregate$$anonfun$doExecute$1$$anonfun$2.apply(TungstenAggregate.scala:95)
>   at 
> org.apache.spark.sql.execution.aggregate.TungstenAggregate$$anonfun$doExecute$1$$anonfun$2.apply(TungstenAggregate.scala:86)
>   at 
> org.apache.spark.rdd.RDD$$anonfun$mapPartitions$1$$anonfun$apply$20.apply(RDD.scala:710)
>   at 
> org.apache.spark.rdd.RDD$$anonfun$mapPartitions$1$$anonfun$apply$20.apply(RDD.scala:710)
>   at 
> org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:38)
>   at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:306)
>   at org.apache.spark.rdd.RDD.iterator(RDD.scala:270)
>   at 
> org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:38)
>   at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:306)
>   at org.apache.spark.rdd.RDD.iterator(RDD.scala:270)
>   at 
> org.apache.spark.scheduler.ShuffleMapTask.runTask(ShuffleMapTask.scala:73)
>   at 
> org.apache.spark.scheduler.ShuffleMapTask.runTask(ShuffleMapTask.scala:41)
>   at org.apache.spark.scheduler.Task.run(Task.scala:89)
>   at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:213)
>   at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>   at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>   at java.lang.Thread.run(Thread.java:745)
> {noformat}
> Most likely this is caused by the fact that {{IgniteRDD.dataType()}} method 
> doesn't honor {{BigDecimal}} and returns {{StructType}} by default. We should 
> fix this and check other possible types as well.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-3175) BigDecimal fields are not supported if query is executed from IgniteRDD

2016-06-06 Thread Valentin Kulichenko (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-3175?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15316520#comment-15316520
 ] 

Valentin Kulichenko commented on IGNITE-3175:
-

Taras,

The change looks good to me, I merged it into master.

Can you provide more info on what is not working now and which types are 
problematic? Do we have corresponding tests? I think this should go to the dev 
list, I will resolve the ticket.

Thanks!

> BigDecimal fields are not supported if query is executed from IgniteRDD
> ---
>
> Key: IGNITE-3175
> URL: https://issues.apache.org/jira/browse/IGNITE-3175
> Project: Ignite
>  Issue Type: Bug
>  Components: Ignite RDD
>Affects Versions: 1.5.0.final
>Reporter: Valentin Kulichenko
>Assignee: Taras Ledkov
> Fix For: 1.7
>
>
> If one of the fields participating in the query is {{BigDecimal}}, the query 
> will fail when executed from {{IgniteRDD}} with the following error:
> {noformat}
> scala.MatchError: 1124757 (of class java.math.BigDecimal)
>   at 
> org.apache.spark.sql.catalyst.CatalystTypeConverters$StructConverter.toCatalystImpl(CatalystTypeConverters.scala:255)
>   at 
> org.apache.spark.sql.catalyst.CatalystTypeConverters$StructConverter.toCatalystImpl(CatalystTypeConverters.scala:250)
>   at 
> org.apache.spark.sql.catalyst.CatalystTypeConverters$CatalystTypeConverter.toCatalyst(CatalystTypeConverters.scala:102)
>   at 
> org.apache.spark.sql.catalyst.CatalystTypeConverters$StructConverter.toCatalystImpl(CatalystTypeConverters.scala:260)
>   at 
> org.apache.spark.sql.catalyst.CatalystTypeConverters$StructConverter.toCatalystImpl(CatalystTypeConverters.scala:250)
>   at 
> org.apache.spark.sql.catalyst.CatalystTypeConverters$CatalystTypeConverter.toCatalyst(CatalystTypeConverters.scala:102)
>   at 
> org.apache.spark.sql.catalyst.CatalystTypeConverters$$anonfun$createToCatalystConverter$2.apply(CatalystTypeConverters.scala:401)
>   at 
> org.apache.spark.sql.SQLContext$$anonfun$6.apply(SQLContext.scala:492)
>   at 
> org.apache.spark.sql.SQLContext$$anonfun$6.apply(SQLContext.scala:492)
>   at scala.collection.Iterator$$anon$11.next(Iterator.scala:328)
>   at scala.collection.Iterator$$anon$11.next(Iterator.scala:328)
>   at 
> org.apache.spark.sql.execution.aggregate.TungstenAggregationIterator.processInputs(TungstenAggregationIterator.scala:505)
>   at 
> org.apache.spark.sql.execution.aggregate.TungstenAggregationIterator.(TungstenAggregationIterator.scala:686)
>   at 
> org.apache.spark.sql.execution.aggregate.TungstenAggregate$$anonfun$doExecute$1$$anonfun$2.apply(TungstenAggregate.scala:95)
>   at 
> org.apache.spark.sql.execution.aggregate.TungstenAggregate$$anonfun$doExecute$1$$anonfun$2.apply(TungstenAggregate.scala:86)
>   at 
> org.apache.spark.rdd.RDD$$anonfun$mapPartitions$1$$anonfun$apply$20.apply(RDD.scala:710)
>   at 
> org.apache.spark.rdd.RDD$$anonfun$mapPartitions$1$$anonfun$apply$20.apply(RDD.scala:710)
>   at 
> org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:38)
>   at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:306)
>   at org.apache.spark.rdd.RDD.iterator(RDD.scala:270)
>   at 
> org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:38)
>   at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:306)
>   at org.apache.spark.rdd.RDD.iterator(RDD.scala:270)
>   at 
> org.apache.spark.scheduler.ShuffleMapTask.runTask(ShuffleMapTask.scala:73)
>   at 
> org.apache.spark.scheduler.ShuffleMapTask.runTask(ShuffleMapTask.scala:41)
>   at org.apache.spark.scheduler.Task.run(Task.scala:89)
>   at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:213)
>   at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>   at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>   at java.lang.Thread.run(Thread.java:745)
> {noformat}
> Most likely this is caused by the fact that {{IgniteRDD.dataType()}} method 
> doesn't honor {{BigDecimal}} and returns {{StructType}} by default. We should 
> fix this and check other possible types as well.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-3310) Need to document Visor scripting capabilities

2016-06-14 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-3310:
---

 Summary: Need to document Visor scripting capabilities
 Key: IGNITE-3310
 URL: https://issues.apache.org/jira/browse/IGNITE-3310
 Project: Ignite
  Issue Type: Improvement
  Components: documentation
Affects Versions: 1.6
Reporter: Valentin Kulichenko
Assignee: Alexey Kuznetsov
 Fix For: 1.7


The functionality was added in scope of IGNITE-185, but it's not documented yet.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-3216) Need to deduplicate addresses registered in the IP finder

2016-06-14 Thread Valentin Kulichenko (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-3216?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15329646#comment-15329646
 ] 

Valentin Kulichenko commented on IGNITE-3216:
-

{{viewSetReadOnly}} is not used anymore, so I would prefer to remove it 
completely. Otherwise, looks good.

> Need to deduplicate addresses registered in the IP finder
> -
>
> Key: IGNITE-3216
> URL: https://issues.apache.org/jira/browse/IGNITE-3216
> Project: Ignite
>  Issue Type: Bug
>  Components: general
>Affects Versions: 1.6
>Reporter: Valentin Kulichenko
>Assignee: Anton Vinogradov
> Fix For: 1.7
>
>
> {{IgniteUtils.toSocketAddresses(...)}} method can produce the collection with 
> duplicated addresses in some cases (e.g., if one of hostnames is provided as 
> an IP). We should deduplicate the list before returning it (most likely we 
> should simply use {{Set}} instead).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-3152) Client node's addresses are registered in IP finder

2016-06-14 Thread Valentin Kulichenko (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-3152?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15329667#comment-15329667
 ] 

Valentin Kulichenko commented on IGNITE-3152:
-

Yes, you're right, but this means that one the places in the code is incorrect 
:) Why we have the {{TcpDiscoveryIpFinderAdapter.discoveryClientMode()}} method 
then?

I'm actually not sure that it's correct to return {{false}} from 
{{ClusterNode.isClient()}} method in case it's actually a client, but with 
forced server mode on discovery level.

Should this be discussed on dev@?

> Client node's addresses are registered in IP finder
> ---
>
> Key: IGNITE-3152
> URL: https://issues.apache.org/jira/browse/IGNITE-3152
> Project: Ignite
>  Issue Type: Bug
>  Components: general
>Affects Versions: 1.5.0.final
>Reporter: Valentin Kulichenko
>Assignee: Anton Vinogradov
>  Labels: important
> Fix For: 1.7
>
> Attachments: Test.java
>
>
> Currently client node register its addresses in IP finder and never 
> deregisters them. Also looks like coordinator address is also not removed.
> The simple test that shows this behavior is attached.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (IGNITE-2344) WebSessionFilter doesn't support session ID renewal

2016-06-15 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2344?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko closed IGNITE-2344.
---

> WebSessionFilter doesn't support session ID renewal
> ---
>
> Key: IGNITE-2344
> URL: https://issues.apache.org/jira/browse/IGNITE-2344
> Project: Ignite
>  Issue Type: Bug
>  Components: general
>Affects Versions: ignite-1.4
>Reporter: Denis Magda
>Assignee: Saikat Maitra
>
> It's quite a common scenario to update a session ID after a user successfully 
> logged in preserving the session content for further usage.
> Ignite's {{WebSessionFilter}} doesn't support such a use case creating a 
> session from scratch.
> To support this behavior we can store a special Cookie that will hold latest 
> session ID. When a session is passed to {{WebSessionFilter}} and the filter 
> detects that this is a fresh session it will check the Cookie in advance. If 
> the Cookie exists and holds an old session ID then the filter will be able to 
> get a session content from the cache using the old ID and put it back using 
> the new ID.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-3216) Need to deduplicate addresses registered in the IP finder

2016-06-08 Thread Valentin Kulichenko (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-3216?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15320611#comment-15320611
 ] 

Valentin Kulichenko commented on IGNITE-3216:
-

Anton,

Why do we need the {{F.viewSetReadOnly}} call there? Can we avoid it? I would 
prefer to remove usages of {{F.}} where possible.

> Need to deduplicate addresses registered in the IP finder
> -
>
> Key: IGNITE-3216
> URL: https://issues.apache.org/jira/browse/IGNITE-3216
> Project: Ignite
>  Issue Type: Bug
>  Components: general
>Affects Versions: 1.6
>Reporter: Valentin Kulichenko
>Assignee: Anton Vinogradov
> Fix For: 1.7
>
>
> {{IgniteUtils.toSocketAddresses(...)}} method can produce the collection with 
> duplicated addresses in some cases (e.g., if one of hostnames is provided as 
> an IP). We should deduplicate the list before returning it (most likely we 
> should simply use {{Set}} instead).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-3152) Client node's addresses are registered in IP finder

2016-06-08 Thread Valentin Kulichenko (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-3152?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15320625#comment-15320625
 ] 

Valentin Kulichenko commented on IGNITE-3152:
-

Anton,

Client node can work in forced server mode. I think we should register 
addresses in this case.

See {{TcpDiscoveryIpFinderAdapter.discoveryClientMode()}} and its usages on how 
this can be properly checked.

> Client node's addresses are registered in IP finder
> ---
>
> Key: IGNITE-3152
> URL: https://issues.apache.org/jira/browse/IGNITE-3152
> Project: Ignite
>  Issue Type: Bug
>  Components: general
>Affects Versions: 1.5.0.final
>Reporter: Valentin Kulichenko
>Assignee: Anton Vinogradov
>  Labels: important
> Fix For: 1.7
>
> Attachments: Test.java
>
>
> Currently client node register its addresses in IP finder and never 
> deregisters them. Also looks like coordinator address is also not removed.
> The simple test that shows this behavior is attached.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-2680) Terminating running SQL queries

2016-05-26 Thread Valentin Kulichenko (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-2680?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15302320#comment-15302320
 ] 

Valentin Kulichenko commented on IGNITE-2680:
-

I think we also add an ability to cancel the query automatically after a 
configurable timeout.

> Terminating running SQL queries
> ---
>
> Key: IGNITE-2680
> URL: https://issues.apache.org/jira/browse/IGNITE-2680
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 1.5.0.final
>Reporter: Denis Magda
>  Labels: important
>
> If to start a long running SQL query over a huge cache will millions of 
> entries there should be a way terminate it. Even if {{QueryCursor}} is closed 
> the query won't be cancelled consuming available resources.
> There should be a way to close a query having using an object that is related 
> to it. Seems that ideally we can use {{QueryCursor.close()}} method for that;



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-3209) Need to wait for affinity assignment change during affinityCall failover

2016-05-27 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-3209:
---

 Summary: Need to wait for affinity assignment change during 
affinityCall failover
 Key: IGNITE-3209
 URL: https://issues.apache.org/jira/browse/IGNITE-3209
 Project: Ignite
  Issue Type: Bug
  Components: compute
Affects Versions: 1.6
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
 Fix For: 1.7


{{AlwaysFailoverSpi.failover()}} method makes several attempts (5 by default) 
to get new primary node for the affinity key. Affinity assignment takes time, 
so there is a big chance to make all these attempts before new node is returned.

We need to add discovery event that initiated failover to {{FailoverContext}} 
and wait for affinity is assigned.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (IGNITE-3215) IgniteRDD should be able to work with BinaryObjects

2016-06-02 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-3215?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko reassigned IGNITE-3215:
---

Assignee: Valentin Kulichenko

> IgniteRDD should be able to work with BinaryObjects
> ---
>
> Key: IGNITE-3215
> URL: https://issues.apache.org/jira/browse/IGNITE-3215
> Project: Ignite
>  Issue Type: Improvement
>  Components: Ignite RDD
>Affects Versions: 1.6
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
> Fix For: 1.7
>
>
> Need to add {{withKeepBinary}} flag to {{IgniteRDD}}, similar to 
> {{IgniteCache}}. If set, functions used in methods like {{foreachPartition}} 
> will work with {{BinaryObject}} instances instead of deserialized objects. 
> Currently if such methods are used, classes are required to be deployed on 
> executors' classpath.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-3204) java.lang.NoClassDefFoundError: org/h2/constant/SysProperties

2016-05-26 Thread Valentin Kulichenko (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-3204?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15301919#comment-15301919
 ] 

Valentin Kulichenko commented on IGNITE-3204:
-

{{ignite-indexing}} module depends on H2 1.3.175 (see [1]), but you have 
1.4.191. Most likely you have it defined separately in your POM (or fetched as 
a transitive dependency by something else). Can you check this?

https://github.com/apache/ignite/blob/1.6.0/parent/pom.xml#L72

> java.lang.NoClassDefFoundError: org/h2/constant/SysProperties
> -
>
> Key: IGNITE-3204
> URL: https://issues.apache.org/jira/browse/IGNITE-3204
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Affects Versions: 1.6
>Reporter: kcheng.mvp
>
> Hi All,
> I ran into above issue. here is the error stack
> Caused by: java.lang.NoClassDefFoundError: org/h2/constant/SysProperties
>   at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.start(IgniteH2Indexing.java:1487)
>  ~[ignite-indexing-1.6.0.jar:1.6.0]
>   at 
> org.apache.ignite.internal.processors.query.GridQueryProcessor.start(GridQueryProcessor.java:171)
>  ~[ignite-core-1.6.0.jar:1.6.0]
>   at 
> org.apache.ignite.internal.IgniteKernal.startProcessor(IgniteKernal.java:1549)
>  ~[ignite-core-1.6.0.jar:1.6.0]
>   at org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:869) 
> ~[ignite-core-1.6.0.jar:1.6.0]
>   at 
> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:1736)
>  ~[ignite-core-1.6.0.jar:1.6.0]
>   at 
> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1589)
>  ~[ignite-core-1.6.0.jar:1.6.0]
>   at org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:1042) 
> ~[ignite-core-1.6.0.jar:1.6.0]
>   at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:549) 
> ~[ignite-core-1.6.0.jar:1.6.0]
>   at org.apache.ignite.IgniteSpring.start(IgniteSpring.java:66) 
> ~[ignite-spring-1.6.0.jar:1.6.0]
>   at 
> org.apache.ignite.IgniteSpringBean.afterPropertiesSet(IgniteSpringBean.java:128)
>  ~[ignite-spring-1.6.0.jar:1.6.0]
>   at 
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1637)
>  ~[spring-beans-4.2.6.RELEASE.jar:4.2.6.RELEASE]
>   at 
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1574)
>  ~[spring-beans-4.2.6.RELEASE.jar:4.2.6.RELEASE]
>   ... 21 common frames omitted
> Caused by: java.lang.ClassNotFoundException: org.h2.constant.SysProperties
>   at java.net.URLClassLoader.findClass(URLClassLoader.java:381) 
> ~[na:1.8.0_77]
>   at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[na:1.8.0_77]
>   at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) 
> ~[na:1.8.0_77]
>   at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[na:1.8.0_77]
> I am using v1.6.0
> 
> org.apache.ignite
> ignite-core
> ${ignite.version}
> 
> 
> org.apache.ignite
> ignite-spring
> ${ignite.version}
> 
> 
> org.apache.ignite
> ignite-indexing
> ${ignite.version}
> 
> below is the dependency tree
> [INFO] +- org.apache.ignite:ignite-core:jar:1.6.0:compile
> [INFO] |  +- javax.cache:cache-api:jar:1.0.0:compile
> [INFO] |  \- org.gridgain:ignite-shmem:jar:1.0.0:compile
> [INFO] +- org.apache.ignite:ignite-spring:jar:1.6.0:compile
> [INFO] |  +- org.springframework:spring-core:jar:4.2.6.RELEASE:compile
> [INFO] |  +- org.springframework:spring-aop:jar:4.2.6.RELEASE:compile
> [INFO] |  |  \- aopalliance:aopalliance:jar:1.0:compile
> [INFO] |  +- org.springframework:spring-beans:jar:4.2.6.RELEASE:compile
> [INFO] |  +- org.springframework:spring-context:jar:4.2.6.RELEASE:compile
> [INFO] |  +- org.springframework:spring-expression:jar:4.2.6.RELEASE:compile
> [INFO] |  +- org.springframework:spring-tx:jar:4.2.6.RELEASE:compile
> [INFO] |  +- org.springframework:spring-jdbc:jar:4.2.6.RELEASE:compile
> [INFO] |  \- commons-logging:commons-logging:jar:1.1.1:compile
> [INFO] \- org.apache.ignite:ignite-indexing:jar:1.6.0:compile
> [INFO]+- commons-codec:commons-codec:jar:1.6:compile
> [INFO]+- org.apache.lucene:lucene-core:jar:3.5.0:compile
> [INFO]\- com.h2database:h2:jar:1.4.191:compile
> I check there is no org/h2/constant/SysProperties, on the contrary 
> there is org.h2.engine.SysProperties



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-3230) External addresses are not registered in IP finder

2016-06-01 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-3230:
---

 Summary: External addresses are not registered in IP finder
 Key: IGNITE-3230
 URL: https://issues.apache.org/jira/browse/IGNITE-3230
 Project: Ignite
  Issue Type: Bug
  Components: general
Affects Versions: 1.6
Reporter: Valentin Kulichenko
 Fix For: 1.7


If a user configures {{AddressResolver}}, addresses returned by it are not 
registered in shared IP finders. So the only way to configure discovery in case 
is using static IP finder.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-3175) BigDecimal fields are not supported if query is executed from IgniteRDD

2016-06-01 Thread Valentin Kulichenko (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-3175?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15310895#comment-15310895
 ] 

Valentin Kulichenko commented on IGNITE-3175:
-

I'm reopening the ticket, because looks like {{BigDecimal}} is not the only 
unsupported type. The same exception fails at least for {{java.sql.Date}}.

Taras, as you were fixing this, can you please take a look and check what other 
types can be problematic?

> BigDecimal fields are not supported if query is executed from IgniteRDD
> ---
>
> Key: IGNITE-3175
> URL: https://issues.apache.org/jira/browse/IGNITE-3175
> Project: Ignite
>  Issue Type: Bug
>  Components: Ignite RDD
>Affects Versions: 1.5.0.final
>Reporter: Valentin Kulichenko
>Assignee: Taras Ledkov
> Fix For: 1.7
>
>
> If one of the fields participating in the query is {{BigDecimal}}, the query 
> will fail when executed from {{IgniteRDD}} with the following error:
> {noformat}
> scala.MatchError: 1124757 (of class java.math.BigDecimal)
>   at 
> org.apache.spark.sql.catalyst.CatalystTypeConverters$StructConverter.toCatalystImpl(CatalystTypeConverters.scala:255)
>   at 
> org.apache.spark.sql.catalyst.CatalystTypeConverters$StructConverter.toCatalystImpl(CatalystTypeConverters.scala:250)
>   at 
> org.apache.spark.sql.catalyst.CatalystTypeConverters$CatalystTypeConverter.toCatalyst(CatalystTypeConverters.scala:102)
>   at 
> org.apache.spark.sql.catalyst.CatalystTypeConverters$StructConverter.toCatalystImpl(CatalystTypeConverters.scala:260)
>   at 
> org.apache.spark.sql.catalyst.CatalystTypeConverters$StructConverter.toCatalystImpl(CatalystTypeConverters.scala:250)
>   at 
> org.apache.spark.sql.catalyst.CatalystTypeConverters$CatalystTypeConverter.toCatalyst(CatalystTypeConverters.scala:102)
>   at 
> org.apache.spark.sql.catalyst.CatalystTypeConverters$$anonfun$createToCatalystConverter$2.apply(CatalystTypeConverters.scala:401)
>   at 
> org.apache.spark.sql.SQLContext$$anonfun$6.apply(SQLContext.scala:492)
>   at 
> org.apache.spark.sql.SQLContext$$anonfun$6.apply(SQLContext.scala:492)
>   at scala.collection.Iterator$$anon$11.next(Iterator.scala:328)
>   at scala.collection.Iterator$$anon$11.next(Iterator.scala:328)
>   at 
> org.apache.spark.sql.execution.aggregate.TungstenAggregationIterator.processInputs(TungstenAggregationIterator.scala:505)
>   at 
> org.apache.spark.sql.execution.aggregate.TungstenAggregationIterator.(TungstenAggregationIterator.scala:686)
>   at 
> org.apache.spark.sql.execution.aggregate.TungstenAggregate$$anonfun$doExecute$1$$anonfun$2.apply(TungstenAggregate.scala:95)
>   at 
> org.apache.spark.sql.execution.aggregate.TungstenAggregate$$anonfun$doExecute$1$$anonfun$2.apply(TungstenAggregate.scala:86)
>   at 
> org.apache.spark.rdd.RDD$$anonfun$mapPartitions$1$$anonfun$apply$20.apply(RDD.scala:710)
>   at 
> org.apache.spark.rdd.RDD$$anonfun$mapPartitions$1$$anonfun$apply$20.apply(RDD.scala:710)
>   at 
> org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:38)
>   at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:306)
>   at org.apache.spark.rdd.RDD.iterator(RDD.scala:270)
>   at 
> org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:38)
>   at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:306)
>   at org.apache.spark.rdd.RDD.iterator(RDD.scala:270)
>   at 
> org.apache.spark.scheduler.ShuffleMapTask.runTask(ShuffleMapTask.scala:73)
>   at 
> org.apache.spark.scheduler.ShuffleMapTask.runTask(ShuffleMapTask.scala:41)
>   at org.apache.spark.scheduler.Task.run(Task.scala:89)
>   at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:213)
>   at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>   at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>   at java.lang.Thread.run(Thread.java:745)
> {noformat}
> Most likely this is caused by the fact that {{IgniteRDD.dataType()}} method 
> doesn't honor {{BigDecimal}} and returns {{StructType}} by default. We should 
> fix this and check other possible types as well.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-3153) TcpDiscoveryZookeeperIpFinder doesn't properly handle client reconnections

2016-05-30 Thread Valentin Kulichenko (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-3153?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15306883#comment-15306883
 ] 

Valentin Kulichenko commented on IGNITE-3153:
-

Thanks, Roman! I added the trace.

> TcpDiscoveryZookeeperIpFinder doesn't properly handle client reconnections
> --
>
> Key: IGNITE-3153
> URL: https://issues.apache.org/jira/browse/IGNITE-3153
> Project: Ignite
>  Issue Type: Bug
>  Components: general
>Affects Versions: 1.5.0.final
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
> Fix For: 1.7
>
>
> The exception below is possible when client reconnects and ZooKeeper IP 
> finder is used. Most likely this is caused by the fact that {{initGuard}} is 
> flipped back to {{false}} when the context is destroyed and new curator 
> instance is not created during the reconnect.
> This should be fixed and test coverage for this scenario should be improved.
> {noformat}
> 2016-05-16 12:00:59,096 5786  ERROR 
> org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi Runtime error caught 
> during grid runnable execution: IgniteSpiThread 
> [name=tcp-client-disco-reconnector-#5%Default%] 
> java.lang.IllegalStateException: Cannot be started more than once
> at 
> org.apache.curator.framework.imps.CuratorFrameworkImpl.start(CuratorFrameworkImpl.java:237)
> ...
> at 
> org.apache.ignite.spi.discovery.tcp.ipfinder.zk.TcpDiscoveryZookeeperIpFinder.init(TcpDiscoveryZookeeperIpFinder.java:144)
> at 
> org.apache.ignite.spi.discovery.tcp.ipfinder.zk.TcpDiscoveryZookeeperIpFinder.getRegisteredAddresses(TcpDiscoveryZookeeperIpFinder.java:169)
> at 
> org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.registeredAddresses(TcpDiscoverySpi.java:1603)
> at 
> org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.resolvedAddresses(TcpDiscoverySpi.java:1552)
> at 
> org.apache.ignite.spi.discovery.tcp.ClientImpl.joinTopology(ClientImpl.java:475)
> at 
> org.apache.ignite.spi.discovery.tcp.ClientImpl.access$900(ClientImpl.java:118)
> at 
> org.apache.ignite.spi.discovery.tcp.ClientImpl$Reconnector.body(ClientImpl.java:1175)
> at org.apache.ignite.spi.IgniteSpiThread.run(IgniteSpiThread.java:62)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (IGNITE-3153) TcpDiscoveryZookeeperIpFinder doesn't properly handle client reconnections

2016-05-30 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-3153?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko reassigned IGNITE-3153:
---

Assignee: Valentin Kulichenko

> TcpDiscoveryZookeeperIpFinder doesn't properly handle client reconnections
> --
>
> Key: IGNITE-3153
> URL: https://issues.apache.org/jira/browse/IGNITE-3153
> Project: Ignite
>  Issue Type: Bug
>  Components: general
>Affects Versions: 1.5.0.final
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
> Fix For: 1.7
>
>
> The exception below is possible when client reconnects and ZooKeeper IP 
> finder is used. Most likely this is caused by the fact that {{initGuard}} is 
> flipped back to {{false}} when the context is destroyed and new curator 
> instance is not created during the reconnect.
> This should be fixed and test coverage for this scenario should be improved.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-3216) Need to deduplicate addresses registered in the IP finder

2016-05-30 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-3216:
---

 Summary: Need to deduplicate addresses registered in the IP finder
 Key: IGNITE-3216
 URL: https://issues.apache.org/jira/browse/IGNITE-3216
 Project: Ignite
  Issue Type: Bug
  Components: general
Affects Versions: 1.6
Reporter: Valentin Kulichenko
 Fix For: 1.7


{{IgniteUtils.toSocketAddresses(...)}} method can produce the collection with 
duplicated addresses in some cases (e.g., if one of hostnames is provided as an 
IP). We should deduplicate the list before returning it (most likely we should 
simply use {{Set}} instead).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-3215) IgniteRDD should be able to work with BinaryObjects

2016-05-30 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-3215:
---

 Summary: IgniteRDD should be able to work with BinaryObjects
 Key: IGNITE-3215
 URL: https://issues.apache.org/jira/browse/IGNITE-3215
 Project: Ignite
  Issue Type: Improvement
  Components: Ignite RDD
Affects Versions: 1.6
Reporter: Valentin Kulichenko
 Fix For: 1.7


Need to add {{withKeepBinary}} flag to {{IgniteRDD}}, similar to 
{{IgniteCache}}. If set, functions used in methods like {{foreachPartition}} 
will work with {{BinaryObject}} instances instead of deserialized objects. 
Currently if such methods are used, classes are required to be deployed on 
executors' classpath.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-3153) TcpDiscoveryZookeeperIpFinder doesn't properly handle client reconnections

2016-05-30 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-3153?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-3153:

Description: 
The exception below is possible when client reconnects and ZooKeeper IP finder 
is used. Most likely this is caused by the fact that {{initGuard}} is flipped 
back to {{false}} when the context is destroyed and new curator instance is not 
created during the reconnect.

This should be fixed and test coverage for this scenario should be improved.

{noformat}
2016-05-16 12:00:59,096 5786  ERROR 
org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi Runtime error caught during 
grid runnable execution: IgniteSpiThread 
[name=tcp-client-disco-reconnector-#5%Default%] 
java.lang.IllegalStateException: Cannot be started more than once
at 
org.apache.curator.framework.imps.CuratorFrameworkImpl.start(CuratorFrameworkImpl.java:237)
...
at 
org.apache.ignite.spi.discovery.tcp.ipfinder.zk.TcpDiscoveryZookeeperIpFinder.init(TcpDiscoveryZookeeperIpFinder.java:144)
at 
org.apache.ignite.spi.discovery.tcp.ipfinder.zk.TcpDiscoveryZookeeperIpFinder.getRegisteredAddresses(TcpDiscoveryZookeeperIpFinder.java:169)
at 
org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.registeredAddresses(TcpDiscoverySpi.java:1603)
at 
org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.resolvedAddresses(TcpDiscoverySpi.java:1552)
at 
org.apache.ignite.spi.discovery.tcp.ClientImpl.joinTopology(ClientImpl.java:475)
at 
org.apache.ignite.spi.discovery.tcp.ClientImpl.access$900(ClientImpl.java:118)
at 
org.apache.ignite.spi.discovery.tcp.ClientImpl$Reconnector.body(ClientImpl.java:1175)
at org.apache.ignite.spi.IgniteSpiThread.run(IgniteSpiThread.java:62)
{noformat}

  was:
The exception below is possible when client reconnects and ZooKeeper IP finder 
is used. Most likely this is caused by the fact that {{initGuard}} is flipped 
back to {{false}} when the context is destroyed and new curator instance is not 
created during the reconnect.

This should be fixed and test coverage for this scenario should be improved.


> TcpDiscoveryZookeeperIpFinder doesn't properly handle client reconnections
> --
>
> Key: IGNITE-3153
> URL: https://issues.apache.org/jira/browse/IGNITE-3153
> Project: Ignite
>  Issue Type: Bug
>  Components: general
>Affects Versions: 1.5.0.final
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
> Fix For: 1.7
>
>
> The exception below is possible when client reconnects and ZooKeeper IP 
> finder is used. Most likely this is caused by the fact that {{initGuard}} is 
> flipped back to {{false}} when the context is destroyed and new curator 
> instance is not created during the reconnect.
> This should be fixed and test coverage for this scenario should be improved.
> {noformat}
> 2016-05-16 12:00:59,096 5786  ERROR 
> org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi Runtime error caught 
> during grid runnable execution: IgniteSpiThread 
> [name=tcp-client-disco-reconnector-#5%Default%] 
> java.lang.IllegalStateException: Cannot be started more than once
> at 
> org.apache.curator.framework.imps.CuratorFrameworkImpl.start(CuratorFrameworkImpl.java:237)
> ...
> at 
> org.apache.ignite.spi.discovery.tcp.ipfinder.zk.TcpDiscoveryZookeeperIpFinder.init(TcpDiscoveryZookeeperIpFinder.java:144)
> at 
> org.apache.ignite.spi.discovery.tcp.ipfinder.zk.TcpDiscoveryZookeeperIpFinder.getRegisteredAddresses(TcpDiscoveryZookeeperIpFinder.java:169)
> at 
> org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.registeredAddresses(TcpDiscoverySpi.java:1603)
> at 
> org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.resolvedAddresses(TcpDiscoverySpi.java:1552)
> at 
> org.apache.ignite.spi.discovery.tcp.ClientImpl.joinTopology(ClientImpl.java:475)
> at 
> org.apache.ignite.spi.discovery.tcp.ClientImpl.access$900(ClientImpl.java:118)
> at 
> org.apache.ignite.spi.discovery.tcp.ClientImpl$Reconnector.body(ClientImpl.java:1175)
> at org.apache.ignite.spi.IgniteSpiThread.run(IgniteSpiThread.java:62)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-2394) Cache loading from storage is called on client nodes

2016-01-15 Thread Valentin Kulichenko (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-2394?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15102489#comment-15102489
 ] 

Valentin Kulichenko commented on IGNITE-2394:
-

Described solution will break data loading for local cache created on client 
(test attached). I think we should treat local cache as a special case and just 
invoke the {{CacheStore}} only locally, regardless of whether it's a server or 
client.

> Cache loading from storage is called on client nodes
> 
>
> Key: IGNITE-2394
> URL: https://issues.apache.org/jira/browse/IGNITE-2394
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 1.5
>Reporter: Denis Magda
>Priority: Critical
>  Labels: newbie
> Fix For: 1.6
>
> Attachments: LocalLoadTest.java
>
>
> If to call cache.loadCache(...) then the loading from a storage will happen 
> on all the nodes including client nodes.
> However, client nodes must be filtered out.
> If to be more precise at least this place of the code has to be modified
> {noformat}
> IgniteInternalFuture globalLoadCacheAsync(@Nullable 
> IgniteBiPredicate p, @Nullable Object... args)
> throws IgniteCheckedException {
> ClusterGroup nodes = 
> ctx.kernalContext().grid().cluster().forCacheNodes(ctx.name());
> {noformat}
> where forDataNodes() has to be used instead of forCacheNodes().
> Also additional tests have to be added.
> Discussion on the user list:
> http://apache-ignite-users.70518.x6.nabble.com/Loadcache-behavior-tp2571.html



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2394) Cache loading from storage is called on client nodes

2016-01-15 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2394?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-2394:

Attachment: LocalLoadTest.java

> Cache loading from storage is called on client nodes
> 
>
> Key: IGNITE-2394
> URL: https://issues.apache.org/jira/browse/IGNITE-2394
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 1.5
>Reporter: Denis Magda
>Priority: Critical
>  Labels: newbie
> Fix For: 1.6
>
> Attachments: LocalLoadTest.java
>
>
> If to call cache.loadCache(...) then the loading from a storage will happen 
> on all the nodes including client nodes.
> However, client nodes must be filtered out.
> If to be more precise at least this place of the code has to be modified
> {noformat}
> IgniteInternalFuture globalLoadCacheAsync(@Nullable 
> IgniteBiPredicate p, @Nullable Object... args)
> throws IgniteCheckedException {
> ClusterGroup nodes = 
> ctx.kernalContext().grid().cluster().forCacheNodes(ctx.name());
> {noformat}
> where forDataNodes() has to be used instead of forCacheNodes().
> Also additional tests have to be added.
> Discussion on the user list:
> http://apache-ignite-users.70518.x6.nabble.com/Loadcache-behavior-tp2571.html



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-2375) Expiration is not set when value is loaded from store

2016-01-13 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2375:
---

 Summary: Expiration is not set when value is loaded from store
 Key: IGNITE-2375
 URL: https://issues.apache.org/jira/browse/IGNITE-2375
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
 Fix For: 1.6


Discussed on the user@ forum: 
http://apache-ignite-users.70518.x6.nabble.com/Cache-read-through-with-expiry-policy-td2521.html

Test reproducing the issue is attached.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-2374) Expiration is not set when value is loaded from store

2016-01-13 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2374:
---

 Summary: Expiration is not set when value is loaded from store
 Key: IGNITE-2374
 URL: https://issues.apache.org/jira/browse/IGNITE-2374
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
 Fix For: 1.6


Discussed on the user@ forum: 
http://apache-ignite-users.70518.x6.nabble.com/Cache-read-through-with-expiry-policy-td2521.html

Test reproducing the issue is attached



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2375) Expiration is not set when value is loaded from store

2016-01-13 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2375?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-2375:

Attachment: ExpireTest.java

> Expiration is not set when value is loaded from store
> -
>
> Key: IGNITE-2375
> URL: https://issues.apache.org/jira/browse/IGNITE-2375
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Reporter: Valentin Kulichenko
> Fix For: 1.6
>
> Attachments: ExpireTest.java
>
>
> Discussed on the user@ forum: 
> http://apache-ignite-users.70518.x6.nabble.com/Cache-read-through-with-expiry-policy-td2521.html
> Test reproducing the issue is attached.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2384) Notification missed in continuous query

2016-01-14 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2384?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-2384:

Attachment: ListenerTest.java

> Notification missed in continuous query
> ---
>
> Key: IGNITE-2384
> URL: https://issues.apache.org/jira/browse/IGNITE-2384
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Reporter: Valentin Kulichenko
>Priority: Critical
> Fix For: 1.6
>
> Attachments: ListenerTest.java
>
>
> Test reproducing the issue is attached, fails on assertion on line 76.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-2384) Notification missed in continuous query

2016-01-14 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2384:
---

 Summary: Notification missed in continuous query
 Key: IGNITE-2384
 URL: https://issues.apache.org/jira/browse/IGNITE-2384
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
Priority: Critical
 Fix For: 1.6


Test reproducing the issue is attached, fails on assertion on line 76.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-2386) affinityCall() execution hangs

2016-01-14 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2386:
---

 Summary: affinityCall() execution hangs
 Key: IGNITE-2386
 URL: https://issues.apache.org/jira/browse/IGNITE-2386
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
Priority: Critical
 Fix For: 1.6


Test reproducing the issue is attached. affinityCall() invocation hangs with 
the following trace:

{code}
"main" prio=5 tid=0x7f8b1b001800 nid=0x1703 waiting on condition 
[0x70218000]
   java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for  <0x0007ab170eb8> (a 
org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache$AffinityReadyFuture)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
at 
java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834)
at 
java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:994)
at 
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1303)
at 
org.apache.ignite.internal.util.future.GridFutureAdapter.get0(GridFutureAdapter.java:157)
at 
org.apache.ignite.internal.util.future.GridFutureAdapter.get(GridFutureAdapter.java:115)
at 
org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache.awaitTopologyVersion(GridAffinityAssignmentCache.java:477)
at 
org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache.cachedAffinity(GridAffinityAssignmentCache.java:435)
at 
org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache.assignments(GridAffinityAssignmentCache.java:306)
at 
org.apache.ignite.internal.processors.cache.GridCacheAffinityManager.assignments(GridCacheAffinityManager.java:159)
at 
org.apache.ignite.internal.processors.affinity.GridAffinityProcessor.affinityCache(GridAffinityProcessor.java:333)
at 
org.apache.ignite.internal.processors.affinity.GridAffinityProcessor.affinityKey(GridAffinityProcessor.java:238)
at 
org.apache.ignite.internal.processors.closure.GridClosureProcessor.affinityCall(GridClosureProcessor.java:442)
at 
org.apache.ignite.internal.IgniteComputeImpl.affinityCall(IgniteComputeImpl.java:130)
at AffinityTest.main(AffinityTest.java:42)
{code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2386) affinityCall() execution hangs

2016-01-14 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2386?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-2386:

Description: 
Test reproducing the issue is attached. affinityCall() invocation hangs with 
the following trace:

{noformat}
"main" prio=5 tid=0x7f8b1b001800 nid=0x1703 waiting on condition 
[0x70218000]
   java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for  <0x0007ab170eb8> (a 
org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache$AffinityReadyFuture)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
at 
java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834)
at 
java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:994)
at 
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1303)
at 
org.apache.ignite.internal.util.future.GridFutureAdapter.get0(GridFutureAdapter.java:157)
at 
org.apache.ignite.internal.util.future.GridFutureAdapter.get(GridFutureAdapter.java:115)
at 
org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache.awaitTopologyVersion(GridAffinityAssignmentCache.java:477)
at 
org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache.cachedAffinity(GridAffinityAssignmentCache.java:435)
at 
org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache.assignments(GridAffinityAssignmentCache.java:306)
at 
org.apache.ignite.internal.processors.cache.GridCacheAffinityManager.assignments(GridCacheAffinityManager.java:159)
at 
org.apache.ignite.internal.processors.affinity.GridAffinityProcessor.affinityCache(GridAffinityProcessor.java:333)
at 
org.apache.ignite.internal.processors.affinity.GridAffinityProcessor.affinityKey(GridAffinityProcessor.java:238)
at 
org.apache.ignite.internal.processors.closure.GridClosureProcessor.affinityCall(GridClosureProcessor.java:442)
at 
org.apache.ignite.internal.IgniteComputeImpl.affinityCall(IgniteComputeImpl.java:130)
at AffinityTest.main(AffinityTest.java:42)
{noformat}

  was:
Test reproducing the issue is attached. affinityCall() invocation hangs with 
the following trace:

{code}
"main" prio=5 tid=0x7f8b1b001800 nid=0x1703 waiting on condition 
[0x70218000]
   java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for  <0x0007ab170eb8> (a 
org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache$AffinityReadyFuture)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
at 
java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834)
at 
java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:994)
at 
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1303)
at 
org.apache.ignite.internal.util.future.GridFutureAdapter.get0(GridFutureAdapter.java:157)
at 
org.apache.ignite.internal.util.future.GridFutureAdapter.get(GridFutureAdapter.java:115)
at 
org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache.awaitTopologyVersion(GridAffinityAssignmentCache.java:477)
at 
org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache.cachedAffinity(GridAffinityAssignmentCache.java:435)
at 
org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache.assignments(GridAffinityAssignmentCache.java:306)
at 
org.apache.ignite.internal.processors.cache.GridCacheAffinityManager.assignments(GridCacheAffinityManager.java:159)
at 
org.apache.ignite.internal.processors.affinity.GridAffinityProcessor.affinityCache(GridAffinityProcessor.java:333)
at 
org.apache.ignite.internal.processors.affinity.GridAffinityProcessor.affinityKey(GridAffinityProcessor.java:238)
at 
org.apache.ignite.internal.processors.closure.GridClosureProcessor.affinityCall(GridClosureProcessor.java:442)
at 
org.apache.ignite.internal.IgniteComputeImpl.affinityCall(IgniteComputeImpl.java:130)
at AffinityTest.main(AffinityTest.java:42)
{code}


> affinityCall() execution hangs
> --
>
> Key: IGNITE-2386
> URL: https://issues.apache.org/jira/browse/IGNITE-2386
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Reporter: Valentin Kulichenko
>Priority: Critical
> Fix For: 1.6
>
>

[jira] [Updated] (IGNITE-2386) affinityCall() execution hangs

2016-01-14 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2386?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-2386:

Flags: Important

> affinityCall() execution hangs
> --
>
> Key: IGNITE-2386
> URL: https://issues.apache.org/jira/browse/IGNITE-2386
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Reporter: Valentin Kulichenko
>Priority: Critical
> Fix For: 1.6
>
>
> Test reproducing the issue is attached. affinityCall() invocation hangs with 
> the following trace:
> {code}
> "main" prio=5 tid=0x7f8b1b001800 nid=0x1703 waiting on condition 
> [0x70218000]
>java.lang.Thread.State: WAITING (parking)
>   at sun.misc.Unsafe.park(Native Method)
>   - parking to wait for  <0x0007ab170eb8> (a 
> org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache$AffinityReadyFuture)
>   at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
>   at 
> java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834)
>   at 
> java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:994)
>   at 
> java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1303)
>   at 
> org.apache.ignite.internal.util.future.GridFutureAdapter.get0(GridFutureAdapter.java:157)
>   at 
> org.apache.ignite.internal.util.future.GridFutureAdapter.get(GridFutureAdapter.java:115)
>   at 
> org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache.awaitTopologyVersion(GridAffinityAssignmentCache.java:477)
>   at 
> org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache.cachedAffinity(GridAffinityAssignmentCache.java:435)
>   at 
> org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache.assignments(GridAffinityAssignmentCache.java:306)
>   at 
> org.apache.ignite.internal.processors.cache.GridCacheAffinityManager.assignments(GridCacheAffinityManager.java:159)
>   at 
> org.apache.ignite.internal.processors.affinity.GridAffinityProcessor.affinityCache(GridAffinityProcessor.java:333)
>   at 
> org.apache.ignite.internal.processors.affinity.GridAffinityProcessor.affinityKey(GridAffinityProcessor.java:238)
>   at 
> org.apache.ignite.internal.processors.closure.GridClosureProcessor.affinityCall(GridClosureProcessor.java:442)
>   at 
> org.apache.ignite.internal.IgniteComputeImpl.affinityCall(IgniteComputeImpl.java:130)
>   at AffinityTest.main(AffinityTest.java:42)
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2386) affinityCall() execution hangs

2016-01-14 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2386?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-2386:

Attachment: AffinityTest.java

> affinityCall() execution hangs
> --
>
> Key: IGNITE-2386
> URL: https://issues.apache.org/jira/browse/IGNITE-2386
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Reporter: Valentin Kulichenko
>Priority: Critical
> Fix For: 1.6
>
> Attachments: AffinityTest.java
>
>
> Test reproducing the issue is attached. affinityCall() invocation hangs with 
> the following trace:
> {noformat}
> "main" prio=5 tid=0x7f8b1b001800 nid=0x1703 waiting on condition 
> [0x70218000]
>java.lang.Thread.State: WAITING (parking)
>   at sun.misc.Unsafe.park(Native Method)
>   - parking to wait for  <0x0007ab170eb8> (a 
> org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache$AffinityReadyFuture)
>   at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
>   at 
> java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834)
>   at 
> java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:994)
>   at 
> java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1303)
>   at 
> org.apache.ignite.internal.util.future.GridFutureAdapter.get0(GridFutureAdapter.java:157)
>   at 
> org.apache.ignite.internal.util.future.GridFutureAdapter.get(GridFutureAdapter.java:115)
>   at 
> org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache.awaitTopologyVersion(GridAffinityAssignmentCache.java:477)
>   at 
> org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache.cachedAffinity(GridAffinityAssignmentCache.java:435)
>   at 
> org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache.assignments(GridAffinityAssignmentCache.java:306)
>   at 
> org.apache.ignite.internal.processors.cache.GridCacheAffinityManager.assignments(GridCacheAffinityManager.java:159)
>   at 
> org.apache.ignite.internal.processors.affinity.GridAffinityProcessor.affinityCache(GridAffinityProcessor.java:333)
>   at 
> org.apache.ignite.internal.processors.affinity.GridAffinityProcessor.affinityKey(GridAffinityProcessor.java:238)
>   at 
> org.apache.ignite.internal.processors.closure.GridClosureProcessor.affinityCall(GridClosureProcessor.java:442)
>   at 
> org.apache.ignite.internal.IgniteComputeImpl.affinityCall(IgniteComputeImpl.java:130)
>   at AffinityTest.main(AffinityTest.java:42)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-2389) Need to add ability to swap the queue if it's too long

2016-01-14 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2389:
---

 Summary: Need to add ability to swap the queue if it's too long
 Key: IGNITE-2389
 URL: https://issues.apache.org/jira/browse/IGNITE-2389
 Project: Ignite
  Issue Type: Improvement
  Components: data structures
Reporter: Valentin Kulichenko
 Fix For: 1.6


In some cases there can be a requirement to start swapping new queue elements 
to avoid out of memory errors. For example, if the consumer temporarily stopped 
for some reason, but the producer still adds elements.

We can do this based on cache swap space and evictions. I think we should:
# Add max allowed in-memory elements property to {{CollectionConfiguration}}. 
We can also support limit by memory size.
# Implement special eviction policy that will evict new queue elements if 
limits are reached.
# Automatically unswap latest elements when consumer resumes polling (can be 
achieved by a background process).

In case of {{IgniteSet}}, limits should be also honored, but here we don't have 
ordering. So I think we can use our standard LRU, but make sure that only 
elements are swapped. Header and other meta objects should be always in memory.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-2383) Non-string system properties should be ignored in node attributes and update checker

2016-01-14 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2383:
---

 Summary: Non-string system properties should be ignored in node 
attributes and update checker
 Key: IGNITE-2383
 URL: https://issues.apache.org/jira/browse/IGNITE-2383
 Project: Ignite
  Issue Type: Bug
  Components: general
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
Priority: Critical
 Fix For: 1.6


user@ discussion: 
http://apache-ignite-users.70518.x6.nabble.com/Ignite-quot-bugs-quot-td2534.html

Some frameworks can put non-string and/or non-serializable values into system 
properties. We should ignore them in 
{{GridUpdateNotifier.getSystemProperties()}} method and when adding properties 
to node attributes.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (IGNITE-3215) IgniteRDD should be able to work with BinaryObjects

2016-06-17 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-3215?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko closed IGNITE-3215.
---

> IgniteRDD should be able to work with BinaryObjects
> ---
>
> Key: IGNITE-3215
> URL: https://issues.apache.org/jira/browse/IGNITE-3215
> Project: Ignite
>  Issue Type: Improvement
>  Components: Ignite RDD
>Affects Versions: 1.6
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
> Fix For: 1.7
>
>
> Need to add {{withKeepBinary}} flag to {{IgniteRDD}}, similar to 
> {{IgniteCache}}. If set, functions used in methods like {{foreachPartition}} 
> will work with {{BinaryObject}} instances instead of deserialized objects. 
> Currently if such methods are used, classes are required to be deployed on 
> executors' classpath.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-3215) IgniteRDD should be able to work with BinaryObjects

2016-06-17 Thread Valentin Kulichenko (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-3215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15335879#comment-15335879
 ] 

Valentin Kulichenko commented on IGNITE-3215:
-

Merged to master.

> IgniteRDD should be able to work with BinaryObjects
> ---
>
> Key: IGNITE-3215
> URL: https://issues.apache.org/jira/browse/IGNITE-3215
> Project: Ignite
>  Issue Type: Improvement
>  Components: Ignite RDD
>Affects Versions: 1.6
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
> Fix For: 1.7
>
>
> Need to add {{withKeepBinary}} flag to {{IgniteRDD}}, similar to 
> {{IgniteCache}}. If set, functions used in methods like {{foreachPartition}} 
> will work with {{BinaryObject}} instances instead of deserialized objects. 
> Currently if such methods are used, classes are required to be deployed on 
> executors' classpath.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-3334) TcpDiscoveryZookeeperIpFinder uses INFO logging without isInfoEnabled() check

2016-06-17 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-3334:
---

 Summary: TcpDiscoveryZookeeperIpFinder uses INFO logging without 
isInfoEnabled() check
 Key: IGNITE-3334
 URL: https://issues.apache.org/jira/browse/IGNITE-3334
 Project: Ignite
  Issue Type: Bug
  Components: ignite-zookeeper
Affects Versions: 1.6
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
 Fix For: 1.7


This leads to the warnings in case INFO is disabled:
{noformat}
[org.apache.ignite.spi.discovery.tcp.ipfinder.zk.TcpDiscoveryZookeeperIpFinder] 
Logging at INFO level without checking if INFO level is enabled
{noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (IGNITE-3334) TcpDiscoveryZookeeperIpFinder uses INFO logging without isInfoEnabled() check

2016-06-17 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-3334?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko resolved IGNITE-3334.
-
Resolution: Fixed

Fixed in master.

> TcpDiscoveryZookeeperIpFinder uses INFO logging without isInfoEnabled() check
> -
>
> Key: IGNITE-3334
> URL: https://issues.apache.org/jira/browse/IGNITE-3334
> Project: Ignite
>  Issue Type: Bug
>  Components: ignite-zookeeper
>Affects Versions: 1.6
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
> Fix For: 1.7
>
>
> This leads to the warnings in case INFO is disabled:
> {noformat}
> [org.apache.ignite.spi.discovery.tcp.ipfinder.zk.TcpDiscoveryZookeeperIpFinder]
>  Logging at INFO level without checking if INFO level is enabled
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-1144) Need to have a capability to run a closure collocated with a queue/set

2016-02-10 Thread Valentin Kulichenko (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-1144?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15141459#comment-15141459
 ] 

Valentin Kulichenko commented on IGNITE-1144:
-

Yes, my bad. You can disregard the comment about {{CU.outTx}}.

> Need to have a capability to run a closure collocated with a queue/set
> --
>
> Key: IGNITE-1144
> URL: https://issues.apache.org/jira/browse/IGNITE-1144
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache
>Affects Versions: 1.1.4
>Reporter: Valentin Kulichenko
>Assignee: Oddo
>Priority: Critical
>
> Currently there is no way to do this since all collocated queues and sets are 
> stored in special system cache. This makes {{affinityRun()}} and 
> {{affinityCall()}} methods useless because it requires to explicitly provide 
> cache name which user doesn't know in this case.
> I suggest to add {{affinityRun()}} and {{affinityCall()}} methods on 
> {{IgniteQueue}} and {{IgniteSet}}. They will:
> * take only closure as a parameter
> * throw exception for non-collocated mode
> * properly delegate to sibling methods in {{Ignite}} with proper cache name
> Alternatively we can add these methods on {{Ignite}} interface, which is more 
> consistent with the current API. But I'm not sure how to call them.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-1144) Need to have a capability to run a closure collocated with a queue/set

2016-02-04 Thread Valentin Kulichenko (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-1144?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15133115#comment-15133115
 ] 

Valentin Kulichenko commented on IGNITE-1144:
-

Hi Oddo.

I reviewed your changes. Looks like you're making progress, but I have several 
comments:

* Code after your changes can't be compiled against Java7 (looks like you're 
working with Java8). Please make sure it compiles with both 7 and 8.
* Can you explain {{CU.outTx}} calls in {{GridCacheQueueProxy}} and 
{{GridCacheSetProxy}}? You execute closure twice for transactional caches which 
is obviously wrong. Actually, proxy should only block the gateway and delegate, 
all other code should be in corresponding implementation classes. Anyway, most 
likely taht these pieces of code should be removed.
* Since you added async methods annotated with {{@IgniteAsyncSupported}}, you 
should also implement {{IgniteAsyncSupport}} interface. Currently there is no 
way to execute these operations asynchronously.
* You should improve test coverage. Couple of tests you added check almost 
nothing, they don't even have a single assertion. Moreover, they fail. Please 
don't forget to run TC before submitting a patch.

I would also rephrase the error message and mention the data structure name 
there. Smth like this:
{code}
throw new IgniteException("Failed to execute affinityCall() for non-collocated 
set: " + name +
". This operation is supported only for collocated sets.");
{code}

Thanks!

> Need to have a capability to run a closure collocated with a queue/set
> --
>
> Key: IGNITE-1144
> URL: https://issues.apache.org/jira/browse/IGNITE-1144
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache
>Affects Versions: 1.1.4
>Reporter: Valentin Kulichenko
>Assignee: Oddo
>Priority: Critical
>
> Currently there is no way to do this since all collocated queues and sets are 
> stored in special system cache. This makes {{affinityRun()}} and 
> {{affinityCall()}} methods useless because it requires to explicitly provide 
> cache name which user doesn't know in this case.
> I suggest to add {{affinityRun()}} and {{affinityCall()}} methods on 
> {{IgniteQueue}} and {{IgniteSet}}. They will:
> * take only closure as a parameter
> * throw exception for non-collocated mode
> * properly delegate to sibling methods in {{Ignite}} with proper cache name
> Alternatively we can add these methods on {{Ignite}} interface, which is more 
> consistent with the current API. But I'm not sure how to call them.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-2592) Aggregation query with subquery returns incorrect result

2016-02-08 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2592:
---

 Summary: Aggregation query with subquery returns incorrect result
 Key: IGNITE-2592
 URL: https://issues.apache.org/jira/browse/IGNITE-2592
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
Priority: Critical
 Fix For: 1.6


Issue is discussed here: 
http://apache-ignite-users.70518.x6.nabble.com/SQL-query-result-variation-td2889.html

Here is the code that reproduces it: 
https://gist.github.com/anonymous/8e2af218598e46577b2a



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-2594) Cached web session requires setAttribute() to be called on each update

2016-02-08 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2594:
---

 Summary: Cached web session requires setAttribute() to be called 
on each update
 Key: IGNITE-2594
 URL: https://issues.apache.org/jira/browse/IGNITE-2594
 Project: Ignite
  Issue Type: Bug
  Components: general
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
 Fix For: 1.6


Issue is described here: 
http://stackoverflow.com/questions/35268184/updating-apache-ignite-websession-attributes



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (IGNITE-1523) Need to always serialize user objects with configured marshaller

2016-02-04 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-1523?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko resolved IGNITE-1523.
-
Resolution: Fixed

> Need to always serialize user objects with configured marshaller
> 
>
> Key: IGNITE-1523
> URL: https://issues.apache.org/jira/browse/IGNITE-1523
> Project: Ignite
>  Issue Type: Improvement
>  Components: general
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
>Priority: Critical
>  Labels: important, user-request
> Fix For: 1.6
>
>
> Currently some components (at least discovery) use {{JdkMarshaller}} for all 
> objects.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (IGNITE-1523) Need to always serialize user objects with configured marshaller

2016-02-04 Thread Valentin Kulichenko (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-1523?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15133189#comment-15133189
 ] 

Valentin Kulichenko commented on IGNITE-1523:
-

Looks like setting correct class loader is enough, currently there is no need 
to rework the code. Closing the ticket.

> Need to always serialize user objects with configured marshaller
> 
>
> Key: IGNITE-1523
> URL: https://issues.apache.org/jira/browse/IGNITE-1523
> Project: Ignite
>  Issue Type: Improvement
>  Components: general
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
>Priority: Critical
>  Labels: important, user-request
> Fix For: 1.6
>
>
> Currently some components (at least discovery) use {{JdkMarshaller}} for all 
> objects.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (IGNITE-1523) Need to always serialize user objects with configured marshaller

2016-02-04 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-1523?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko closed IGNITE-1523.
---

> Need to always serialize user objects with configured marshaller
> 
>
> Key: IGNITE-1523
> URL: https://issues.apache.org/jira/browse/IGNITE-1523
> Project: Ignite
>  Issue Type: Improvement
>  Components: general
>Reporter: Valentin Kulichenko
>Assignee: Valentin Kulichenko
>Priority: Critical
>  Labels: important, user-request
> Fix For: 1.6
>
>
> Currently some components (at least discovery) use {{JdkMarshaller}} for all 
> objects.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-2559) Transaction hangs if entry processor is not serializable

2016-02-04 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2559:
---

 Summary: Transaction hangs if entry processor is not serializable
 Key: IGNITE-2559
 URL: https://issues.apache.org/jira/browse/IGNITE-2559
 Project: Ignite
  Issue Type: Bug
Reporter: Valentin Kulichenko
Priority: Critical
 Fix For: 1.6


Test attached. If entry processor doesn't implement {{Serializable}}, the 
exception is thrown, but transaction hangs forever.

Hanged thread dump:
{noformat}
"main" #1 prio=5 os_prio=31 tid=0x7faf8380 nid=0x1703 waiting on 
condition [0x70218000]
   java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for  <0x00076b1e75f0> (a 
org.apache.ignite.internal.util.future.GridEmbeddedFuture)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at 
java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836)
at 
java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireShared(AbstractQueuedSynchronizer.java:967)
at 
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireShared(AbstractQueuedSynchronizer.java:1283)
at 
org.apache.ignite.internal.util.future.GridFutureAdapter.get0(GridFutureAdapter.java:157)
at 
org.apache.ignite.internal.util.future.GridFutureAdapter.get(GridFutureAdapter.java:117)
at 
org.apache.ignite.internal.processors.cache.GridCacheAdapter$24.op(GridCacheAdapter.java:2296)
at 
org.apache.ignite.internal.processors.cache.GridCacheAdapter$24.op(GridCacheAdapter.java:2283)
at 
org.apache.ignite.internal.processors.cache.GridCacheAdapter.syncOp(GridCacheAdapter.java:4291)
at 
org.apache.ignite.internal.processors.cache.GridCacheAdapter.invoke0(GridCacheAdapter.java:2283)
at 
org.apache.ignite.internal.processors.cache.GridCacheAdapter.invoke(GridCacheAdapter.java:2261)
at 
org.apache.ignite.internal.processors.cache.IgniteCacheProxy.invoke(IgniteCacheProxy.java:1518)
at ScratchClient.main(ScratchClient.java:29)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
{noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (IGNITE-2558) NearCacheConfiguration should not extend MutableConfiguration

2016-02-04 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2558:
---

 Summary: NearCacheConfiguration should not extend 
MutableConfiguration
 Key: IGNITE-2558
 URL: https://issues.apache.org/jira/browse/IGNITE-2558
 Project: Ignite
  Issue Type: Improvement
  Components: cache
Reporter: Valentin Kulichenko
 Fix For: 1.6


Currently {{NearCacheConfiguration}} extends {{MutableConfiguration}} which 
means that it inherits all the properties that don't make sense for it. Also 
it's possible to use it to create a cache with {{CacheManager}}, which is also 
confusing.

{{NearCacheConfiguration}} should not extend and classes and should be used 
only directly in {{CacheConfiguration.setNearConfiguration()}} or 
{{Ignite.createCache()}} and similar methods.

In addition, it would be useful to add {{setCopyOnRead}} property for near 
cache. Now it's not possible to control this behavior for near cache only.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (IGNITE-2559) Transaction hangs if entry processor is not serializable

2016-02-04 Thread Valentin Kulichenko (JIRA)

 [ 
https://issues.apache.org/jira/browse/IGNITE-2559?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentin Kulichenko updated IGNITE-2559:

Attachment: TxTest.java

> Transaction hangs if entry processor is not serializable
> 
>
> Key: IGNITE-2559
> URL: https://issues.apache.org/jira/browse/IGNITE-2559
> Project: Ignite
>  Issue Type: Bug
>Reporter: Valentin Kulichenko
>Priority: Critical
> Fix For: 1.6
>
> Attachments: TxTest.java
>
>
> Test attached.
> If entry processor doesn't implement {{Serializable}}, the exception is 
> thrown, but transaction hangs forever. If you try to join more nodes after 
> this happens, they will not be able to do this as well.
> Hanged thread dump:
> {noformat}
> "main" #1 prio=5 os_prio=31 tid=0x7f8b6580 nid=0x1703 waiting on 
> condition [0x70218000]
>java.lang.Thread.State: WAITING (parking)
>   at sun.misc.Unsafe.park(Native Method)
>   - parking to wait for  <0x00076ca274f8> (a 
> org.apache.ignite.internal.util.future.GridEmbeddedFuture)
>   at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
>   at 
> java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836)
>   at 
> java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireShared(AbstractQueuedSynchronizer.java:967)
>   at 
> java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireShared(AbstractQueuedSynchronizer.java:1283)
>   at 
> org.apache.ignite.internal.util.future.GridFutureAdapter.get0(GridFutureAdapter.java:157)
>   at 
> org.apache.ignite.internal.util.future.GridFutureAdapter.get(GridFutureAdapter.java:117)
>   at 
> org.apache.ignite.internal.processors.cache.GridCacheAdapter$24.op(GridCacheAdapter.java:2296)
>   at 
> org.apache.ignite.internal.processors.cache.GridCacheAdapter$24.op(GridCacheAdapter.java:2283)
>   at 
> org.apache.ignite.internal.processors.cache.GridCacheAdapter.syncOp(GridCacheAdapter.java:4291)
>   at 
> org.apache.ignite.internal.processors.cache.GridCacheAdapter.invoke0(GridCacheAdapter.java:2283)
>   at 
> org.apache.ignite.internal.processors.cache.GridCacheAdapter.invoke(GridCacheAdapter.java:2261)
>   at 
> org.apache.ignite.internal.processors.cache.IgniteCacheProxy.invoke(IgniteCacheProxy.java:1518)
>   at TxTest.main(TxTest.java:27)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:483)
>   at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


<    1   2   3   4   5   6   7   8   9   10   >