[jira] [Comment Edited] (IGNITE-1371) Key-Value store (like Cassandra) as CacheStore

2016-06-03 Thread Igor Rudyak (JIRA)

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

Igor Rudyak edited comment on IGNITE-1371 at 6/4/16 5:20 AM:
-

Guys,

I think it makes sense to update "Persistent Store" documentation page 
https://apacheignite.readme.io/v1.6/docs/persistent-store to include there a 
link to ignite-cassandra module documentation, cause it's actually one more 
implementation of "Persistent Store".

What do you think?


was (Author: irudyak):
Guys,

I think it makes sense to update "Persistent Store" documentation page 
https://apacheignite.readme.io/v1.6/docs/persistent-store#cachejdbcblobstore to 
include there a link to ignite-cassandra module documentation, cause it's 
actually one more implementation of "Persistent Store".

What do you think?

> Key-Value store (like Cassandra) as CacheStore
> --
>
> Key: IGNITE-1371
> URL: https://issues.apache.org/jira/browse/IGNITE-1371
> Project: Ignite
>  Issue Type: New Feature
>  Components: cache
>Affects Versions: ignite-1.4
>Reporter: Alexandre Boudnik
>Assignee: Igor Rudyak
> Fix For: 1.6
>
> Attachments: master_02b59e4_ignite-1371.patch
>
>   Original Estimate: 504h
>  Remaining Estimate: 504h
>
> It will provide ability to map particular cache holding POJOs to Cassandra 
> table. Later it would be generalized to support eventually any any Key-Value 
> store.



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


[jira] [Commented] (IGNITE-1371) Key-Value store (like Cassandra) as CacheStore

2016-06-03 Thread Igor Rudyak (JIRA)

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

Igor Rudyak commented on IGNITE-1371:
-

Guys,

I think it makes sense to update "Persistent Store" documentation page 
https://apacheignite.readme.io/v1.6/docs/persistent-store#cachejdbcblobstore to 
include there a link to ignite-cassandra module documentation, cause it's 
actually one more implementation of "Persistent Store".

What do you think?

> Key-Value store (like Cassandra) as CacheStore
> --
>
> Key: IGNITE-1371
> URL: https://issues.apache.org/jira/browse/IGNITE-1371
> Project: Ignite
>  Issue Type: New Feature
>  Components: cache
>Affects Versions: ignite-1.4
>Reporter: Alexandre Boudnik
>Assignee: Igor Rudyak
> Fix For: 1.6
>
> Attachments: master_02b59e4_ignite-1371.patch
>
>   Original Estimate: 504h
>  Remaining Estimate: 504h
>
> It will provide ability to map particular cache holding POJOs to Cassandra 
> table. Later it would be generalized to support eventually any any Key-Value 
> store.



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


[jira] [Updated] (IGNITE-3242) JMX MBean for ignite-cassandra module

2016-06-03 Thread Igor Rudyak (JIRA)

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

Igor Rudyak updated IGNITE-3242:

Description: 
Ignite-Cassandra module should contain JMX MBean, allowing to monitor such 
custom metrics (for each Ignite cache and summary):

1. Size of Cassandra sessions pool
2. Number of times establishing/closing Cassandra sessions
3. Number of:
  * Records *READ* from Cassandra
  * Records *WRITTEN* to Casandra
  * Failed *READ* operations
  * Failed *WRITE* operations

4. Min/Max/Average number (and percentage) of attempts to retry failed 
*READ/WRITE/DELETE* operation until it succeed
5. Min/Max/Average/Summary sleep time until failed *READ/WRITE/DELETE* 
operation succeed after several attempts
6. Average time of *READ* operation
7. Average time of *WRITE* operation

  was:
Ignite-Cassandra module should contain JMX MBean, allowing to monitor such 
custom metrics (for each Ignite cache and summary):

1. Size of Cassandra sessions pool
2. Number of times establishing/closing Cassandra sessions
3. Number of:
  * Records **READ** from Cassandra
  * Records **WRITTEN** to Casandra
  * Failed **READ** operations
  * Failed **WRITE** operations

4. Min/Max/Average number (and percentage) of attempts to retry failed 
**READ/WRITE/DELETE** operation until it succeed
5. Min/Max/Average/Summary sleep time until failed **READ/WRITE/DELETE** 
operation succeed after several attempts
6. Average time of **READ** operation
7. Average time of **WRITE** operation


