[jira] [Created] (IGNITE-2785) Improve test coverage for web session clustering

2016-03-09 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2785:
---

 Summary: Improve test coverage for web session clustering
 Key: IGNITE-2785
 URL: https://issues.apache.org/jira/browse/IGNITE-2785
 Project: Ignite
  Issue Type: Improvement
  Components: websession
Affects Versions: 1.5.0.final
Reporter: Valentin Kulichenko
Assignee: Anton Vinogradov
 Fix For: 1.6


Web session clustering is not very well covered with tests. What should be done:

* Add more unit tests for different cases.
* Test with different cache configurations.
* Make {{ignite-weblogic-test}} more verbose and use it to check functionality 
on a "real" app with different app servers.



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


[jira] [Created] (IGNITE-2776) Need to support JTA transactions via synchronization callback

2016-03-08 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2776:
---

 Summary: Need to support JTA transactions via synchronization 
callback
 Key: IGNITE-2776
 URL: https://issues.apache.org/jira/browse/IGNITE-2776
 Project: Ignite
  Issue Type: Improvement
Affects Versions: 1.5.0.final
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
Priority: Critical
 Fix For: 1.6


Need to add an option to enlist transaction as 
{{javax.transaction.Synchronization}} instead of XA resource.



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


[jira] [Created] (IGNITE-2774) Add JPA-based store session listener

2016-03-06 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2774:
---

 Summary: Add JPA-based store session listener
 Key: IGNITE-2774
 URL: https://issues.apache.org/jira/browse/IGNITE-2774
 Project: Ignite
  Issue Type: Improvement
  Components: cache
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
 Fix For: 1.6






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


[jira] [Created] (IGNITE-2773) Document swap space

2016-03-06 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2773:
---

 Summary: Document swap space
 Key: IGNITE-2773
 URL: https://issues.apache.org/jira/browse/IGNITE-2773
 Project: Ignite
  Issue Type: Task
  Components: documentation
Reporter: Valentin Kulichenko






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


[jira] [Created] (IGNITE-2772) Document plugin development

2016-03-06 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2772:
---

 Summary: Document plugin development
 Key: IGNITE-2772
 URL: https://issues.apache.org/jira/browse/IGNITE-2772
 Project: Ignite
  Issue Type: Task
  Components: documentation
Reporter: Valentin Kulichenko






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


[jira] [Created] (IGNITE-2771) Document machine safety

2016-03-06 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2771:
---

 Summary: Document machine safety
 Key: IGNITE-2771
 URL: https://issues.apache.org/jira/browse/IGNITE-2771
 Project: Ignite
  Issue Type: Task
  Components: documentation
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko






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


[jira] [Created] (IGNITE-2770) Document custom SQL functions

2016-03-06 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2770:
---

 Summary: Document custom SQL functions
 Key: IGNITE-2770
 URL: https://issues.apache.org/jira/browse/IGNITE-2770
 Project: Ignite
  Issue Type: Task
  Components: documentation
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko






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


[jira] [Created] (IGNITE-2769) Document store session listeners

2016-03-06 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2769:
---

 Summary: Document store session listeners
 Key: IGNITE-2769
 URL: https://issues.apache.org/jira/browse/IGNITE-2769
 Project: Ignite
  Issue Type: Task
  Components: documentation
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko






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


[jira] [Created] (IGNITE-2766) Cache instance is closed when client disconnects

2016-03-04 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2766:
---

 Summary: Cache instance is closed when client disconnects
 Key: IGNITE-2766
 URL: https://issues.apache.org/jira/browse/IGNITE-2766
 Project: Ignite
  Issue Type: Bug
  Components: cache
Affects Versions: 1.5.0.final
Reporter: Valentin Kulichenko
 Fix For: 1.6


In case client disconnects and reconnects after network timeout (i.e., with a 
new ID), all cache instances acquired by this client are closed and are not 
functional. User has to create a special logic to handle this case.

Cache proxy should be able to handle this automatically.



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


[jira] [Created] (IGNITE-2765) WebSessionFilter doesn't survive client reconnect

2016-03-04 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2765:
---

 Summary: WebSessionFilter doesn't survive client reconnect
 Key: IGNITE-2765
 URL: https://issues.apache.org/jira/browse/IGNITE-2765
 Project: Ignite
  Issue Type: Bug
  Components: websession
Affects Versions: 1.5.0.final
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
Priority: Critical
 Fix For: 1.6


If a {{WebSessionFilter}} is started with an embedded client, it is not 
functional after the client disconnects and reconnects. Any operation throws 
the exception below.

{noformat}
java.lang.IllegalStateException: Cache has been closed or destroyed: WebCache
 at 
org.apache.ignite.internal.processors.cache.GridCacheGateway.enter(GridCacheGateway.java:160)
 at 
org.apache.ignite.internal.processors.cache.IgniteCacheProxy.onEnter(IgniteCacheProxy.java:1958)
 at 
org.apache.ignite.internal.processors.cache.IgniteCacheProxy.get(IgniteCacheProxy.java:855)
 at 
org.apache.ignite.cache.websession.WebSessionFilter.doFilter0(WebSessionFilter.java:341)



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


[jira] [Created] (IGNITE-2758) IGNITE_HOME/libs/ignite-aws/aws-java-sdk-1.10.29.jar doesn't contain any classes

2016-03-03 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2758:
---

 Summary: IGNITE_HOME/libs/ignite-aws/aws-java-sdk-1.10.29.jar 
doesn't contain any classes
 Key: IGNITE-2758
 URL: https://issues.apache.org/jira/browse/IGNITE-2758
 Project: Ignite
  Issue Type: Bug
  Components: build
Affects Versions: 1.5.0.final
Reporter: Valentin Kulichenko
Priority: Blocker
 Fix For: 1.6


To observe the issue do this:
* Build the fabric ZIP file.
* Go to {{ignite-aws}} module folder.
* Unzip {{aws-java-sdk-1.10.29.jar}}.
* JAR file contains only pom.xml, no classes.

We need to make sure that all required AWS SDK components are included. At 
least we need these ones:
* aws-java-sdk-core
* aws-java-sdk-s3
* joda-time



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


[jira] [Created] (IGNITE-2749) Web session clustering works incorrectly with WebLogic

2016-03-02 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2749:
---

 Summary: Web session clustering works incorrectly with WebLogic
 Key: IGNITE-2749
 URL: https://issues.apache.org/jira/browse/IGNITE-2749
 Project: Ignite
  Issue Type: Bug
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
Priority: Critical
 Fix For: 1.6