> JMX MBean for ignite-cassandra module
> -
>
> Key: IGNITE-3242
> URL: https://issues.apache.org/jira/browse/IGNITE-3242
> Project: Ignite
>  Issue Type: New Feature
>  Components: cache
>Reporter: Igor Rudyak
>Assignee: Igor Rudyak
>
> Ignite-Cassandra module should contain JMX MBean, allowing to monitor such 
> custom metrics (for each Ignite cache and summary):
> 1. Size of Cassandra sessions pool
> 2. Number of times establishing/closing Cassandra sessions
> 3. Number of:
>   * Records *READ* from Cassandra
>   * Records *WRITTEN* to Casandra
>   * Failed *READ* operations
>   * Failed *WRITE* operations
> 4. Min/Max/Average number (and percentage) of attempts to retry failed 
> *READ/WRITE/DELETE* operation until it succeed
> 5. Min/Max/Average/Summary sleep time until failed *READ/WRITE/DELETE* 
> operation succeed after several attempts
> 6. Average time of *READ* operation
> 7. Average time of *WRITE* operation



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


[jira] [Assigned] (IGNITE-1371) Key-Value store (like Cassandra) as CacheStore

2016-06-03 Thread Igor Rudyak (JIRA)

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

Igor Rudyak reassigned IGNITE-1371:
---

Assignee: Igor Rudyak

> Key-Value store (like Cassandra) as CacheStore
> --
>
> Key: IGNITE-1371
> URL: https://issues.apache.org/jira/browse/IGNITE-1371
> Project: Ignite
>  Issue Type: New Feature
>  Components: cache
>Affects Versions: ignite-1.4
>Reporter: Alexandre Boudnik
>Assignee: Igor Rudyak
> Fix For: 1.6
>
> Attachments: master_02b59e4_ignite-1371.patch
>
>   Original Estimate: 504h
>  Remaining Estimate: 504h
>
> It will provide ability to map particular cache holding POJOs to Cassandra 
> table. Later it would be generalized to support eventually any any Key-Value 
> store.



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


[jira] [Commented] (IGNITE-2879) ODBC: Add support for Decimal type (SQL_NUMERIC_STRUCT).

2016-06-03 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on IGNITE-2879:


GitHub user isapego opened a pull request:

https://github.com/apache/ignite/pull/779

IGNITE-2879: Add support for SQL_NUMERIC_STRUCT ODBC type.



You can merge this pull request into a Git repository by running:

$ git pull https://github.com/isapego/ignite ignite-2879

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/ignite/pull/779.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #779


commit cf7cf00efc0223c8769cf6e591b9193372b696e0
Author: isapego 
Date:   2016-05-24T10:52:43Z

IGNITE-2879: FixedSizeArray implemented.

commit d47eb9ed761359ee09989870517415230d2f22ae
Author: isapego 
Date:   2016-05-24T17:25:25Z

IGNITE-2879: Implemented DynamicSizeArray. Stub for BigInteger.

commit f81ae04a2b64b9ba8a3fff6f70914cffad620f37
Author: isapego 
Date:   2016-05-26T12:35:28Z

IGNITE-2879: Further progress on BigInteger.

commit 0abcb34d9eab146449dd2cc71bab0aa940192908
Author: isapego 
Date:   2016-05-26T17:10:25Z

IGNITE-2879: Implemented multiplication for the BigInteger class.

commit f387bea6170b9fce4de33f674e3ba15e0b6ed5af
Author: isapego 
Date:   2016-05-27T18:01:02Z

IGNITE-2879: Almost implemented division.

commit 14442c050ce9e1c68a78846037180ba629616aee
Author: isapego 
Date:   2016-05-30T10:36:44Z

IGNITE-2879: Division implemented for BigInteger.

commit aeb65530006f3dc1b77697fdaedfdd1e15be7d66
Author: isapego 
Date:   2016-05-30T17:18:27Z

IGNITE-2879: Implemented Decimal cast to SQL_NUMERIC.

commit f03d9bf814ab2a05d6982becf74f7bfb8f6538c9
Author: isapego 
Date:   2016-05-30T18:07:37Z

IGNITE-2879: All ODBC code implemented. Left to implement Decimal stubs.

commit f633d5542f30f8a8468f57fc2d7c5f0609d546b6
Author: isapego 
Date:   2016-05-31T12:43:39Z

IGNITE-2879: GetPrecision implemented.

commit 7778a840aad2f3f54e420dd5792bbd996c76344b
Author: isapego 
Date:   2016-05-31T18:18:36Z

IGNITE-2879: Output operation implemented for the BigInteger and Decimal
classes.

commit 92f28694c0cc6be3c5821f38957910ac6675036b
Author: isapego 
Date:   2016-06-01T14:51:32Z

IGNITE-2879: Implemented input operator for the Decimal.

commit 7769144302ddcf638692abafc1fe8112641455af
Author: isapego 
Date:   2016-06-01T16:37:41Z

IGNITE-2879: Added tests for Decimals. Fixes for Multiplication and Pow.

commit 27a97c509798789e7eb6b771fb9d2df083455c9b
Author: isapego 
Date:   2016-06-01T17:53:55Z

IGNITE-2879: Added tests. ToInt64() fixed.

commit ca479bba9f422d6b6487d16747c9e0a1c800c9ce
Author: isapego 
Date:   2016-06-02T16:28:42Z