{{WebSessionFilter}} has a special processing for the session ID generated by 
WebLogic. The issue is that this processing is not applied in all required 
cases.  E.g., session ID is transformed when new session is saved in cache (see 
{{createSession}} method, but not transformed when it's fetched from cache (see 
{{doFilter0}}.

Need to go through the code, locate incorrect places and fix.



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


[jira] [Created] (IGNITE-2748) Service proxy makes remote call for methods declared in java.lang.Object

2016-03-02 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2748:
---

 Summary: Service proxy makes remote call for methods declared in 
java.lang.Object
 Key: IGNITE-2748
 URL: https://issues.apache.org/jira/browse/IGNITE-2748
 Project: Ignite
  Issue Type: Bug
  Components: managed services
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
Priority: Critical
 Fix For: 1.6


To reproduce the issue, get a service proxy and call one of 
{{java.lang.Object}}  methods (e.g., {{hashCode}}). It will make a remote call, 
which is not needed and can cause issues.



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


[jira] [Created] (IGNITE-2728) User

2016-02-25 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2728:
---

 Summary: User
 Key: IGNITE-2728
 URL: https://issues.apache.org/jira/browse/IGNITE-2728
 Project: Ignite
  Issue Type: Bug
Reporter: Valentin Kulichenko






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


[jira] [Created] (IGNITE-2727) User

2016-02-25 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2727:
---

 Summary: User
 Key: IGNITE-2727
 URL: https://issues.apache.org/jira/browse/IGNITE-2727
 Project: Ignite
  Issue Type: Bug
Reporter: Valentin Kulichenko






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


[jira] [Created] (IGNITE-2726) Visor shows zero size for OFFHEAP_TIERED cache

2016-02-25 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2726:
---

 Summary: Visor shows zero size for OFFHEAP_TIERED cache
 Key: IGNITE-2726
 URL: https://issues.apache.org/jira/browse/IGNITE-2726
 Project: Ignite
  Issue Type: Bug
  Components: visor
Reporter: Valentin Kulichenko
Priority: Critical
 Fix For: 1.6


To reproduce:

1. Change cache memory mode in {{CachePutGetExample}} to {{OFFHEAP_TIERED}}.
2. Run the example.
3. Connect with Visor and run {{cache -a}} command. See result below - number 
of entries is zero. With {{ONHEAP_TIERED}} is shows the correct cache size.

{noformat}
visor> cache -a
Time of the snapshot: 02/25/16, 13:10:44
+==+
| Name(@) |Mode | Nodes |  Entries  |Hits|  
Misses   |   Reads|   Writes   |
+==+
| CachePutGetExample(@c0) | PARTITIONED | 1 | min: 0| min: 40| min: 
0| min: 40| min: 40|
| | |   | avg: 0.00 | avg: 40.00 | avg: 
0.00 | avg: 40.00 | avg: 40.00 |
| | |   | max: 0| max: 40| max: 
0| max: 40| max: 40|
+--+
{noformat}



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


[jira] [Created] (IGNITE-2719) Value is not copied in entry processor if optimized marshaller is used

2016-02-24 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2719:
---

 Summary: Value is not copied in entry processor if optimized 
marshaller is used
 Key: IGNITE-2719
 URL: https://issues.apache.org/jira/browse/IGNITE-2719
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
Priority: Blocker
 Fix For: 1.6


If {{OptimizedMarshaller}} is used, the {{MutableEntry}} passed to entry 
processor contains the same instance that is stored in cache, even if 
{{copyOnRead}} flag is true.

This happens because {{CacheLazyEntry.getValue()}} method never creates a copy.

Test attached.



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


[jira] [Created] (IGNITE-2708) Need to validate that SPIs are started only once

2016-02-22 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2708:
---

 Summary: Need to validate that SPIs are started only once
 Key: IGNITE-2708
 URL: https://issues.apache.org/jira/browse/IGNITE-2708
 Project: Ignite
  Issue Type: Improvement
  Components: general
Reporter: Valentin Kulichenko


User forum discussion: 
http://apache-ignite-users.70518.x6.nabble.com/Ignite-instance-hangs-during-restart-in-client-mode-td3101.html

If one uses the same instance of {{IgniteConfiguration}} more than once, it 
doesn't work because SPIs have lifecycle and can be started only once. 
Currently this causes hang on start which is counterintuitive.

We should add a validation step to {{GridSpiAdapter}} that will check that the 
SPI was never started before. Its {{spiStart()}} method should set some flag 
there or throw exception if it has already been set. All internal SPI 
implementations should be changed to call {{super.spiStart()}} as first 
statement.



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


[jira] [Created] (IGNITE-2681) Need to add an option to suppress binary marshaller warnings

2016-02-17 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2681:
---

 Summary: Need to add an option to suppress binary marshaller 
warnings
 Key: IGNITE-2681
 URL: https://issues.apache.org/jira/browse/IGNITE-2681
 Project: Ignite
  Issue Type: Improvement
  Components: general
Reporter: Valentin Kulichenko
 Fix For: 1.6


Some users don't want to have warnings like below in the logs, because they are 
printed out for each class and are not always needed. We need to have a way to 
suppress them.

Both quiet mode and logging via {{IgniteLogger}} should be fixed.

{noformat}
[11:37:46] Class "" cannot be serialized using 
BinaryMarshaller because it either implements Externalizable interface or have 
writeObject/readObject methods. OptimizedMarshaller will be used instead and 
class instances will be deserialized on the server. Please ensure that all 
nodes have this class in classpath. To enable binary serialization either 
implement Binarylizable interface or set explicit serializer using 
BinaryTypeConfiguration.setSerializer() method.
{noformat}



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


[jira] [Created] (IGNITE-2669) IgniteCache.replace() returns false instead of true when there is only one node

2016-02-16 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2669:
---

 Summary: IgniteCache.replace() returns false instead of true when 
there is only one node
 Key: IGNITE-2669
 URL: https://issues.apache.org/jira/browse/IGNITE-2669
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
Priority: Critical
 Fix For: 1.6


Test attached.



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


[jira] [Created] (IGNITE-2668) MBean creation fails if cache name contains ':' character

2016-02-16 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2668:
---

 Summary: MBean creation fails if cache name contains ':' character
 Key: IGNITE-2668
 URL: https://issues.apache.org/jira/browse/IGNITE-2668
 Project: Ignite
  Issue Type: Bug
  Components: general
Reporter: Valentin Kulichenko
 Fix For: 1.6


If someone tries to start a cache with ':' in the name, it will fail with the 
exception:

{noformat}
2016-02-16T17:53:56.570+ [exchange-worker-#83%SensorIQ%] ERROR 
GridDhtPartitionsExchangeFuture [] - Failed to reinitialize local partitions 
(preloading will be stopped): GridDhtPartitionExchangeId 
[topVer=AffinityTopologyVersion [topVer=1, minorTopVer=1], nodeId=1afff13b, 
evt=DISCOVE
RY_CUSTOM_EVT]
org.apache.ignite.IgniteCheckedException: Failed to register MBean for 
component: org.apache.ignite.internal.processors.cache.CacheMetricsMXBean
Impl@4a9488fe
at 
org.apache.ignite.internal.processors.cache.GridCacheProcessor.registerMbean(GridCacheProcessor.java:3313)
 ~[ignite-core-1.5.6.jar!/:
1.5.6]
at 
org.apache.ignite.internal.processors.cache.GridCacheProcessor.createCache(GridCacheProcessor.java:1482)
 ~[ignite-core-1.5.6.jar!/:1.
5.6]
at 
org.apache.ignite.internal.processors.cache.GridCacheProcessor.prepareCacheStart(GridCacheProcessor.java:1629)
 ~[ignite-core-1.5.6.ja
r!/:1.5.6]
at 
org.apache.ignite.internal.processors.cache.GridCacheProcessor.prepareCachesStart(GridCacheProcessor.java:1554)
 ~[ignite-core-1.5.6.j
ar!/:1.5.6]
at 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.startCaches(GridDhtPartitionsEx
changeFuture.java:960) ~[ignite-core-1.5.6.jar!/:1.5.6]
at 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.init(GridDhtPartitionsExchangeF
uture.java:523) ~[ignite-core-1.5.6.jar!/:1.5.6]
at 
org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body(GridCachePartitionExchangeManager.j
ava:1297) [ignite-core-1.5.6.jar!/:1.5.6]
at 
org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) 
[ignite-core-1.5.6.jar!/:1.5.6]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_31]
Caused by: javax.management.MalformedObjectNameException: Invalid character ':' 
in value part of property
at javax.management.ObjectName.construct(ObjectName.java:618) 
~[na:1.8.0_31]
at javax.management.ObjectName.(ObjectName.java:1382) 
~[na:1.8.0_31]
at 
org.apache.ignite.internal.util.IgniteUtils.makeCacheMBeanName(IgniteUtils.java:4280)
 ~[ignite-core-1.5.6.jar!/:1.5.6]