IGNITE-2879: Fixed division algorithm (error in zero shifts). Added more
tests.

commit 308529142013697043d8c9af7cd75739c80be1d3
Author: isapego 
Date:   2016-06-02T16:48:35Z

IGNITE-2879: Added result normalization after the devision.

commit f0b4bc398feadc637bf5146549a33732be3ef131
Author: isapego 
Date:   2016-06-02T17:15:50Z

IGNITE-2879: Added tests. Fixed comparation.

commit 45231da060735bb723477cab63bda1a6327e191a
Author: isapego 
Date:   2016-06-02T17:45:56Z

IGNITE-2879: Added to/from double cast.

commit 81975b45b3d7687fd43c68e46cad20fc0e737a66
Author: isapego 
Date:   2016-06-03T13:08:39Z

IGNITE-2879: Added string constructors. Input/Output tests. Bugfixes.

commit 5ba6cde0a88d358fe5b958d66646c4f0a50eb6e3
Author: isapego 
Date:   2016-06-03T15:39:50Z

IGNITE-2879: Added tests for double. Fixed cast precision.

commit a048fcb86301cca79c883e7e6a653770736910d7
Author: isapego 
Date:   2016-06-03T16:15:14Z

IGNITE-2879: Fixed data buffer tests.

commit de49135b1c1c4e5b70d4db5b699a56c1162181ac
Author: isapego 
Date:   2016-06-03T17:07:43Z

IGNITE-2879: Safer assigns.

commit e10e0041d1835065f4d6f93e12510a9314bf9ede
Author: isapego 
Date:   2016-06-03T17:16:12Z

IGNITE-2879: Autotools fix.

commit 4029d4e46fd63261802c62c90487f0587ac2aff8
Author: isapego 
Date:   2016-06-03T17:29:51Z

IGNITE-2879: Some minor fixes.




> ODBC: Add support for Decimal type (SQL_NUMERIC_STRUCT).
> 
>
> Key: IGNITE-2879
> URL: https://issues.apache.org/jira/browse/IGNITE-2879
> Project: Ignite
>  Issue Type: Task
>  Components: odbc
>Affects Versions: 1.5.0.final
>Reporter: Igor Sapego
>Assignee: Igor Sapego
> Fix For: 1.7
>
>
> We need reasonable Decimal type support at least for the ODBC.



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


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

2016-06-03 Thread Alexei Scherbakov (JIRA)

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

Alexei Scherbakov commented on IGNITE-2680:
---

Added code to terminate executing reduce query.
Refactored tests, added different cancellation timeouts.

> 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
>Assignee: Alexei Scherbakov
>  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] [Comment Edited] (IGNITE-3235) Failed to initialize primitive boolean cache property of superclass

2016-06-03 Thread Anton Vinogradov (JIRA)

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

Anton Vinogradov edited comment on IGNITE-3235 at 6/3/16 3:55 PM:
--

Sergey, 

Seems that every field defined at superclass cause same issue.
Did you check that Boolean works?


was (Author: avinogradov):
Sergey, 

Did you check that Boolean works?

> Failed to initialize primitive boolean cache property of superclass
> ---
>
> Key: IGNITE-3235
> URL: https://issues.apache.org/jira/browse/IGNITE-3235
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Affects Versions: 1.5.0.final
>Reporter: Sergey Lemekhov
>Assignee: Anton Vinogradov
>Priority: Minor
> Fix For: 1.7
>
>
> When a superclass of a cache class contains a primitive boolean field marked 
> with {{@QuerySqlField}} annotation the cache initialization fails with an 
> exception:
> {{org.apache.ignite.IgniteCheckedException: Failed to initialize property 
> '' for key class '' and value class 'value class'. 
> Make sure that one of these classes contains respective getter method or 
> field.}}
> For example:
> {code}
> public class Base {
>@QuerySqlField
> private boolean flag;
> public boolean isFlag() {
> return flag;
> }
> public void setFlag(boolean flag) {
> this.flag = flag;
> }
> }
> public class Derived extends Base {
> private String field;
> public String getField() {
> return field;
> }
> public void setField(String field) {
> this.field = field;
> }
> }
> {code}
> This related to method 
> {{org.apache.ignite.internal.processors.query.GridQueryProcessor#buildClassProperty(boolean,
>  java.lang.Class, java.lang.String, java.lang.Class, 
> java.util.Map, 
> org.apache.ignite.internal.processors.cache.CacheObjectContext)}}.
> Method expects that all fields accessors start with "get" but for primitive 
> boolean fields usually the "is" prefix is used.



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


[jira] [Commented] (IGNITE-3235) Failed to initialize primitive boolean cache property of superclass

2016-06-03 Thread Anton Vinogradov (JIRA)

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

Anton Vinogradov commented on IGNITE-3235:
--

Sergey, 

Did you check that Boolean works?