at 
org.apache.ignite.internal.util.IgniteUtils.registerCacheMBean(IgniteUtils.java:4356)
 ~[ignite-core-1.5.6.jar!/:1.5.6]
at 
org.apache.ignite.internal.processors.cache.GridCacheProcessor.registerMbean(GridCacheProcessor.java:3309)
 ~[ignite-core-1.5.6.jar!/:1.5.6]
... 8 common frames omitted
{noformat}

User list thread: 
http://apache-ignite-users.70518.x6.nabble.com/Exception-on-cluster-start-after-upgrading-to-GridGain-Community-Edition-td3035.html



--
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] [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-2570) LoadCacheClosure and several other classes in GridCacheAdapter are not marked as internal

2016-02-05 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2570:
---

 Summary: LoadCacheClosure and several other classes in 
GridCacheAdapter are not marked as internal
 Key: IGNITE-2570
 URL: https://issues.apache.org/jira/browse/IGNITE-2570
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
 Fix For: 1.6


Need to go through all our internal jobs and closures and make sure they are 
annotation with {{@GridInternal}}.

Probably we can automate this by adding additional check in 
{{ClassesGenerator}} - any class in {{org.apache.ignite.internal}} package that 
implements closure, job, etc., should have this annotation.



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


[jira] [Created] (IGNITE-2560) Support injections in entry processors

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

 Summary: Support injections in entry processors
 Key: IGNITE-2560
 URL: https://issues.apache.org/jira/browse/IGNITE-2560
 Project: Ignite
  Issue Type: Improvement
  Components: cache
Reporter: Valentin Kulichenko
 Fix For: 1.6


Currently resources are not injected in entry processor, which is not 
consistent with other functionality, like closures, jobs, listeners, etc.

To avoid performance degradation we should introspect the class only once, 
cache this information and do not try to inject if there are no annotations.



--
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] [Created] (IGNITE-2546) Need to introduce transformers to SCAN queries

2016-02-03 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2546:
---

 Summary: Need to introduce transformers to SCAN queries
 Key: IGNITE-2546
 URL: https://issues.apache.org/jira/browse/IGNITE-2546
 Project: Ignite
  Issue Type: Improvement
Reporter: Valentin Kulichenko
 Fix For: 1.6






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


[jira] [Created] (IGNITE-2538) RDD.isEmpty method should be overriden in IgniteRDD to use IgniteCache API

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

 Summary: RDD.isEmpty method should be overriden in IgniteRDD to 
use IgniteCache API
 Key: IGNITE-2538
 URL: https://issues.apache.org/jira/browse/IGNITE-2538
 Project: Ignite
  Issue Type: Improvement
  Components: Ignite RDD
Reporter: Valentin Kulichenko


Currently calling {{IgniteRDD.isEmpty}} ends up in execution of 1024 Spark 
jobs, which is not fast. We should override this method and use native 
{{IgniteCache}} API there. Other methods should be also revisited.



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


[jira] [Created] (IGNITE-2527) IndexOutOfBoundsException in scheduler future

2016-02-01 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2527:
---

 Summary: IndexOutOfBoundsException in scheduler future
 Key: IGNITE-2527
 URL: https://issues.apache.org/jira/browse/IGNITE-2527
 Project: Ignite
  Issue Type: Bug
  Components: general
Reporter: Valentin Kulichenko
Priority: Minor
 Fix For: 1.6