> Failed to initialize primitive boolean cache property of superclass
> ---
>
> Key: IGNITE-3235
> URL: https://issues.apache.org/jira/browse/IGNITE-3235
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Affects Versions: 1.5.0.final
>Reporter: Sergey Lemekhov
>Assignee: Anton Vinogradov
>Priority: Minor
> Fix For: 1.7
>
>
> When a superclass of a cache class contains a primitive boolean field marked 
> with {{@QuerySqlField}} annotation the cache initialization fails with an 
> exception:
> {{org.apache.ignite.IgniteCheckedException: Failed to initialize property 
> '' for key class '' and value class 'value class'. 
> Make sure that one of these classes contains respective getter method or 
> field.}}
> For example:
> {code}
> public class Base {
>@QuerySqlField
> private boolean flag;
> public boolean isFlag() {
> return flag;
> }
> public void setFlag(boolean flag) {
> this.flag = flag;
> }
> }
> public class Derived extends Base {
> private String field;
> public String getField() {
> return field;
> }
> public void setField(String field) {
> this.field = field;
> }
> }
> {code}
> This related to method 
> {{org.apache.ignite.internal.processors.query.GridQueryProcessor#buildClassProperty(boolean,
>  java.lang.Class, java.lang.String, java.lang.Class, 
> java.util.Map, 
> org.apache.ignite.internal.processors.cache.CacheObjectContext)}}.
> Method expects that all fields accessors start with "get" but for primitive 
> boolean fields usually the "is" prefix is used.



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


[jira] [Commented] (IGNITE-3240) Arrays do not deserialize properly

2016-06-03 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on IGNITE-3240:


GitHub user dmagda opened a pull request:

https://github.com/apache/ignite/pull/777

IGNITE-3240: fixed serialization of String and other primitive arrays



You can merge this pull request into a Git repository by running:

$ git pull https://github.com/gridgain/apache-ignite ignite-3240

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/ignite/pull/777.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #777


commit 718384690d2e07de7bc4135eeb1e66098892f78c
Author: Denis Magda 
Date:   2016-06-03T11:18:18Z

IGNITE-3240: fixed serialization of String and other primitive arrays by 
CacheObjectBinaryProcessorImpl




> Arrays do not deserialize properly
> --
>
> Key: IGNITE-3240
> URL: https://issues.apache.org/jira/browse/IGNITE-3240
> Project: Ignite
>  Issue Type: Bug
>  Components: binary, cache
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>Assignee: Denis Magda
>Priority: Blocker
> Fix For: 1.7
>
>
> Code to reproduce:
> {code}
> IgniteCache cache = ignite.getOrCreateCache(CACHE_NAME);
> cache.put(1, new String[]{"hello", "world"});
> String[] res = cache.get(1);
> {code}
> The bug is in CacheObjectContext.unwrapBinariesInArrayIfNeeded method, which 
> always produces a new array.
> We should check for basic types somehow and skip this conversion.
> Generally, we NEVER want to change the type of the array, so the fix may be:
> {code}
> if (arr.getClass().getComponentType() != Object.class)
> return arr;
> {code}



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


[jira] [Updated] (IGNITE-3244) Custom arrays are not serialized properly by CacheObjectBinaryProcessorImpl

2016-06-03 Thread Denis Magda (JIRA)

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

Denis Magda updated IGNITE-3244:

Summary: Custom arrays are not serialized properly by 
CacheObjectBinaryProcessorImpl  (was: Custom arrays are not 
serialized/deserialized properly by CacheObjectBinaryProcessorImpl)

> Custom arrays are not serialized properly by CacheObjectBinaryProcessorImpl
> ---
>
> Key: IGNITE-3244
> URL: https://issues.apache.org/jira/browse/IGNITE-3244
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Affects Versions: ignite-1.4
>Reporter: Denis Magda
>Assignee: Denis Magda
>Priority: Critical
> Fix For: 1.7
>
>
> If to put a custom object array into a cache like this one
> {code}
> TestObject[] arr = new TestObject[] {new TestObject(i)};
> cache.put(0, arr);
> {code}
> then it will be serialized as Object[] array in 
> {{CacheObjectBinaryProcessorImpl.marshallToBinary}} method.
> This leads to the situation when object's array type is lost and on cache.get 
> the code below produces {{ClassCastException}}
> {code}
> TestObject[] obj = cache.get(i);
> {code}
> The full test is already added into 
> {{GridCacheBinaryObjectsAbstractSelfTest.testCustomArrays}}.
> To fix the issue we have to revisit logic of 
> {{CacheObjectBinaryProcessorImpl.marshallToBinary}} and 
> {{CacheObjectContext.unwrapBinary}}.



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


[jira] [Commented] (IGNITE-3240) Arrays do not deserialize properly

2016-06-03 Thread Denis Magda (JIRA)

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

Denis Magda commented on IGNITE-3240:
-

Fixed the issue for classes like Strings, Date, BigDecimal, etc. Checking on TC.

However the current fix is not enough for all possible custom arrays. More 
effort is needed to provide the general fix. Opened the ticket for this 
IGNITE-3244. 

> Arrays do not deserialize properly
> --
>
> Key: IGNITE-3240
> URL: https://issues.apache.org/jira/browse/IGNITE-3240
> Project: Ignite
>  Issue Type: Bug
>  Components: binary, cache
>Affects Versions: 1.1.4
>Reporter: Pavel Tupitsyn
>Assignee: Denis Magda
>Priority: Blocker
> Fix For: 1.7
>
>
> Code to reproduce:
> {code}
> IgniteCache cache = ignite.getOrCreateCache(CACHE_NAME);
> cache.put(1, new String[]{"hello", "world"});
> String[] res = cache.get(1);
> {code}
> The bug is in CacheObjectContext.unwrapBinariesInArrayIfNeeded method, which 
> always produces a new array.
> We should check for basic types somehow and skip this conversion.
> Generally, we NEVER want to change the type of the array, so the fix may be:
> {code}
> if (arr.getClass().getComponentType() != Object.class)
> return arr;
> {code}



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


[jira] [Created] (IGNITE-3244) Custom arrays are not serialized/deserialized properly by CacheObjectBinaryProcessorImpl

2016-06-03 Thread Denis Magda (JIRA)
Denis Magda created IGNITE-3244:
---

 Summary: Custom arrays are not serialized/deserialized properly by 
CacheObjectBinaryProcessorImpl
 Key: IGNITE-3244
 URL: https://issues.apache.org/jira/browse/IGNITE-3244
 Project: Ignite
  Issue Type: Bug
  Components: cache
Affects Versions: ignite-1.4
Reporter: Denis Magda
Assignee: Denis Magda
Priority: Critical
 Fix For: 1.7


If to put a custom object array into a cache like this one

{code}
TestObject[] arr = new TestObject[] {new TestObject(i)};

cache.put(0, arr);
{code}

then it will be serialized as Object[] array in 
{{CacheObjectBinaryProcessorImpl.marshallToBinary}} method.

This leads to the situation when object's array type is lost and on cache.get 
the code below produces {{ClassCastException}}

{code}
TestObject[] obj = cache.get(i);
{code}

The full test is already added into 
{{GridCacheBinaryObjectsAbstractSelfTest.testCustomArrays}}.

To fix the issue we have to revisit logic of 
{{CacheObjectBinaryProcessorImpl.marshallToBinary}} and 
{{CacheObjectContext.unwrapBinary}}.



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


[jira] [Commented] (IGNITE-3226) Load test: iteration over cache partitions using scan queries and performing transactions

2016-06-03 Thread Vladislav Pyatkov (JIRA)

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

Vladislav Pyatkov commented on IGNITE-3226:
---

[~dmagda] Thanks for the review.
I have corrected the code for your comments.

> Load test: iteration over cache partitions using scan queries and performing 
> transactions
> -
>
> Key: IGNITE-3226
> URL: https://issues.apache.org/jira/browse/IGNITE-3226
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Affects Versions: 1.6
>Reporter: Denis Magda
>Assignee: Vladislav Pyatkov
> Fix For: 1.7
>
>
> The following load test has to be added:
> - two caches are created (Persons and Deposit). Deposits are collocated by 
> Person;
> - Persons and Deposits are constructed with {{BinaryObjectBuilder}} and in 
> fact there won't be real classes for these data models;
> - data is preloaded with data streamers into the server nodes;
> - compute jobs are sent to the nodes that hold a particular partition;
> - the logic of the job iterates over a partition of Persons cache using 
> ScanQuery (local);
> - for every returned Person we should execute a local SQL query getting all 
> Person's deposits;
> - for every returned deposits we have to perform a pessimistic 
> repeatable-read transaction that will increase a deposit amount on some value.
> As an example you can refer to 
> https://github.com/gridgain/gridgain-advanced-examples/blob/master/src/main/java/org/gridgain/examples/datagrid/query/ScanQueryExample.java



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


[jira] [Closed] (IGNITE-3229) un existing link in Class GridCacheStoreValueBytesSelfTest

2016-06-03 Thread Denis Magda (JIRA)

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

Denis Magda closed IGNITE-3229.
---

> un existing link in Class GridCacheStoreValueBytesSelfTest
> --
>
> Key: IGNITE-3229
> URL: https://issues.apache.org/jira/browse/IGNITE-3229
> Project: Ignite
>  Issue Type: Bug
>Reporter: Biao Ma
>Assignee: Biao Ma
>
> Class GridCacheStoreValueBytesSelfTest' s annotation has linked to an un 
> existing  method  
> `org.apache.ignite.configuration.CacheConfiguration#isStoreValueBytes()`



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