Calling {{SchedulerFuture.nextExecutionTime()}} (and probably other methods) on 
a completed future leads to this exception:
{noformat}
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at 
org.apache.ignite.internal.processors.schedule.ScheduleFutureImpl.nextExecutionTime(ScheduleFutureImpl.java:455)
{noformat}
In particular, this happens if {{nextExecutionTime()}} right after calling 
{{IgniteScheduler.scheduleLocal()}} with an invalid pattern (see code example 
below). The exception is lost in this case and is never printed out or thrown.
{code}
SchedulerFuture schedulerFuture = ignite.scheduler().scheduleLocal(() -> {}, 
"{55} 53 3/5 * * *");
long nextExecutionTime = schedulerFuture.nextExecutionTime();
{code}



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


[jira] [Created] (IGNITE-2498) Offheap memory + peer class loading = ClassNotFoundException

2016-01-28 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2498:
---

 Summary: Offheap memory + peer class loading = 
ClassNotFoundException
 Key: IGNITE-2498
 URL: https://issues.apache.org/jira/browse/IGNITE-2498
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
Priority: Blocker
 Fix For: 1.6


With offheap memory and peer class loading, cache tries to deserialize value on 
server, even if binary format is used.

To reproduce start a node using {{ignite.sh}} and run attached 
{{OffheapP2PTest}}.



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


[jira] [Created] (IGNITE-2483) Cache metrics bugs

2016-01-27 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2483:
---

 Summary: Cache metrics bugs
 Key: IGNITE-2483
 URL: https://issues.apache.org/jira/browse/IGNITE-2483
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
 Fix For: 1.6


User list discussion: 
http://apache-ignite-users.70518.x6.nabble.com/Is-there-a-way-to-get-cache-metrics-for-all-the-nodes-in-cluster-combined-td2674.html

Currently there are at least three issues with cache metrics:
# When metrics are acquired on client, average put times are always zero. This 
happens because timings are calculated on the client, but puts are counted on 
servers.
# Size and keySize are always zero even if cache is not empty.
# Default metrics() method that doesn't take a cluster group provides metrics 
for local node only. So if it's called on client, they are always empty. It 
should calculate metrics for the whole cluster instead.

Also looks like this code is very undertested. Coverage should be significantly 
improved.



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


[jira] [Created] (IGNITE-2455) SQL query fails if there are caches that were never used on this client

2016-01-26 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2455:
---

 Summary: SQL query fails if there are caches that were never used 
on this client
 Key: IGNITE-2455
 URL: https://issues.apache.org/jira/browse/IGNITE-2455
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
Priority: Critical
 Fix For: 1.6


Test attached.

If SQL query contains caches that were never acquired on the current client, it 
fails with the following exception:

{noformat}
org.h2.jdbc.JdbcSQLException: Schema "cache2" not found;
{noformat}

We should automatically detect the list of required caches and create them 
before executing the query.




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


[jira] [Created] (IGNITE-2454) Continuous query notification missed if there is only one node

2016-01-26 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2454:
---

 Summary: Continuous query notification missed if there is only one 
node
 Key: IGNITE-2454
 URL: https://issues.apache.org/jira/browse/IGNITE-2454
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
Priority: Critical
 Fix For: 1.6
 Attachments: CacheListenerTest.java

Test attached.

The remote filter is invoked, returns {{true}}, but the local listener is 
ignored.



--
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-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] [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-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] [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] [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] [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] [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] [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] [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-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-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] [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] [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-2203) CacheEntryImplEx contains version twice

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

 Summary: 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


{{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] [Created] (IGNITE-2160) Ignition.start() is blocked if there are no server nodes

2015-12-14 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2160:
---

 Summary: Ignition.start() is blocked if there are no server nodes
 Key: IGNITE-2160
 URL: https://issues.apache.org/jira/browse/IGNITE-2160
 Project: Ignite
  Issue Type: Bug
Reporter: Valentin Kulichenko
Priority: Critical
 Fix For: 1.6


A node (server or client) should always start without blocking the thread that 
called {{Ignition.start()}}. Current behavior is confusing and undesirable - 
e.g., if a node is embedded into web application, the whole application startup 
process is stuck.

Additionally, if there are no servers, client node should throw 
{{IgniteClientDisconnectedException}} on all API calls. It already works this 
way if all servers leave while client is running.

@dev list discussion: 
http://apache-ignite-developers.2346864.n4.nabble.com/Client-connect-quot-hangs-quot-td5765.html



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


[jira] [Created] (IGNITE-2100) Queries do not work with binary marshaller and Externalizable objects

2015-12-07 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2100:
---

 Summary: Queries do not work with binary marshaller and 
Externalizable objects
 Key: IGNITE-2100
 URL: https://issues.apache.org/jira/browse/IGNITE-2100
 Project: Ignite
  Issue Type: Bug
  Components: general
Reporter: Valentin Kulichenko
Priority: Critical
 Fix For: 1.5


If new binary marshaller is used and model classes implement {{Externalizable}} 
(which is often the case when user migrates from 1.4 to 1.5), queries stop 
working and return nulls instead of all field values.

At least, we need to properly document it and throw an exception so that user 
is aware about the issue.



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


[jira] [Created] (IGNITE-2099) Binary marshaller writes any map as a HashMap

2015-12-07 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2099:
---

 Summary: Binary marshaller writes any map as a HashMap
 Key: IGNITE-2099
 URL: https://issues.apache.org/jira/browse/IGNITE-2099
 Project: Ignite
  Issue Type: Bug
  Components: general
Reporter: Valentin Kulichenko
Priority: Critical
 Fix For: 1.5


Bug is described and discussed in this user@ thread: 
http://apache-ignite-users.70518.x6.nabble.com/Serialization-issue-with-Ignite-1-5-built-from-master-357d791-td2149.html

In general, we need to make sure that binary marshaller fully supports Java 
serialization and behaves consistently with optimized marshaller.



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


[jira] [Created] (IGNITE-2098) Need to check that Java Proxy is properly (de)serialized with binary marshaller

2015-12-07 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2098:
---

 Summary: Need to check that Java Proxy is properly (de)serialized 
with binary marshaller
 Key: IGNITE-2098
 URL: https://issues.apache.org/jira/browse/IGNITE-2098
 Project: Ignite
  Issue Type: Test
  Components: general
Reporter: Valentin Kulichenko
 Fix For: 1.5


Need to create test similar to {{OptimizedMarshallerTest.testProxy}}.



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


[jira] [Created] (IGNITE-2096) AtomicConfiguration and CollectionConfiguration should be properly checked for consistency

2015-12-07 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2096:
---

 Summary: AtomicConfiguration and CollectionConfiguration should be 
properly checked for consistency
 Key: IGNITE-2096
 URL: https://issues.apache.org/jira/browse/IGNITE-2096
 Project: Ignite
  Issue Type: Bug
  Components: data structures
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
 Fix For: 1.5


Currently {{AtomicConfiguration}} and {{CollectionConfiguration}} are mapped to 
system caches configuration and consistency is checked like for any other 
cache. This leads to unintuitive errors.



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


[jira] [Created] (IGNITE-2095) SpringCacheManager doesn't support withKeepBinary() flag

2015-12-07 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2095:
---

 Summary: SpringCacheManager doesn't support withKeepBinary() flag
 Key: IGNITE-2095
 URL: https://issues.apache.org/jira/browse/IGNITE-2095
 Project: Ignite
  Issue Type: Bug
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
Priority: Critical
 Fix For: 1.5


Currently {{SpringCacheManager}} doesn't allow to switch to 
{{withKeepBinary()}} cache.

SO thread: 
http://stackoverflow.com/questions/34049172/ignite-and-spring-with-multiple-class-loaders/



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


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

2015-12-04 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2087:
---

 Summary: 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: Valentin Kulichenko
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-2083) EntryProcessor is called twice on primary node in transactional cache

2015-12-03 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-2083:
---

 Summary: 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
 Fix For: 1.6


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] [Created] (IGNITE-1995) Local cache is destroyed when close() is called

2015-11-24 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1995:
---

 Summary: Local cache is destroyed when close() is called
 Key: IGNITE-1995
 URL: https://issues.apache.org/jira/browse/IGNITE-1995
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
 Fix For: 1.6


Need to make the behavior consistent and check if TCK tests pass.



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


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

2015-11-23 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1988:
---

 Summary: 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
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] [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] [Created] (IGNITE-1926) Implement IgfsSecondaryFileSystem using java.io.File API

2015-11-16 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1926:
---

 Summary: Implement IgfsSecondaryFileSystem using java.io.File API
 Key: IGNITE-1926
 URL: https://issues.apache.org/jira/browse/IGNITE-1926
 Project: Ignite
  Issue Type: Improvement
  Components: IGFS
Reporter: Valentin Kulichenko


This will allow to persist IGFS data on the local disk. Currently we have only 
Hadoop-based implementation.

Corresponding user thread: 
http://apache-ignite-users.70518.x6.nabble.com/IGFS-backed-by-persistence-on-physical-filesystem-td1882.html



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


[jira] [Created] (IGNITE-1897) Add failover to write-behind cache store

2015-11-12 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1897:
---

 Summary: Add failover to write-behind cache store
 Key: IGNITE-1897
 URL: https://issues.apache.org/jira/browse/IGNITE-1897
 Project: Ignite
  Issue Type: Improvement
  Components: cache
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
Priority: Critical
 Fix For: 1.6


Currently there is a possibility of losing database updates if primary node 
fails. We should maintain updates queue on backup node as well and flush it if 
needed.

The implementation should be similar to what is done with continuous queries in 
scope of this ticket: https://issues.apache.org/jira/browse/IGNITE-426



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


[jira] [Created] (IGNITE-1886) NPE in H2 when running query with subselects

2015-11-10 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1886:
---

 Summary: NPE in H2 when running query with subselects
 Key: IGNITE-1886
 URL: https://issues.apache.org/jira/browse/IGNITE-1886
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
Priority: Critical
 Fix For: 1.5


Test reproducing the issue is attached. NPE is thrown as a result (see below).

Corresponding user@ thread: 
http://apache-ignite-users.70518.x6.nabble.com/Does-Ignite-support-nested-SQL-Queries-td1714.html

{noformat}
Exception in thread "main" javax.cache.CacheException: class 
org.apache.ignite.IgniteException: Failed to parse query: SELECT a.* FROM 
(SELECT CASE WHEN u.id < 100 THEN u.id ELSE ug.id END id FROM "UserCache".user 
u, userorder ug WHERE u.id = ug.usrid) a, (SELECT CASE WHEN og.goodid < 5 THEN 
100 ELSE og.goodid END id FROM userorder ug, "OrderGoodCache".ordergood og 
WHERE ug.id = og.orderid) b WHERE a.id = b.id
at 
org.apache.ignite.internal.processors.cache.IgniteCacheProxy.query(IgniteCacheProxy.java:636)
at 
org.apache.ignite.examples.ExampleNodeStartup.main(ExampleNodeStartup.java:70)
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 com.intellij.rt.execution.application.AppMain.main(AppMain.java:140)
Caused by: class org.apache.ignite.IgniteException: Failed to parse query: 
SELECT a.* FROM (SELECT CASE WHEN u.id < 100 THEN u.id ELSE ug.id END id FROM 
"UserCache".user u, userorder ug WHERE u.id = ug.usrid) a, (SELECT CASE WHEN 
og.goodid < 5 THEN 100 ELSE og.goodid END id FROM userorder ug, 
"OrderGoodCache".ordergood og WHERE ug.id = og.orderid) b WHERE a.id = b.id
at 
org.apache.ignite.internal.processors.query.GridQueryProcessor.queryTwoStep(GridQueryProcessor.java:641)
at 
org.apache.ignite.internal.processors.cache.IgniteCacheProxy.query(IgniteCacheProxy.java:627)
... 6 more
Caused by: class org.apache.ignite.IgniteCheckedException: Failed to parse 
query: SELECT a.* FROM (SELECT CASE WHEN u.id < 100 THEN u.id ELSE ug.id END id 
FROM "UserCache".user u, userorder ug WHERE u.id = ug.usrid) a, (SELECT CASE 
WHEN og.goodid < 5 THEN 100 ELSE og.goodid END id FROM userorder ug, 
"OrderGoodCache".ordergood og WHERE ug.id = og.orderid) b WHERE a.id = b.id
at 
org.apache.ignite.internal.processors.query.GridQueryProcessor.executeQuery(GridQueryProcessor.java:1510)
at 
org.apache.ignite.internal.processors.query.GridQueryProcessor.queryTwoStep(GridQueryProcessor.java:634)
... 7 more
Caused by: javax.cache.CacheException: Failed to parse query: SELECT a.* FROM 
(SELECT CASE WHEN u.id < 100 THEN u.id ELSE ug.id END id FROM "UserCache".user 
u, userorder ug WHERE u.id = ug.usrid) a, (SELECT CASE WHEN og.goodid < 5 THEN 
100 ELSE og.goodid END id FROM userorder ug, "OrderGoodCache".ordergood og 
WHERE ug.id = og.orderid) b WHERE a.id = b.id
at 
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.queryTwoStep(IgniteH2Indexing.java:938)
at 
org.apache.ignite.internal.processors.query.GridQueryProcessor$4.applyx(GridQueryProcessor.java:636)
at 
org.apache.ignite.internal.processors.query.GridQueryProcessor$4.applyx(GridQueryProcessor.java:634)
at 
org.apache.ignite.internal.util.lang.IgniteOutClosureX.apply(IgniteOutClosureX.java:36)
at 
org.apache.ignite.internal.processors.query.GridQueryProcessor.executeQuery(GridQueryProcessor.java:1492)
... 8 more
Caused by: org.h2.jdbc.JdbcSQLException: General error: 
"java.lang.NullPointerException" [5-175]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:332)
at org.h2.message.DbException.get(DbException.java:161)
at org.h2.message.DbException.convert(DbException.java:284)
at org.h2.message.DbException.toSQLException(DbException.java:257)
at org.h2.message.TraceObject.logAndConvert(TraceObject.java:368)
at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:270)
at 
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.queryTwoStep(IgniteH2Indexing.java:935)
... 12 more
Caused by: java.lang.NullPointerException
at org.h2.expression.Function.getCost(Function.java:2391)
at org.h2.expression.Comparison.getCost(Comparison.java:480)
at org.h2.expression.ConditionAndOr.optimize(ConditionAndOr.java:133)
at org.h2.expression.ConditionAndOr.optimize(ConditionAndOr.java:131)
at org.h2.command.dml.Select.prepare(Select.java:813)
at org.h2.command.Parser.prepare(Parser.java:220)