[jira] [Commented] (IGNITE-3229) un existing link in Class GridCacheStoreValueBytesSelfTest

2016-06-03 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on IGNITE-3229:


Github user asfgit closed the pull request at:

https://github.com/apache/ignite/pull/770


> un existing link in Class GridCacheStoreValueBytesSelfTest
> --
>
> Key: IGNITE-3229
> URL: https://issues.apache.org/jira/browse/IGNITE-3229
> Project: Ignite
>  Issue Type: Bug
>Reporter: Biao Ma
>Assignee: Biao Ma
>
> Class GridCacheStoreValueBytesSelfTest' s annotation has linked to an un 
> existing  method  
> `org.apache.ignite.configuration.CacheConfiguration#isStoreValueBytes()`



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


[jira] [Resolved] (IGNITE-3229) un existing link in Class GridCacheStoreValueBytesSelfTest

2016-06-03 Thread Denis Magda (JIRA)

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

Denis Magda resolved IGNITE-3229.
-
Resolution: Fixed

> un existing link in Class GridCacheStoreValueBytesSelfTest
> --
>
> Key: IGNITE-3229
> URL: https://issues.apache.org/jira/browse/IGNITE-3229
> Project: Ignite
>  Issue Type: Bug
>Reporter: Biao Ma
>Assignee: Biao Ma
>
> Class GridCacheStoreValueBytesSelfTest' s annotation has linked to an un 
> existing  method  
> `org.apache.ignite.configuration.CacheConfiguration#isStoreValueBytes()`



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


[jira] [Commented] (IGNITE-3229) un existing link in Class GridCacheStoreValueBytesSelfTest

2016-06-03 Thread Denis Magda (JIRA)

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

Denis Magda commented on IGNITE-3229:
-

[~F7753], thanks for the contribution! I merged your changes.

> un existing link in Class GridCacheStoreValueBytesSelfTest
> --
>
> Key: IGNITE-3229
> URL: https://issues.apache.org/jira/browse/IGNITE-3229
> Project: Ignite
>  Issue Type: Bug
>Reporter: Biao Ma
>Assignee: Biao Ma
>
> Class GridCacheStoreValueBytesSelfTest' s annotation has linked to an un 
> existing  method  
> `org.apache.ignite.configuration.CacheConfiguration#isStoreValueBytes()`



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


[jira] [Commented] (IGNITE-2616) NonHeap memory usage metrics don't work as expected.

2016-06-03 Thread Denis Magda (JIRA)

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

Denis Magda commented on IGNITE-2616:
-

Ok, let me know when you're ready for review.

> NonHeap memory usage metrics don't work as expected.
> 
>
> Key: IGNITE-2616
> URL: https://issues.apache.org/jira/browse/IGNITE-2616
> Project: Ignite
>  Issue Type: Bug
>  Components: general
>Affects Versions: 1.5.0.final
>Reporter: Vladimir Ershov
>Assignee: Vladislav Pyatkov
>Priority: Minor
> Attachments: ClusterMetricsOnCacheSelfTest.java
>
>   Original Estimate: 48h
>  Remaining Estimate: 48h
>
> This simple code:
> {noformat}
> public static void main(String ... args) {
> MemoryMXBean mxBean = ManagementFactory.getMemoryMXBean();
> System.out.println(mxBean.getNonHeapMemoryUsage());
> GridUnsafeMemory uMem = new GridUnsafeMemory(1024L * 1024 * 1024 * 
> 3); //3GB
> System.out.println(mxBean.getNonHeapMemoryUsage());
> uMem.allocate(1024 * 1024 * 1024, true, false);
> System.out.println(mxBean.getNonHeapMemoryUsage());
> uMem.allocate(1024 * 1024 * 1024, true, true);
> System.out.println(mxBean.getNonHeapMemoryUsage());
> }
> {noformat}
> shows: 
> {noformat}
> init = 2555904(2496K) used = 4783352(4671K) committed = 8060928(7872K) max = 
> -1(-1K)
> init = 2555904(2496K) used = 5018704(4901K) committed = 8060928(7872K) max = 
> -1(-1K)
> init = 2555904(2496K) used = 5018960(4901K) committed = 8060928(7872K) max = 
> -1(-1K)
> init = 2555904(2496K) used = 5018960(4901K) committed = 8060928(7872K) max = 
> -1(-1K)
> {noformat}
> which means: offHeap metrics are incorrect. The  problem is: Apache Ignite 
> uses that MemoryMXBean  for collecting metrics, thus Apache Ignite offHeap 
> metrics are incorrect too. We should find the way to fix this, if there are 
> any.



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


[jira] [Commented] (IGNITE-2616) NonHeap memory usage metrics don't work as expected.

2016-06-03 Thread Vladislav Pyatkov (JIRA)

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

Vladislav Pyatkov commented on IGNITE-2616:
---

[~dmagda] Thank you for your review
I remade poll request and ran tests on TC.
If it pass good, need to be review again.

> NonHeap memory usage metrics don't work as expected.
> 
>
> Key: IGNITE-2616
> URL: https://issues.apache.org/jira/browse/IGNITE-2616
> Project: Ignite
>  Issue Type: Bug
>  Components: general
>Affects Versions: 1.5.0.final
>Reporter: Vladimir Ershov
>Assignee: Vladislav Pyatkov
>Priority: Minor
> Attachments: ClusterMetricsOnCacheSelfTest.java
>
>   Original Estimate: 48h
>  Remaining Estimate: 48h
>
> This simple code:
> {noformat}
> public static void main(String ... args) {
> MemoryMXBean mxBean = ManagementFactory.getMemoryMXBean();
> System.out.println(mxBean.getNonHeapMemoryUsage());
> GridUnsafeMemory uMem = new GridUnsafeMemory(1024L * 1024 * 1024 * 
> 3); //3GB
> System.out.println(mxBean.getNonHeapMemoryUsage());
> uMem.allocate(1024 * 1024 * 1024, true, false);
> System.out.println(mxBean.getNonHeapMemoryUsage());
> uMem.allocate(1024 * 1024 * 1024, true, true);
> System.out.println(mxBean.getNonHeapMemoryUsage());
> }
> {noformat}
> shows: 
> {noformat}
> init = 2555904(2496K) used = 4783352(4671K) committed = 8060928(7872K) max = 
> -1(-1K)
> init = 2555904(2496K) used = 5018704(4901K) committed = 8060928(7872K) max = 
> -1(-1K)
> init = 2555904(2496K) used = 5018960(4901K) committed = 8060928(7872K) max = 
> -1(-1K)
> init = 2555904(2496K) used = 5018960(4901K) committed = 8060928(7872K) max = 
> -1(-1K)
> {noformat}
> which means: offHeap metrics are incorrect. The  problem is: Apache Ignite 
> uses that MemoryMXBean  for collecting metrics, thus Apache Ignite offHeap 
> metrics are incorrect too. We should find the way to fix this, if there are 
> any.



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


[jira] [Resolved] (IGNITE-3079) We need to fix UI blinking in special case

2016-06-03 Thread Dmitriyff (JIRA)

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

Dmitriyff resolved IGNITE-3079.
---
Resolution: Fixed
  Assignee: Pavel Konstantinov  (was: Dmitriyff)

> We need to fix UI blinking in special case
> --
>
> Key: IGNITE-3079
> URL: https://issues.apache.org/jira/browse/IGNITE-3079
> Project: Ignite
>  Issue Type: Bug
>  Components: wizards
>Affects Versions: 1.6
>Reporter: Alexey Kuznetsov
>Assignee: Pavel Konstantinov
>Priority: Minor
> Fix For: 1.7
>
>
> In case when two components share same slot, but only one is visible at the 
> any moment. When state is changed there some blink is visible. After some 
> investigation it seems that ng-animate is the root of problem. We need to fix 
> this somehow.



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


[jira] [Commented] (IGNITE-2616) NonHeap memory usage metrics don't work as expected.

2016-06-03 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on IGNITE-2616:


GitHub user vldpyatkov opened a pull request:

https://github.com/apache/ignite/pull/776

IGNITE-2616

NonHeap memory usage metrics don't work as expected.

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/vldpyatkov/ignite ignite-2616

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/ignite/pull/776.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #776


commit e1d1f1d99aba1390bef65c62c69c4dfc320b3482
Author: vdpyatkov 
Date:   2016-06-03T08:27:37Z

IGNITE-2616
NonHeap memory usage metrics don't work as expected.




> NonHeap memory usage metrics don't work as expected.
> 
>
> Key: IGNITE-2616
> URL: https://issues.apache.org/jira/browse/IGNITE-2616
> Project: Ignite
>  Issue Type: Bug
>  Components: general
>Affects Versions: 1.5.0.final
>Reporter: Vladimir Ershov
>Assignee: Vladislav Pyatkov
>Priority: Minor
> Attachments: ClusterMetricsOnCacheSelfTest.java
>
>   Original Estimate: 48h
>  Remaining Estimate: 48h
>
> This simple code:
> {noformat}
> public static void main(String ... args) {
> MemoryMXBean mxBean = ManagementFactory.getMemoryMXBean();
> System.out.println(mxBean.getNonHeapMemoryUsage());
> GridUnsafeMemory uMem = new GridUnsafeMemory(1024L * 1024 * 1024 * 
> 3); //3GB
> System.out.println(mxBean.getNonHeapMemoryUsage());
> uMem.allocate(1024 * 1024 * 1024, true, false);
> System.out.println(mxBean.getNonHeapMemoryUsage());
> uMem.allocate(1024 * 1024 * 1024, true, true);
> System.out.println(mxBean.getNonHeapMemoryUsage());
> }
> {noformat}
> shows: 
> {noformat}
> init = 2555904(2496K) used = 4783352(4671K) committed = 8060928(7872K) max = 
> -1(-1K)
> init = 2555904(2496K) used = 5018704(4901K) committed = 8060928(7872K) max = 
> -1(-1K)
> init = 2555904(2496K) used = 5018960(4901K) committed = 8060928(7872K) max = 
> -1(-1K)
> init = 2555904(2496K) used = 5018960(4901K) committed = 8060928(7872K) max = 
> -1(-1K)
> {noformat}
> which means: offHeap metrics are incorrect. The  problem is: Apache Ignite 
> uses that MemoryMXBean  for collecting metrics, thus Apache Ignite offHeap 
> metrics are incorrect too. We should find the way to fix this, if there are 
> any.



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