[jira] [Created] (IGNITE-1840) Exception on startup

2015-11-02 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1840:
---

 Summary: Exception on startup
 Key: IGNITE-1840
 URL: https://issues.apache.org/jira/browse/IGNITE-1840
 Project: Ignite
  Issue Type: Bug
Reporter: Valentin Kulichenko


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-1813) Need to add metrics for data structures

2015-10-29 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1813:
---

 Summary: Need to add metrics for data structures
 Key: IGNITE-1813
 URL: https://issues.apache.org/jira/browse/IGNITE-1813
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko


All data structures (queues, sets, atomics, etc.) are based on internal caches, 
therefore there is no way to get metrics for this caches.

We should create an interface that will contain metrics suitable for data 
structures and add {{metrics()}} method to all data structures that will return 
the instance of this interface for a particular data structure.

Here is the corresponding user@ thread: 
http://apache-ignite-users.70518.x6.nabble.com/Queue-stats-td1727.html



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


[jira] [Created] (IGNITE-1727) Shmem library can't be loaded by different class loaders within one JVM

2015-10-17 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1727:
---

 Summary: Shmem library can't be loaded by different class loaders 
within one JVM
 Key: IGNITE-1727
 URL: https://issues.apache.org/jira/browse/IGNITE-1727
 Project: Ignite
  Issue Type: Bug
  Components: general
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko


This can happen, for example, when an application is redeployed in an app 
server.

{noformat}
16:41:55,042 WARN [org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi] 
(ignite-#40%rest-fsb-grid%) Failed to load native IPC library: 
[java.lang.UnsatisfiedLinkError: no igniteshmem-1.4.1 in java.library.path, 
java.lang.UnsatisfiedLinkError: Native Library 
/tmp/adrien/libigniteshmem-1.4.1.so already loaded in another classloader, 
java.lang.IllegalStateException: Failed to find resource with specified class 
loader [rsrc=META-INF/native/linux/libigniteshmem.so, clsLdr=ModuleClassLoader 
for Module 
"deployment.sport-assemblies-ss-ear-0.0.1.ear.sport-ss-ejb-0.0.1.jar:main" from 
Service Module Loader], java.lang.IllegalStateException: Failed to find 
resource with specified class loader [rsrc=META-INF/native/libigniteshmem.so, 
clsLdr=ModuleClassLoader for Module 
"deployment.sport-assemblies-ss-ear-0.0.1.ear.sport-ss-ejb-0.0.1.jar:main" from 
Service Module Loader]]
{noformat}



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


[jira] [Created] (IGNITE-1726) Node doesn't fail if SSL configuration is incorrect

2015-10-17 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1726:
---

 Summary: Node doesn't fail if SSL configuration is incorrect
 Key: IGNITE-1726
 URL: https://issues.apache.org/jira/browse/IGNITE-1726
 Project: Ignite
  Issue Type: Bug
  Components: general
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko


Currently if two nodes start - one with SSL enable and another with SSL 
disabled - they both start successfully, but with order 1, i.e., as parts of 
different topologies. We should detect this misconfiguration and throw an 
exception.



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


[jira] [Created] (IGNITE-1702) Cache update hangs if there is ClassNotFoundException on a server node

2015-10-15 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1702:
---

 Summary: Cache update hangs if there is ClassNotFoundException on 
a server node
 Key: IGNITE-1702
 URL: https://issues.apache.org/jira/browse/IGNITE-1702
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
Priority: Blocker
 Fix For: 1.5


We need to catch the exception and return a response with it to a client.

{noformat}
java.lang.NoClassDefFoundError: XXX
...
at 
org.apache.ignite.internal.GridEventConsumeHandler$2.onEvent(GridEventConsumeHandler.java:153)
at 
org.apache.ignite.internal.managers.eventstorage.GridEventStorageManager.notifyListeners(GridEventStorageManager.java:770)
at 
org.apache.ignite.internal.managers.eventstorage.GridEventStorageManager.notifyListeners(GridEventStorageManager.java:755)
at 
org.apache.ignite.internal.managers.eventstorage.GridEventStorageManager.record(GridEventStorageManager.java:295)
at 
org.apache.ignite.internal.processors.cache.GridCacheEventManager.addEvent(GridCacheEventManager.java:266)
at 
org.apache.ignite.internal.processors.cache.GridCacheMapEntry.innerUpdate(GridCacheMapEntry.java:2142)
at 
org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridDhtAtomicCache.updateSingle(GridDhtAtomicCache.java:1761)
at 
org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridDhtAtomicCache.updateAllAsyncInternal0(GridDhtAtomicCache.java:1189)
at 
org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridDhtAtomicCache.updateAllAsyncInternal(GridDhtAtomicCache.java:1068)
at 
org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridDhtAtomicCache.processNearAtomicUpdateRequest(GridDhtAtomicCache.java:2449)
at 
org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridDhtAtomicCache.access$500(GridDhtAtomicCache.java:124)
at 
org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridDhtAtomicCache$4.apply(GridDhtAtomicCache.java:248)
at 
org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridDhtAtomicCache$4.apply(GridDhtAtomicCache.java:246)
at 
org.apache.ignite.internal.processors.cache.GridCacheIoManager.processMessage(GridCacheIoManager.java:580)
at 
org.apache.ignite.internal.processors.cache.GridCacheIoManager.onMessage0(GridCacheIoManager.java:280)
at 
org.apache.ignite.internal.processors.cache.GridCacheIoManager.handleMessage(GridCacheIoManager.java:198)
at 
org.apache.ignite.internal.processors.cache.GridCacheIoManager.access$000(GridCacheIoManager.java:77)
at 
org.apache.ignite.internal.processors.cache.GridCacheIoManager$1.onMessage(GridCacheIoManager.java:160)
at 
org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:811)
at 
org.apache.ignite.internal.managers.communication.GridIoManager.access$1500(GridIoManager.java:106)
at 
org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:774)
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)
Caused by: java.lang.ClassNotFoundException: XXX
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 29 more
{noformat}



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


[jira] [Created] (IGNITE-1622) clear() method works incorrectly with near caches

2015-10-06 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1622:
---

 Summary: clear() method works incorrectly with near caches
 Key: IGNITE-1622
 URL: https://issues.apache.org/jira/browse/IGNITE-1622
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
Priority: Blocker
 Fix For: ignite-1.5


Currently {{IgniteCache.clear()}} method doesn't clear server nodes if there 
are near entries. Instead it should clear all caches, including near and 
readers.



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


[jira] [Created] (IGNITE-1609) New value should be copied when cache interceptor is called

2015-10-01 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1609:
---

 Summary: New value should be copied when cache interceptor is 
called
 Key: IGNITE-1609
 URL: https://issues.apache.org/jira/browse/IGNITE-1609
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko


Currently we copy old value that is stored in cache, but not new value - this 
is inconsistent. Also there are scenarios when interceptor is called more than 
once and if the value is mutated, issues are possible. Example can be found in 
this thread: 
http://apache-ignite-users.70518.x6.nabble.com/CacheStore-implementation-using-Hibernate-td1423.html



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


[jira] [Created] (IGNITE-1606) NPE during node stop due to nullified logger in TcpCommunicationSpi

2015-10-01 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1606:
---

 Summary: NPE during node stop due to nullified logger in 
TcpCommunicationSpi
 Key: IGNITE-1606
 URL: https://issues.apache.org/jira/browse/IGNITE-1606
 Project: Ignite
  Issue Type: Bug
  Components: general
Reporter: Valentin Kulichenko
 Fix For: ignite-1.5


Probably we should check other components as well. Not sure why we need to 
nullify logger.

{noformat}
Exception in thread "ignite-#101%sys-t1-1%" java.lang.NullPointerException
at 
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi.sendMessage0(TcpCommunicationSpi.java:1896)
at 
org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi.sendMessage(TcpCommunicationSpi.java:1880)
at 
org.apache.ignite.internal.managers.communication.GridIoManager.send(GridIoManager.java:1066)
at 
org.apache.ignite.internal.managers.communication.GridIoManager.send(GridIoManager.java:1214)
at 
org.apache.ignite.internal.processors.continuous.GridContinuousProcessor.sendWithRetries(GridContinuousProcessor.java:1071)
at 
org.apache.ignite.internal.processors.continuous.GridContinuousProcessor.sendWithRetries(GridContinuousProcessor.java:1034)
at 
org.apache.ignite.internal.processors.continuous.GridContinuousProcessor.sendWithRetries(GridContinuousProcessor.java:1017)
at 
org.apache.ignite.internal.processors.continuous.GridContinuousProcessor.processNotification(GridContinuousProcessor.java:851)
at 
org.apache.ignite.internal.processors.continuous.GridContinuousProcessor.access$1500(GridContinuousProcessor.java:85)
at 
org.apache.ignite.internal.processors.continuous.GridContinuousProcessor$8.onMessage(GridContinuousProcessor.java:556)
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)
{noformat}



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


[jira] [Created] (IGNITE-1576) CacheObject.toString() can throw NPE if node already stopped

2015-09-29 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1576:
---

 Summary: CacheObject.toString() can throw NPE if node already 
stopped
 Key: IGNITE-1576
 URL: https://issues.apache.org/jira/browse/IGNITE-1576
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
 Fix For: ignite-1.5


{{CacheObject}} is not functional when the node that created this object is 
stopped. Currently is user saves this object somewhere (e.g., as a part of 
{{CacheEntryEvent}}, it will throw NPEs from {{toString}} and probably other 
methods. We should throw informative error in this case.



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


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

2015-09-29 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1575:
---

 Summary: 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: ignite-1.5


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] [Created] (IGNITE-1574) Exception is not rethrown if entry processor fails during commit

2015-09-29 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1574:
---

 Summary: Exception is not rethrown if entry processor fails during 
commit
 Key: IGNITE-1574
 URL: https://issues.apache.org/jira/browse/IGNITE-1574
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
 Fix For: ignite-1.5


See user@ thread: 
http://apache-ignite-users.70518.x6.nabble.com/CacheEntryProcessor-failing-on-transactional-cache-td1501.html

Entry processor fails during commit, transaction is correctly rolled back, but 
the exception is not rethrown to the client.



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


[jira] [Created] (IGNITE-1552) Table function doesn't work properly in SQL query

2015-09-25 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1552:
---

 Summary: Table function doesn't work properly in SQL query
 Key: IGNITE-1552
 URL: https://issues.apache.org/jira/browse/IGNITE-1552
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
Assignee: Sergi Vladykin
Priority: Critical
 Fix For: ignite-1.5


IN operator replacement query described in [1] doesn't seem to work properly. 
Test reproducing the issue is attached.

[1]https://apacheignite.readme.io/docs/sql-queries#performance-and-usability-considerations



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


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

2015-09-23 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1538:
---

 Summary: 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: Critical
 Fix For: ignite-1.5


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] [Created] (IGNITE-1536) Duplicate notification in continuous query