[jira] [Commented] (IGNITE-2655) AffinityFunction: primary and backup copies in different locations

2016-06-03 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on IGNITE-2655:


Github user vldpyatkov closed the pull request at:

https://github.com/apache/ignite/pull/731


> AffinityFunction: primary and backup copies in different locations
> --
>
> Key: IGNITE-2655
> URL: https://issues.apache.org/jira/browse/IGNITE-2655
> Project: Ignite
>  Issue Type: Bug
>Reporter: Denis Magda
>Assignee: Vladislav Pyatkov
>Priority: Critical
>  Labels: important
> Fix For: 1.7
>
>
> There is a use case when primary and backup copies have to be located in 
> different racks, building, cities, etc.
> A simple scenario is the following. When nodes are started they will have 
> either "rack1" or "rack2" value in their attributes list and we will enforce 
> that the backups won't be selected among the nodes with the same attribute.
> It should be possible to filter out backups using IP addresses as well.
> Presently rendezvous and fair affinity function has {{backupFilter}} that 
> will work perfectly for the scenario above but only for cases when number of 
> backups for a cache is equal to 1.
> In case when the number of backups is bigger than one {{backupFilter}} will 
> only guarantee that the primary is located in different location but will NOT 
> guarantee that all the backups are spread out across different locations as 
> well.
> So we need to provide an API that will allow to spread the primary and ALL 
> backups copies across different locations.
> The proposal is to introduce {{AffinityBackupFilter}} with the following 
> method
> {{AffinityBackupFilter.isAssignable(Node n, List assigned)}}
> Where n - potential backup to check, assigned - list of current partition 
> holders, 1st is primary
> {{AffinityBackupFilter}} will be set using 
> {{affinity.setAffinityBackupFilter}}.
> {{Affinity.setBackupFilter}} has to be deprecated.



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


[jira] [Commented] (IGNITE-2616) NonHeap memory usage metrics don't work as expected.

2016-06-03 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on IGNITE-2616:


Github user vldpyatkov closed the pull request at:

https://github.com/apache/ignite/pull/762


> NonHeap memory usage metrics don't work as expected.
> 
>
> Key: IGNITE-2616
> URL: https://issues.apache.org/jira/browse/IGNITE-2616
> Project: Ignite
>  Issue Type: Bug
>  Components: general
>Affects Versions: 1.5.0.final
>Reporter: Vladimir Ershov
>Assignee: Vladislav Pyatkov
>Priority: Minor
> Attachments: ClusterMetricsOnCacheSelfTest.java
>
>   Original Estimate: 48h
>  Remaining Estimate: 48h
>
> This simple code:
> {noformat}
> public static void main(String ... args) {
> MemoryMXBean mxBean = ManagementFactory.getMemoryMXBean();
> System.out.println(mxBean.getNonHeapMemoryUsage());
> GridUnsafeMemory uMem = new GridUnsafeMemory(1024L * 1024 * 1024 * 
> 3); //3GB
> System.out.println(mxBean.getNonHeapMemoryUsage());
> uMem.allocate(1024 * 1024 * 1024, true, false);
> System.out.println(mxBean.getNonHeapMemoryUsage());
> uMem.allocate(1024 * 1024 * 1024, true, true);
> System.out.println(mxBean.getNonHeapMemoryUsage());
> }
> {noformat}
> shows: 
> {noformat}
> init = 2555904(2496K) used = 4783352(4671K) committed = 8060928(7872K) max = 
> -1(-1K)
> init = 2555904(2496K) used = 5018704(4901K) committed = 8060928(7872K) max = 
> -1(-1K)
> init = 2555904(2496K) used = 5018960(4901K) committed = 8060928(7872K) max = 
> -1(-1K)
> init = 2555904(2496K) used = 5018960(4901K) committed = 8060928(7872K) max = 
> -1(-1K)
> {noformat}
> which means: offHeap metrics are incorrect. The  problem is: Apache Ignite 
> uses that MemoryMXBean  for collecting metrics, thus Apache Ignite offHeap 
> metrics are incorrect too. We should find the way to fix this, if there are 
> any.



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