2015-09-23 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1536:
---

 Summary: Duplicate notification in continuous query
 Key: IGNITE-1536
 URL: https://issues.apache.org/jira/browse/IGNITE-1536
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
Priority: Blocker
 Fix For: ignite-1.4


Scenario is the following:
# Start first node with a {{REPLICATED}} cache.
# Execute non-local continuous query.
# Start second node.
# Do several puts for different keys.

Some of the notifications are duplicated.



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


[jira] [Created] (IGNITE-1532) IgniteCache.put() should load value from store if interceptor is used and CacheConfiguration.isLoadPreviousValue() == true

2015-09-22 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1532:
---

 Summary: IgniteCache.put() should load value from store if 
interceptor is used and CacheConfiguration.isLoadPreviousValue() == true
 Key: IGNITE-1532
 URL: https://issues.apache.org/jira/browse/IGNITE-1532
 Project: Ignite
  Issue Type: Bug
Reporter: Valentin Kulichenko
Priority: Critical
 Fix For: ignite-1.5






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


[jira] [Created] (IGNITE-1523) Need to make marshaller in discovery pluggable

2015-09-21 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1523:
---

 Summary: Need to make marshaller in discovery pluggable
 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
 Fix For: ignite-1.4


Currently we always use {{JdkMarshaller}}. It can be useful to use a custom 
one. Need to add {{TcpDiscoverySpi.setMarshaller()}} method to allow this.



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


[jira] [Created] (IGNITE-1522) Cache entry listener is executed on a joining node

2015-09-21 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1522:
---

 Summary: Cache entry listener is executed on a joining node
 Key: IGNITE-1522
 URL: https://issues.apache.org/jira/browse/IGNITE-1522
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
Priority: Blocker
 Fix For: ignite-1.4


Scenario is the following:
# Start first node.
# Register cache entry listener. Its configuration is added to cache 
configuration (required by JCache).
# Start second node.
# As a result entry listener configuration is serialized as a part of cache 
configuration, which is wrong. Moreover, it's executed on this new node.

Need to make listener configurations transient.



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


[jira] [Created] (IGNITE-1482) IgniteCache.replace (CAS) returns incorrect value on changing topology

2015-09-14 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1482:
---

 Summary: IgniteCache.replace (CAS) returns incorrect value on 
changing topology
 Key: IGNITE-1482
 URL: https://issues.apache.org/jira/browse/IGNITE-1482
 Project: Ignite
  Issue Type: Bug
  Components: cache
Reporter: Valentin Kulichenko
Assignee: Alexey Goncharuk
Priority: Blocker
 Fix For: ignite-1.4


Test reproducing the issue is attached.



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


[jira] [Created] (IGNITE-1404) Any distributed cache operation should throw CacheServerNotFoundException if there are no server nodes

2015-09-10 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1404:
---

 Summary: Any distributed cache operation should throw 
CacheServerNotFoundException if there are no server nodes
 Key: IGNITE-1404
 URL: https://issues.apache.org/jira/browse/IGNITE-1404
 Project: Ignite
  Issue Type: Improvement
  Components: cache
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
Priority: Blocker
 Fix For: ignite-1.4


Currently the behavior is inconsistent. E.g., {{remove()}} method throws an 
exception, but {{clear()}} does not. Need to check all distributed operations 
and make them throw the exception when appropriate.



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


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

2015-09-10 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1403:
---

 Summary: 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
Priority: Blocker
 Fix For: ignite-1.4


{{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] [Created] (IGNITE-1402) Logging uses root logger in some cases

2015-09-10 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1402:
---

 Summary: Logging uses root logger in some cases
 Key: IGNITE-1402
 URL: https://issues.apache.org/jira/browse/IGNITE-1402
 Project: Ignite
  Issue Type: Bug
  Components: general
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
Priority: Blocker
 Fix For: ignite-1.4


{{GridKernalContext.log()}} method returns root logger which should not be used 
by any of Ignite classes. This can cause the following scenario:
# User configures logger with DEBUG level as default and INFO level for 
{{org.apache.ignite}} package.
# Ignite class takes logger using {{GridKernalContext.log()}} and checks if 
debug is enabled. It will get true regardless of the settings for Ignite 
package.

There are places in code that uses {{GridKernalContext.log()}} method 
incorrectly, so it should be removed. We should always use 
{{GridKernalContext.log(Class cls)}} properly specifying the category.



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


[jira] [Created] (IGNITE-1378) Continuous processor doesn't remove message listener if continuous query failed to start

2015-09-04 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1378:
---

 Summary: Continuous processor doesn't remove message listener if 
continuous query failed to start
 Key: IGNITE-1378
 URL: https://issues.apache.org/jira/browse/IGNITE-1378
 Project: Ignite
  Issue Type: Bug
  Components: general
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
Priority: Blocker
 Fix For: ignite-1.4


{{GridContinuousProcessor.startRoutine(..)}} method adds message listener on 
line 538 and never removes it if handler registration fails (e.g., due to 
marshalling issues). Need to fix exception handling in this method.



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


[jira] [Created] (IGNITE-1311) Need to add memory footprint to cache metrics

2015-08-27 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1311:
---

 Summary: Need to add memory footprint to cache metrics
 Key: IGNITE-1311
 URL: https://issues.apache.org/jira/browse/IGNITE-1311
 Project: Ignite
  Issue Type: Improvement
  Components: cache
Affects Versions: 1.1.4
Reporter: Valentin Kulichenko
 Fix For: ignite-1.4


user@ thread: 
http://apache-ignite-users.70518.x6.nabble.com/Cache-entry-cost-and-total-cache-memory-footprint-would-be-nice-td1151.html



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


[jira] [Created] (IGNITE-1280) Near eviction policy doesn't work with off heap

2015-08-21 Thread Valentin Kulichenko (JIRA)
Valentin Kulichenko created IGNITE-1280:
---

 Summary: Near eviction policy doesn't work with off heap
 Key: IGNITE-1280
 URL: https://issues.apache.org/jira/browse/IGNITE-1280
 Project: Ignite
  Issue Type: Bug
  Components: cache
Affects Versions: 1.1.4
Reporter: Valentin Kulichenko
Assignee: Valentin Kulichenko
Priority: Blocker
 Fix For: ignite-1.4


See {{GridCacheEvictionManager}}, line 137. In case of {{OFFHEAP_TIERED}} mode 
policy is not used even for near caches.



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


<    1   2   3