[jira] [Closed] (IGNITE-7265) BPlusTreeSelfTest.testIterateConcurrentPutRemove_1 fails

2019-02-01 Thread Sergi Vladykin (JIRA)


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

Sergi Vladykin closed IGNITE-7265.
--

merged to master: 9e47ee55f30b16083766d0766bacdf10acce8d3e

> BPlusTreeSelfTest.testIterateConcurrentPutRemove_1 fails
> 
>
> Key: IGNITE-7265
> URL: https://issues.apache.org/jira/browse/IGNITE-7265
> Project: Ignite
>  Issue Type: Bug
>  Components: sql
>Reporter: Vladimir Ozerov
>Assignee: Sergi Vladykin
>Priority: Major
>  Labels: pagememory
> Fix For: 2.8
>
>
> {code}
> java.lang.AssertionError: Assertion error on row: 26
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.doPut(BPlusTree.java:2221)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.put(BPlusTree.java:2156)
>   at 
> org.apache.ignite.internal.processors.database.BPlusTreeSelfTest.iterateConcurrentPutRemove(BPlusTreeSelfTest.java:2202)
>   at 
> org.apache.ignite.internal.processors.database.BPlusTreeSelfTest.testIterateConcurrentPutRemove_1(BPlusTreeSelfTest.java:2169)
>   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:498)
>   at junit.framework.TestCase.runTest(TestCase.java:176)
>   at 
> org.apache.ignite.testframework.junits.GridAbstractTest.runTestInternal(GridAbstractTest.java:2008)
>   at 
> org.apache.ignite.testframework.junits.GridAbstractTest.access$000(GridAbstractTest.java:132)
>   at 
> org.apache.ignite.testframework.junits.GridAbstractTest$5.run(GridAbstractTest.java:1923)
>   at java.lang.Thread.run(Thread.java:748)
> Caused by: java.lang.AssertionError: 27
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.io.BPlusMetaIO.setLevelsCount(BPlusMetaIO.java:98)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.io.BPlusMetaIO.addRoot(BPlusMetaIO.java:155)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$AddRoot.run(BPlusTree.java:661)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$AddRoot.run(BPlusTree.java:650)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.util.PageHandler.writePage(PageHandler.java:277)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.DataStructure.write(DataStructure.java:241)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.access$10500(BPlusTree.java:82)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Put.insertWithSplit(BPlusTree.java:3073)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Put.insert(BPlusTree.java:2949)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Put.access$2500(BPlusTree.java:2831)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Insert.run0(BPlusTree.java:420)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Insert.run0(BPlusTree.java:401)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$GetPageHandler.run(BPlusTree.java:5153)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$GetPageHandler.run(BPlusTree.java:5138)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.util.PageHandler.writePage(PageHandler.java:342)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.DataStructure.write(DataStructure.java:261)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.access$11100(BPlusTree.java:82)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Put.tryInsert(BPlusTree.java:3143)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Put.access$7500(BPlusTree.java:2831)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.putDown(BPlusTree.java:2464)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.doPut(BPlusTree.java:2185)
>   ... 12 more
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (IGNITE-7265) BPlusTreeSelfTest.testIterateConcurrentPutRemove_1 fails

2019-02-01 Thread Sergi Vladykin (JIRA)


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

Sergi Vladykin resolved IGNITE-7265.

Resolution: Fixed

Single key per page is a degenerate case: it is very hard to merge pages in a 
tree because
to merge we need to remove a split key from a parent page and add it to a back 
page, but this
is impossible if we already have a key in a back page, thus we will have lots 
of empty routing pages.
This way the tree grows faster than shrinks and gets out of height limit of 26 
(for this page size) quickly.

Reduced number of keys to 26 for this test.

> BPlusTreeSelfTest.testIterateConcurrentPutRemove_1 fails
> 
>
> Key: IGNITE-7265
> URL: https://issues.apache.org/jira/browse/IGNITE-7265
> Project: Ignite
>  Issue Type: Bug
>  Components: sql
>Reporter: Vladimir Ozerov
>Assignee: Sergi Vladykin
>Priority: Major
>  Labels: pagememory
> Fix For: 2.8
>
>
> {code}
> java.lang.AssertionError: Assertion error on row: 26
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.doPut(BPlusTree.java:2221)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.put(BPlusTree.java:2156)
>   at 
> org.apache.ignite.internal.processors.database.BPlusTreeSelfTest.iterateConcurrentPutRemove(BPlusTreeSelfTest.java:2202)
>   at 
> org.apache.ignite.internal.processors.database.BPlusTreeSelfTest.testIterateConcurrentPutRemove_1(BPlusTreeSelfTest.java:2169)
>   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:498)
>   at junit.framework.TestCase.runTest(TestCase.java:176)
>   at 
> org.apache.ignite.testframework.junits.GridAbstractTest.runTestInternal(GridAbstractTest.java:2008)
>   at 
> org.apache.ignite.testframework.junits.GridAbstractTest.access$000(GridAbstractTest.java:132)
>   at 
> org.apache.ignite.testframework.junits.GridAbstractTest$5.run(GridAbstractTest.java:1923)
>   at java.lang.Thread.run(Thread.java:748)
> Caused by: java.lang.AssertionError: 27
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.io.BPlusMetaIO.setLevelsCount(BPlusMetaIO.java:98)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.io.BPlusMetaIO.addRoot(BPlusMetaIO.java:155)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$AddRoot.run(BPlusTree.java:661)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$AddRoot.run(BPlusTree.java:650)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.util.PageHandler.writePage(PageHandler.java:277)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.DataStructure.write(DataStructure.java:241)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.access$10500(BPlusTree.java:82)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Put.insertWithSplit(BPlusTree.java:3073)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Put.insert(BPlusTree.java:2949)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Put.access$2500(BPlusTree.java:2831)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Insert.run0(BPlusTree.java:420)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Insert.run0(BPlusTree.java:401)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$GetPageHandler.run(BPlusTree.java:5153)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$GetPageHandler.run(BPlusTree.java:5138)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.util.PageHandler.writePage(PageHandler.java:342)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.DataStructure.write(DataStructure.java:261)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.access$11100(BPlusTree.java:82)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Put.tryInsert(BPlusTree.java:3143)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Put.access$7500(BPlusTree.java:2831)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.putDown(BPlusTree.java:2464)
>   at 
> 

[jira] [Assigned] (IGNITE-7265) BPlusTreeSelfTest.testIterateConcurrentPutRemove_1 fails

2019-02-01 Thread Sergi Vladykin (JIRA)


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

Sergi Vladykin reassigned IGNITE-7265:
--

Assignee: Sergi Vladykin

> BPlusTreeSelfTest.testIterateConcurrentPutRemove_1 fails
> 
>
> Key: IGNITE-7265
> URL: https://issues.apache.org/jira/browse/IGNITE-7265
> Project: Ignite
>  Issue Type: Bug
>  Components: sql
>Reporter: Vladimir Ozerov
>Assignee: Sergi Vladykin
>Priority: Major
>  Labels: pagememory
> Fix For: 2.8
>
>
> {code}
> java.lang.AssertionError: Assertion error on row: 26
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.doPut(BPlusTree.java:2221)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.put(BPlusTree.java:2156)
>   at 
> org.apache.ignite.internal.processors.database.BPlusTreeSelfTest.iterateConcurrentPutRemove(BPlusTreeSelfTest.java:2202)
>   at 
> org.apache.ignite.internal.processors.database.BPlusTreeSelfTest.testIterateConcurrentPutRemove_1(BPlusTreeSelfTest.java:2169)
>   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:498)
>   at junit.framework.TestCase.runTest(TestCase.java:176)
>   at 
> org.apache.ignite.testframework.junits.GridAbstractTest.runTestInternal(GridAbstractTest.java:2008)
>   at 
> org.apache.ignite.testframework.junits.GridAbstractTest.access$000(GridAbstractTest.java:132)
>   at 
> org.apache.ignite.testframework.junits.GridAbstractTest$5.run(GridAbstractTest.java:1923)
>   at java.lang.Thread.run(Thread.java:748)
> Caused by: java.lang.AssertionError: 27
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.io.BPlusMetaIO.setLevelsCount(BPlusMetaIO.java:98)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.io.BPlusMetaIO.addRoot(BPlusMetaIO.java:155)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$AddRoot.run(BPlusTree.java:661)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$AddRoot.run(BPlusTree.java:650)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.util.PageHandler.writePage(PageHandler.java:277)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.DataStructure.write(DataStructure.java:241)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.access$10500(BPlusTree.java:82)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Put.insertWithSplit(BPlusTree.java:3073)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Put.insert(BPlusTree.java:2949)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Put.access$2500(BPlusTree.java:2831)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Insert.run0(BPlusTree.java:420)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Insert.run0(BPlusTree.java:401)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$GetPageHandler.run(BPlusTree.java:5153)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$GetPageHandler.run(BPlusTree.java:5138)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.util.PageHandler.writePage(PageHandler.java:342)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.DataStructure.write(DataStructure.java:261)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.access$11100(BPlusTree.java:82)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Put.tryInsert(BPlusTree.java:3143)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Put.access$7500(BPlusTree.java:2831)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.putDown(BPlusTree.java:2464)
>   at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.doPut(BPlusTree.java:2185)
>   ... 12 more
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-10798) Data page scan for ScanQuery, SqlQuery and SqlFieldsQuery

2019-01-21 Thread Sergi Vladykin (JIRA)


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

Sergi Vladykin commented on IGNITE-10798:
-

Merged to master: bc209d082bd905f0e8e6fd5cf38306336129d4d0

> Data page scan for ScanQuery, SqlQuery and SqlFieldsQuery
> -
>
> Key: IGNITE-10798
> URL: https://issues.apache.org/jira/browse/IGNITE-10798
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache, sql
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
>Priority: Major
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (IGNITE-10798) Data page scan for ScanQuery, SqlQuery and SqlFieldsQuery

2019-01-21 Thread Sergi Vladykin (JIRA)


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

Sergi Vladykin resolved IGNITE-10798.
-
Resolution: Fixed

> Data page scan for ScanQuery, SqlQuery and SqlFieldsQuery
> -
>
> Key: IGNITE-10798
> URL: https://issues.apache.org/jira/browse/IGNITE-10798
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache, sql
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
>Priority: Major
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Closed] (IGNITE-10798) Data page scan for ScanQuery, SqlQuery and SqlFieldsQuery

2019-01-21 Thread Sergi Vladykin (JIRA)


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

Sergi Vladykin closed IGNITE-10798.
---

> Data page scan for ScanQuery, SqlQuery and SqlFieldsQuery
> -
>
> Key: IGNITE-10798
> URL: https://issues.apache.org/jira/browse/IGNITE-10798
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache, sql
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
>Priority: Major
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-10798) Data page scan for ScanQuery, SqlQuery and SqlFieldsQuery

2019-01-17 Thread Sergi Vladykin (JIRA)


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

Sergi Vladykin commented on IGNITE-10798:
-

[~gvvinblade], Thanks! Just added manual sorting to the test and it passes.

> Data page scan for ScanQuery, SqlQuery and SqlFieldsQuery
> -
>
> Key: IGNITE-10798
> URL: https://issues.apache.org/jira/browse/IGNITE-10798
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache, sql
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
>Priority: Major
> Fix For: 2.8
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-10798) Data page scan for ScanQuery, SqlQuery and SqlFieldsQuery

2019-01-14 Thread Sergi Vladykin (JIRA)


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

Sergi Vladykin commented on IGNITE-10798:
-

# Done.
 # Done (though not sure if covered all the possible cases by tests).
 # Lazy + DataPageScan supported, tests added.
 # Not sure what exactly we have to test here, also none of these tests 
included in any suite.
 # Created IGNITE-10937
 # Done (enabled data page scan by default for SQL + fixed segmentation for 
HashIdx).
 # Probably we should have some metric like `number of touched pages` in 
EXPLAIN ANALYZE, but I believe it is out of scope here.
 # Added tests, but concurrent updates with MVCC hang, disabled them for now.

 

> Data page scan for ScanQuery, SqlQuery and SqlFieldsQuery
> -
>
> Key: IGNITE-10798
> URL: https://issues.apache.org/jira/browse/IGNITE-10798
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache, sql
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
>Priority: Major
> Fix For: 2.8
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Assigned] (IGNITE-10937) Support data page scan for JDBC/ODBC

2019-01-14 Thread Sergi Vladykin (JIRA)


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

Sergi Vladykin reassigned IGNITE-10937:
---

Assignee: Vladimir Ozerov

> Support data page scan for JDBC/ODBC
> 
>
> Key: IGNITE-10937
> URL: https://issues.apache.org/jira/browse/IGNITE-10937
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Sergi Vladykin
>Assignee: Vladimir Ozerov
>Priority: Major
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (IGNITE-10937) Support data page scan for JDBC/ODBC

2019-01-14 Thread Sergi Vladykin (JIRA)
Sergi Vladykin created IGNITE-10937:
---

 Summary: Support data page scan for JDBC/ODBC
 Key: IGNITE-10937
 URL: https://issues.apache.org/jira/browse/IGNITE-10937
 Project: Ignite
  Issue Type: Improvement
Reporter: Sergi Vladykin






--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-10798) Data page scan for ScanQuery, SqlQuery and SqlFieldsQuery

2019-01-10 Thread Sergi Vladykin (JIRA)


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

Sergi Vladykin commented on IGNITE-10798:
-

Agree, I will add more tests and docs. Probably will send to the review next 
week.

Probably we can enable direct scan by default for SQL. 

Not sure if we need it in EXPLAIN if we enable this thing by default.

 

 

 

> Data page scan for ScanQuery, SqlQuery and SqlFieldsQuery
> -
>
> Key: IGNITE-10798
> URL: https://issues.apache.org/jira/browse/IGNITE-10798
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache, sql
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
>Priority: Major
> Fix For: 2.8
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Assigned] (IGNITE-10798) Data page scan for ScanQuery, SqlQuery and SqlFieldsQuery

2018-12-24 Thread Sergi Vladykin (JIRA)


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

Sergi Vladykin reassigned IGNITE-10798:
---

Assignee: Vladimir Ozerov  (was: Sergi Vladykin)

Please review.

> Data page scan for ScanQuery, SqlQuery and SqlFieldsQuery
> -
>
> Key: IGNITE-10798
> URL: https://issues.apache.org/jira/browse/IGNITE-10798
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Sergi Vladykin
>Assignee: Vladimir Ozerov
>Priority: Major
> Fix For: 2.8
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (IGNITE-10798) Data page scan for ScanQuery, SqlQuery and SqlFieldsQuery

2018-12-24 Thread Sergi Vladykin (JIRA)
Sergi Vladykin created IGNITE-10798:
---

 Summary: Data page scan for ScanQuery, SqlQuery and SqlFieldsQuery
 Key: IGNITE-10798
 URL: https://issues.apache.org/jira/browse/IGNITE-10798
 Project: Ignite
  Issue Type: Improvement
Reporter: Sergi Vladykin
Assignee: Sergi Vladykin






--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (IGNITE-10488) ClusterCachesInfo.validateCacheGroupConfiguration should check cache compression configuration

2018-12-17 Thread Sergi Vladykin (JIRA)


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

Sergi Vladykin resolved IGNITE-10488.
-
Resolution: Fixed

Merged to master:

https://github.com/apache/ignite/commit/5fb803a2c92f0f0844e88acbcb81f508873bd7f7

> ClusterCachesInfo.validateCacheGroupConfiguration should check cache 
> compression configuration
> --
>
> Key: IGNITE-10488
> URL: https://issues.apache.org/jira/browse/IGNITE-10488
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Reporter: Vasiliy Sisko
>Assignee: Sergi Vladykin
>Priority: Major
> Fix For: 2.8
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Assigned] (IGNITE-10488) ClusterCachesInfo.validateCacheGroupConfiguration should check cache compression configuration

2018-12-05 Thread Sergi Vladykin (JIRA)


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

Sergi Vladykin reassigned IGNITE-10488:
---

Assignee: Sergi Vladykin

> ClusterCachesInfo.validateCacheGroupConfiguration should check cache 
> compression configuration
> --
>
> Key: IGNITE-10488
> URL: https://issues.apache.org/jira/browse/IGNITE-10488
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Reporter: Vasiliy Sisko
>Assignee: Sergi Vladykin
>Priority: Major
> Fix For: 2.8
>
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10431) Make tests independent of page size

2018-11-27 Thread Sergi Vladykin (JIRA)


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

Sergi Vladykin updated IGNITE-10431:

Summary: Make tests independent of page size  (was: Make tests independent 
of memory size)

> Make tests independent of page size
> ---
>
> Key: IGNITE-10431
> URL: https://issues.apache.org/jira/browse/IGNITE-10431
> Project: Ignite
>  Issue Type: Bug
>Reporter: Sergi Vladykin
>Priority: Major
>
> The following tests were added to Page Compression suite and they fail 
> because page size there increased to 8k.
> {code:java}
> org.apache.ignite.testsuites.IgnitePdsCompressionTestSuite2…g.apache.ignite.internal.processors.cache.persistence.db.wal
>  (4)
>  IgniteWALTailIsReachedDuringIterationOverArchiveTest.testStandAloneIterator  
>  IgniteWalFormatFileFailoverTest.testFailureHandlerTriggered  
>  IgniteWalFormatFileFailoverTest.testFailureHandlerTriggeredFsync 
>  IgniteWalIteratorExceptionDuringReadTest.test    
> org.apache.ignite.testsuites.IgnitePdsCompressionTestSuite2…e.ignite.internal.processors.cache.persistence.db.wal.reader
>  (9)
>  IgniteWalReaderTest.testCheckBoundsIterator  
>  IgniteWalReaderTest.testFillWalAndReadRecords    
>  IgniteWalReaderTest.testFillWalForExactSegmentsCount 
>  IgniteWalReaderTest.testFillWalWithDifferentTypes    
>  IgniteWalReaderTest.testPutAllTxIntoTwoNodes 
>  IgniteWalReaderTest.testRemoveOperationPresentedForDataEntry 
>  IgniteWalReaderTest.testRemoveOperationPresentedForDataEntryForAtomic    
>  IgniteWalReaderTest.testTxFillWalAndExtractDataRecords   
>  IgniteWalReaderTest.testTxRecordsReadWoBinaryMeta    
> org.apache.ignite.testsuites.IgnitePdsCompressionTestSuite2…ache.ignite.internal.processors.cache.persistence.wal.reader
>  (2)
>  StandaloneWalRecordsIteratorTest.testCorrectClosingFileDescriptors   
>  StandaloneWalRecordsIteratorTest.testStrictBounds 
> {code}
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (IGNITE-10431) Make tests independent of memory size

2018-11-27 Thread Sergi Vladykin (JIRA)
Sergi Vladykin created IGNITE-10431:
---

 Summary: Make tests independent of memory size
 Key: IGNITE-10431
 URL: https://issues.apache.org/jira/browse/IGNITE-10431
 Project: Ignite
  Issue Type: Bug
Reporter: Sergi Vladykin


The following tests were added to Page Compression suite and they fail because 
page size there increased to 8k.
{code:java}
org.apache.ignite.testsuites.IgnitePdsCompressionTestSuite2…g.apache.ignite.internal.processors.cache.persistence.db.wal
 (4)
 IgniteWALTailIsReachedDuringIterationOverArchiveTest.testStandAloneIterator    
 IgniteWalFormatFileFailoverTest.testFailureHandlerTriggered    
 IgniteWalFormatFileFailoverTest.testFailureHandlerTriggeredFsync   
 IgniteWalIteratorExceptionDuringReadTest.test  
org.apache.ignite.testsuites.IgnitePdsCompressionTestSuite2…e.ignite.internal.processors.cache.persistence.db.wal.reader
 (9)
 IgniteWalReaderTest.testCheckBoundsIterator    
 IgniteWalReaderTest.testFillWalAndReadRecords  
 IgniteWalReaderTest.testFillWalForExactSegmentsCount   
 IgniteWalReaderTest.testFillWalWithDifferentTypes  
 IgniteWalReaderTest.testPutAllTxIntoTwoNodes   
 IgniteWalReaderTest.testRemoveOperationPresentedForDataEntry   
 IgniteWalReaderTest.testRemoveOperationPresentedForDataEntryForAtomic  
 IgniteWalReaderTest.testTxFillWalAndExtractDataRecords 
 IgniteWalReaderTest.testTxRecordsReadWoBinaryMeta  
org.apache.ignite.testsuites.IgnitePdsCompressionTestSuite2…ache.ignite.internal.processors.cache.persistence.wal.reader
 (2)
 StandaloneWalRecordsIteratorTest.testCorrectClosingFileDescriptors 
 StandaloneWalRecordsIteratorTest.testStrictBounds 
{code}
 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10330) Implement disk page compression

2018-11-27 Thread Sergi Vladykin (JIRA)


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

Sergi Vladykin updated IGNITE-10330:

Description: 
IEP: 
[https://cwiki.apache.org/confluence/display/IGNITE/IEP-20%3A+Data+Compression+in+Ignite#IEP-20:DataCompressioninIgnite-Withoutin-memorycompression]

Dev: 
http://apache-ignite-developers.2346864.n4.nabble.com/Disk-page-compression-for-Ignite-persistent-store-td38009.html

 

  was:
IEP: 
[https://cwiki.apache.org/confluence/display/IGNITE/IEP-20%3A+Data+Compression+in+Ignite#IEP-20:DataCompressioninIgnite-Withoutin-memorycompression]

 

 


> Implement disk page compression
> ---
>
> Key: IGNITE-10330
> URL: https://issues.apache.org/jira/browse/IGNITE-10330
> Project: Ignite
>  Issue Type: New Feature
>  Components: cache
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
>Priority: Major
> Fix For: 2.8
>
>
> IEP: 
> [https://cwiki.apache.org/confluence/display/IGNITE/IEP-20%3A+Data+Compression+in+Ignite#IEP-20:DataCompressioninIgnite-Withoutin-memorycompression]
> Dev: 
> http://apache-ignite-developers.2346864.n4.nabble.com/Disk-page-compression-for-Ignite-persistent-store-td38009.html
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10330) Implement disk page compression

2018-11-27 Thread Sergi Vladykin (JIRA)


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

Sergi Vladykin updated IGNITE-10330:

Description: 
IEP: 
[https://cwiki.apache.org/confluence/display/IGNITE/IEP-20%3A+Data+Compression+in+Ignite#IEP-20:DataCompressioninIgnite-Withoutin-memorycompression]

 

 

> Implement disk page compression
> ---
>
> Key: IGNITE-10330
> URL: https://issues.apache.org/jira/browse/IGNITE-10330
> Project: Ignite
>  Issue Type: New Feature
>  Components: cache
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
>Priority: Major
> Fix For: 2.8
>
>
> IEP: 
> [https://cwiki.apache.org/confluence/display/IGNITE/IEP-20%3A+Data+Compression+in+Ignite#IEP-20:DataCompressioninIgnite-Withoutin-memorycompression]
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Closed] (IGNITE-10338) Add Disk page compression test suites to TC

2018-11-26 Thread Sergi Vladykin (JIRA)


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

Sergi Vladykin closed IGNITE-10338.
---

> Add Disk page compression test suites to TC
> ---
>
> Key: IGNITE-10338
> URL: https://issues.apache.org/jira/browse/IGNITE-10338
> Project: Ignite
>  Issue Type: Test
>Reporter: Sergi Vladykin
>Assignee: Peter Ivanov
>Priority: Major
>
> There are 2 suites in the module ignite-compress:
> org.apache.ignite.testsuites.IgnitePdsCompressionTestSuite
> org.apache.ignite.testsuites.IgnitePdsCompressionTestSuite2
>  
> They should be executed the same way as Direct-IO suites only on Linux agents.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Comment Edited] (IGNITE-10330) Implement disk page compression

2018-11-23 Thread Sergi Vladykin (JIRA)


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

Sergi Vladykin edited comment on IGNITE-10330 at 11/23/18 2:00 PM:
---

Already created IGNITE-10332


was (Author: sergi.vladykin):
Already create  IGNITE-10332

> Implement disk page compression
> ---
>
> Key: IGNITE-10330
> URL: https://issues.apache.org/jira/browse/IGNITE-10330
> Project: Ignite
>  Issue Type: New Feature
>  Components: cache
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
>Priority: Major
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-10330) Implement disk page compression

2018-11-23 Thread Sergi Vladykin (JIRA)


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

Sergi Vladykin commented on IGNITE-10330:
-

Already create  IGNITE-10332

> Implement disk page compression
> ---
>
> Key: IGNITE-10330
> URL: https://issues.apache.org/jira/browse/IGNITE-10330
> Project: Ignite
>  Issue Type: New Feature
>  Components: cache
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
>Priority: Major
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (IGNITE-10338) Add Disk page compression test suites to TC

2018-11-19 Thread Sergi Vladykin (JIRA)
Sergi Vladykin created IGNITE-10338:
---

 Summary: Add Disk page compression test suites to TC
 Key: IGNITE-10338
 URL: https://issues.apache.org/jira/browse/IGNITE-10338
 Project: Ignite
  Issue Type: Test
Reporter: Sergi Vladykin
Assignee: Peter Ivanov


There are 2 suites in the module ignite-compress:

org.apache.ignite.testsuites.IgnitePdsCompressionTestSuite

org.apache.ignite.testsuites.IgnitePdsCompressionTestSuite2

 

They should be executed the same way as Direct-IO suites only on Linux agents.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10332) Add Ignite.NET configuration for disk page compression

2018-11-19 Thread Sergi Vladykin (JIRA)


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

Sergi Vladykin updated IGNITE-10332:

Description: CacheConfiguration and DataStorageMetrics were changed.

> Add Ignite.NET configuration for disk page compression 
> ---
>
> Key: IGNITE-10332
> URL: https://issues.apache.org/jira/browse/IGNITE-10332
> Project: Ignite
>  Issue Type: New Feature
>  Components: cache
>Reporter: Sergi Vladykin
>Assignee: Vladimir Ozerov
>Priority: Major
>
> CacheConfiguration and DataStorageMetrics were changed.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-10330) Implement disk page compression

2018-11-19 Thread Sergi Vladykin (JIRA)


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

Sergi Vladykin commented on IGNITE-10330:
-

PR

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

> Implement disk page compression
> ---
>
> Key: IGNITE-10330
> URL: https://issues.apache.org/jira/browse/IGNITE-10330
> Project: Ignite
>  Issue Type: New Feature
>  Components: cache
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
>Priority: Major
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (IGNITE-10332) Add Ignite.NET configuration for disk page compression

2018-11-19 Thread Sergi Vladykin (JIRA)
Sergi Vladykin created IGNITE-10332:
---

 Summary: Add Ignite.NET configuration for disk page compression 
 Key: IGNITE-10332
 URL: https://issues.apache.org/jira/browse/IGNITE-10332
 Project: Ignite
  Issue Type: New Feature
  Components: cache
Reporter: Sergi Vladykin
Assignee: Vladimir Ozerov






--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10330) Implement disk page compression

2018-11-19 Thread Sergi Vladykin (JIRA)


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

Sergi Vladykin updated IGNITE-10330:

Issue Type: New Feature  (was: Improvement)

> Implement disk page compression
> ---
>
> Key: IGNITE-10330
> URL: https://issues.apache.org/jira/browse/IGNITE-10330
> Project: Ignite
>  Issue Type: New Feature
>  Components: cache
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
>Priority: Major
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (IGNITE-10331) Document Disk page compression

2018-11-19 Thread Sergi Vladykin (JIRA)
Sergi Vladykin created IGNITE-10331:
---

 Summary: Document Disk page compression
 Key: IGNITE-10331
 URL: https://issues.apache.org/jira/browse/IGNITE-10331
 Project: Ignite
  Issue Type: New Feature
  Components: documentation
Reporter: Sergi Vladykin
Assignee: Sergey Kozlov


There is an email thread titled "Disk page compression for Ignite persistent 
store"



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (IGNITE-10330) Implement disk page compression

2018-11-19 Thread Sergi Vladykin (JIRA)
Sergi Vladykin created IGNITE-10330:
---

 Summary: Implement disk page compression
 Key: IGNITE-10330
 URL: https://issues.apache.org/jira/browse/IGNITE-10330
 Project: Ignite
  Issue Type: Improvement
  Components: cache
Reporter: Sergi Vladykin
Assignee: Sergi Vladykin






--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (IGNITE-5277) Asynchronously establish connection to all the needed nodes in IgniteH2Indexing.send()

2017-05-23 Thread Sergi Vladykin (JIRA)
Sergi Vladykin created IGNITE-5277:
--

 Summary: Asynchronously establish connection to all the needed 
nodes in IgniteH2Indexing.send()
 Key: IGNITE-5277
 URL: https://issues.apache.org/jira/browse/IGNITE-5277
 Project: Ignite
  Issue Type: Improvement
Reporter: Sergi Vladykin


it's only a minor optimization until the point when establishing each 
connection takes 3-4 seconds, and we establish 32 of them in sequence.  At that 
point it becomes a serious issue: the customer cannot run SQL queries from 
their development machines



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Assigned] (IGNITE-5205) Optimize SQL messaging

2017-05-23 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin reassigned IGNITE-5205:
--

Assignee: Sergi Vladykin  (was: Sergey Kalashnikov)

> Optimize SQL messaging
> --
>
> Key: IGNITE-5205
> URL: https://issues.apache.org/jira/browse/IGNITE-5205
> Project: Ignite
>  Issue Type: Bug
>  Components: sql
>Affects Versions: 2.0
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
> Fix For: 2.1
>
>
> Currently we create Message object for each H2 Value being sent or received 
> over the wire. Lets write and read them directly without intermediate 
> conversions.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Created] (IGNITE-5205) Optimize SQL messaging

2017-05-11 Thread Sergi Vladykin (JIRA)
Sergi Vladykin created IGNITE-5205:
--

 Summary: Optimize SQL messaging
 Key: IGNITE-5205
 URL: https://issues.apache.org/jira/browse/IGNITE-5205
 Project: Ignite
  Issue Type: Bug
Affects Versions: 2.0
Reporter: Sergi Vladykin
 Fix For: 2.1


Currently we create Message object for each H2 Value being sent or received 
over the wire. Lets write and read them directly without intermediate 
conversions.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Resolved] (IGNITE-5190) ArrayIndexOutOfBoundsException in GridMergeIndexSorted

2017-05-11 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin resolved IGNITE-5190.

Resolution: Fixed

Fixed and merged to master
3a9dba5f86ad34736ccd278ebf91044e18cf9a6b

> ArrayIndexOutOfBoundsException in GridMergeIndexSorted
> --
>
> Key: IGNITE-5190
> URL: https://issues.apache.org/jira/browse/IGNITE-5190
> Project: Ignite
>  Issue Type: Bug
>  Components: sql
>Affects Versions: 2.0
>Reporter: Andrew Mashenkov
>Assignee: Sergi Vladykin
> Fix For: 2.1
>
> Attachments: join-on-subquery-exception.txt, 
> JoinWithSubQueryFails.java
>
>
> PFA stacktrace with query.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Assigned] (IGNITE-5190) ArrayIndexOutOfBoundsException in GridMergeIndexSorted

2017-05-11 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin reassigned IGNITE-5190:
--

Assignee: Sergi Vladykin

> ArrayIndexOutOfBoundsException in GridMergeIndexSorted
> --
>
> Key: IGNITE-5190
> URL: https://issues.apache.org/jira/browse/IGNITE-5190
> Project: Ignite
>  Issue Type: Bug
>  Components: sql
>Affects Versions: 2.0
>Reporter: Andrew Mashenkov
>Assignee: Sergi Vladykin
> Fix For: 2.1
>
> Attachments: join-on-subquery-exception.txt, 
> JoinWithSubQueryFails.java
>
>
> PFA stacktrace with query.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Closed] (IGNITE-4989) Assertion error in BPlusTree#finishTail

2017-05-03 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin closed IGNITE-4989.
--

> Assertion error in BPlusTree#finishTail
> ---
>
> Key: IGNITE-4989
> URL: https://issues.apache.org/jira/browse/IGNITE-4989
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Affects Versions: 2.0
>Reporter: Alexey Goncharuk
>Assignee: Sergi Vladykin
> Fix For: 2.1
>
>
> This assertion occasionally appears in CacheRandomOperationsMultithreadedTest
> {code}
> [15:03:13]W:   [org.apache.ignite:ignite-indexing] 
> [12:03:13,541][ERROR][sys-stripe-9-#3935%cache.CacheRandomOperationsMultithreadedTest2%][GridNearTxLocal]
>  Commit failed.
> [15:03:13]W:   [org.apache.ignite:ignite-indexing] class 
> org.apache.ignite.internal.transactions.IgniteTxHeuristicCheckedException: 
> Commit produced a runtime exception (all transaction entries will be 
> invalidated): 
> GridDhtTxRemote[id=6fc395c6b51-062d9824--0001--015b6c5889ed, 
> concurrency=OPTIMISTIC, isolation=READ_COMMITTED, state=COMMITTING, 
> invalidate=false, rollbackOnly=false, 
> nodeId=04efe5ed-8050-4529-ba7c-395e3900, duration=10]
> [15:03:13]W:   [org.apache.ignite:ignite-indexing]at 
> org.apache.ignite.internal.processors.cache.distributed.GridDistributedTxRemoteAdapter.commitIfLocked(GridDistributedTxRemoteAdapter.java:719)
> [15:03:13]W:   [org.apache.ignite:ignite-indexing]at 
> org.apache.ignite.internal.processors.cache.distributed.GridDistributedTxRemoteAdapter.commitRemoteTx(GridDistributedTxRemoteAdapter.java:789)
> [15:03:13]W:   [org.apache.ignite:ignite-indexing]at 
> org.apache.ignite.internal.processors.cache.transactions.IgniteTxHandler.finish(IgniteTxHandler.java:1222)
> [15:03:13]W:   [org.apache.ignite:ignite-indexing]at 
> org.apache.ignite.internal.processors.cache.transactions.IgniteTxHandler.processDhtTxFinishRequest(IgniteTxHandler.java:1130)
> [15:03:13]W:   [org.apache.ignite:ignite-indexing]at 
> org.apache.ignite.internal.processors.cache.transactions.IgniteTxHandler.access$600(IgniteTxHandler.java:95)
> [15:03:13]W:   [org.apache.ignite:ignite-indexing]at 
> org.apache.ignite.internal.processors.cache.transactions.IgniteTxHandler$7.apply(IgniteTxHandler.java:180)
> [15:03:13]W:   [org.apache.ignite:ignite-indexing]at 
> org.apache.ignite.internal.processors.cache.transactions.IgniteTxHandler$7.apply(IgniteTxHandler.java:178)
> [15:03:13]W:   [org.apache.ignite:ignite-indexing]at 
> org.apache.ignite.internal.processors.cache.GridCacheIoManager.processMessage(GridCacheIoManager.java:863)
> [15:03:13]W:   [org.apache.ignite:ignite-indexing]at 
> org.apache.ignite.internal.processors.cache.GridCacheIoManager.onMessage0(GridCacheIoManager.java:386)
> [15:03:13]W:   [org.apache.ignite:ignite-indexing]at 
> org.apache.ignite.internal.processors.cache.GridCacheIoManager.handleMessage(GridCacheIoManager.java:308)
> [15:03:13]W:   [org.apache.ignite:ignite-indexing]at 
> org.apache.ignite.internal.processors.cache.GridCacheIoManager.access$000(GridCacheIoManager.java:100)
> [15:03:13]W:   [org.apache.ignite:ignite-indexing]at 
> org.apache.ignite.internal.processors.cache.GridCacheIoManager$1.onMessage(GridCacheIoManager.java:253)
> [15:03:13]W:   [org.apache.ignite:ignite-indexing]at 
> org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1238)
> [15:03:13]W:   [org.apache.ignite:ignite-indexing]at 
> org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:866)
> [15:03:13]W:   [org.apache.ignite:ignite-indexing]at 
> org.apache.ignite.internal.managers.communication.GridIoManager.access$2100(GridIoManager.java:111)
> [15:03:13]W:   [org.apache.ignite:ignite-indexing]at 
> org.apache.ignite.internal.managers.communication.GridIoManager$7.run(GridIoManager.java:798)
> [15:03:13]W:   [org.apache.ignite:ignite-indexing]at 
> org.apache.ignite.internal.util.StripedExecutor$Stripe.run(StripedExecutor.java:483)
> [15:03:13]W:   [org.apache.ignite:ignite-indexing]at 
> java.lang.Thread.run(Thread.java:745)
> [15:03:13]W:   [org.apache.ignite:ignite-indexing] Caused by: 
> java.lang.AssertionError: Assertion error on search row: Row@19cdbda1[ key: 
> org.apache.ignite.internal.processors.cache.CacheRandomOperationsMultithreadedTest$TestKey@2e5,
>  val: 
> org.apache.ignite.internal.processors.cache.CacheRandomOperationsMultithreadedTest$TestData@125ca243
>  ][ 131925325, 131925325 ]
> [15:03:13]W:   [org.apache.ignite:ignite-indexing]at 
> 

[jira] [Closed] (IGNITE-4523) Allow distributed SQL query execution over explicit set of partitions

2017-04-25 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin closed IGNITE-4523.
--

> Allow distributed SQL query execution over explicit set of partitions
> -
>
> Key: IGNITE-4523
> URL: https://issues.apache.org/jira/browse/IGNITE-4523
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache, SQL
>Affects Versions: 1.8
>Reporter: Alexei Scherbakov
>Assignee: Alexei Scherbakov
>  Labels: important
> Fix For: 2.1
>
>
> 3Currently distributed SQL query is executed on all nodes containing primary 
> partitions for a cache, sending map query requests on all nodes in grid.
> Sometimes we know in advance which partitions hold a data for query, on 
> example, in case of custom affinity function. 
> Therefore it's possible to reduce number of nodes receiving map query request 
> by providing explicit set of partitions, which will give significant 
> performance advantage and traffic reduction in case of very large clusters.
> Internally we already have such functionality, so the only necessary thing is 
> to provide public API for what.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Closed] (IGNITE-4594) Implement index hints for SQL

2017-04-21 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin closed IGNITE-4594.
--

> Implement index hints for SQL
> -
>
> Key: IGNITE-4594
> URL: https://issues.apache.org/jira/browse/IGNITE-4594
> Project: Ignite
>  Issue Type: New Feature
>  Components: SQL
>Reporter: Denis Magda
>Assignee: Sergi Vladykin
> Fix For: 2.0
>
>
> Recently in H2 we've merged a very important feature: index hints. It is an
> additional MySQL-like syntax:
> SELECT * FROM  my_table USE INDEX (index_a) WHERE A = 1
> It will be very easy to support this in Ignite.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Resolved] (IGNITE-4594) Implement index hints for SQL

2017-04-21 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin resolved IGNITE-4594.

Resolution: Fixed

Merged to 2.0

> Implement index hints for SQL
> -
>
> Key: IGNITE-4594
> URL: https://issues.apache.org/jira/browse/IGNITE-4594
> Project: Ignite
>  Issue Type: New Feature
>  Components: SQL
>Reporter: Denis Magda
>Assignee: Sergi Vladykin
> Fix For: 2.0
>
>
> Recently in H2 we've merged a very important feature: index hints. It is an
> additional MySQL-like syntax:
> SELECT * FROM  my_table USE INDEX (index_a) WHERE A = 1
> It will be very easy to support this in Ignite.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Created] (IGNITE-5016) SQL: Support LEFT JOIN from replicated table to a partitioned.

2017-04-18 Thread Sergi Vladykin (JIRA)
Sergi Vladykin created IGNITE-5016:
--

 Summary: SQL: Support LEFT JOIN from replicated table to a 
partitioned.
 Key: IGNITE-5016
 URL: https://issues.apache.org/jira/browse/IGNITE-5016
 Project: Ignite
  Issue Type: Bug
Reporter: Sergi Vladykin
Assignee: Sergi Vladykin


Now we return duplicates:

IgniteCacheJoinPartitionedAndReplicatedTest.testReplicatedToPartitionedLeftJoin



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Closed] (IGNITE-4955) Correctly execute SQL queries started on replicated cache.

2017-04-17 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin closed IGNITE-4955.
--

> Correctly execute SQL queries started on replicated cache.
> --
>
> Key: IGNITE-4955
> URL: https://issues.apache.org/jira/browse/IGNITE-4955
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
>Priority: Blocker
> Fix For: 2.0
>
>




--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Resolved] (IGNITE-4955) Correctly execute SQL queries started on replicated cache.

2017-04-17 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin resolved IGNITE-4955.

Resolution: Fixed

Merged to master

> Correctly execute SQL queries started on replicated cache.
> --
>
> Key: IGNITE-4955
> URL: https://issues.apache.org/jira/browse/IGNITE-4955
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
>Priority: Blocker
> Fix For: 2.0
>
>




--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Created] (IGNITE-4955) Correctly execute SQL queries started on replicated cache.

2017-04-13 Thread Sergi Vladykin (JIRA)
Sergi Vladykin created IGNITE-4955:
--

 Summary: Correctly execute SQL queries started on replicated cache.
 Key: IGNITE-4955
 URL: https://issues.apache.org/jira/browse/IGNITE-4955
 Project: Ignite
  Issue Type: Improvement
Reporter: Sergi Vladykin
Assignee: Sergi Vladykin
Priority: Blocker
 Fix For: 2.0






--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (IGNITE-4523) Allow distributed SQL query execution over explicit set of partitions

2017-04-11 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-4523:


I reviewed the patch, my comments are in Upsource.

> Allow distributed SQL query execution over explicit set of partitions
> -
>
> Key: IGNITE-4523
> URL: https://issues.apache.org/jira/browse/IGNITE-4523
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache, SQL
>Affects Versions: 1.8
>Reporter: Alexei Scherbakov
>Assignee: Alexei Scherbakov
>  Labels: important
> Fix For: 2.0
>
>
> 3Currently distributed SQL query is executed on all nodes containing primary 
> partitions for a cache, sending map query requests on all nodes in grid.
> Sometimes we know in advance which partitions hold a data for query, on 
> example, in case of custom affinity function. 
> Therefore it's possible to reduce number of nodes receiving map query request 
> by providing explicit set of partitions, which will give significant 
> performance advantage and traffic reduction in case of very large clusters.
> Internally we already have such functionality, so the only necessary thing is 
> to provide public API for what.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Updated] (IGNITE-2177) User defined aggregate functions for SQL

2017-04-10 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin updated IGNITE-2177:
---
Fix Version/s: (was: 2.0)
   2.1

> User defined aggregate functions for SQL
> 
>
> Key: IGNITE-2177
> URL: https://issues.apache.org/jira/browse/IGNITE-2177
> Project: Ignite
>  Issue Type: Wish
>  Components: SQL
>Affects Versions: 1.8
>Reporter: Sergi Vladykin
> Fix For: 2.1
>
>
> Need to design some factory like abstraction for creating map part and reduce 
> part of the aggregate. 



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Updated] (IGNITE-3869) Reduce number of temporary objects produced by H2

2017-04-10 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin updated IGNITE-3869:
---
Fix Version/s: (was: 2.0)
   2.1

> Reduce number of temporary objects produced by H2
> -
>
> Key: IGNITE-3869
> URL: https://issues.apache.org/jira/browse/IGNITE-3869
> Project: Ignite
>  Issue Type: Task
>  Components: SQL
>Affects Versions: 1.4
>Reporter: Denis Magda
>Assignee: Sergi Vladykin
>  Labels: important
> Fix For: 2.1
>
>
> Presently during the execution of a query H2 generates significant number of 
> temporal objects (kind of wrappers) that eventually exhaust the heap and 
> trigger long GC pauses. 
> Need to revisit present implementation improving Ignite SQL engine and/or H2.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Updated] (IGNITE-3870) Keeping SQL query result set in off heap tier

2017-04-10 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin updated IGNITE-3870:
---
Fix Version/s: (was: 2.0)
   2.1

> Keeping SQL query result set in off heap tier
> -
>
> Key: IGNITE-3870
> URL: https://issues.apache.org/jira/browse/IGNITE-3870
> Project: Ignite
>  Issue Type: Task
>  Components: SQL
>Reporter: Denis Magda
>Assignee: Sergi Vladykin
> Fix For: 2.1
>
>
> With the new off heap storage architectures (IGNITE-3477) it makes sense to 
> improve a part of the system that prepares an SQL query result set in a such 
> a way:
> - result set should consist of wrappers objects that incorporate off heap 
> pointers to fields and values stored off heap;
> - during the time the result set is being sent over the wire we shouldn't 
> move fields and values from off heap to Java heap but rather implement a 
> solution that will allow us to pass an off heap pointer to a sockets output 
> stream. Probably this can be done by leveraging Java's DirectBuffers.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Assigned] (IGNITE-2913) SQL query with EXISTS() expression fails on partitioned cache.

2017-04-02 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin reassigned IGNITE-2913:
--

Assignee: Sergi Vladykin

> SQL query with EXISTS() expression fails on partitioned cache.
> --
>
> Key: IGNITE-2913
> URL: https://issues.apache.org/jira/browse/IGNITE-2913
> Project: Ignite
>  Issue Type: Bug
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
>
> {code}
> select name from Person p where exists(select 1 from Organization o where 
> p.orgId = o.id)
> {code}
> {code}
> org.apache.ignite.IgniteCheckedException: Unsupported expression: EXISTS(...
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Closed] (IGNITE-2913) SQL query with EXISTS() expression fails on partitioned cache.

2017-04-02 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin closed IGNITE-2913.
--

> SQL query with EXISTS() expression fails on partitioned cache.
> --
>
> Key: IGNITE-2913
> URL: https://issues.apache.org/jira/browse/IGNITE-2913
> Project: Ignite
>  Issue Type: Bug
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
>
> {code}
> select name from Person p where exists(select 1 from Organization o where 
> p.orgId = o.id)
> {code}
> {code}
> org.apache.ignite.IgniteCheckedException: Unsupported expression: EXISTS(...
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Resolved] (IGNITE-2913) SQL query with EXISTS() expression fails on partitioned cache.

2017-04-02 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin resolved IGNITE-2913.

Resolution: Fixed

Merged to master at f726dc483a9e406b0149a6afffc38026b43ccbc5



> SQL query with EXISTS() expression fails on partitioned cache.
> --
>
> Key: IGNITE-2913
> URL: https://issues.apache.org/jira/browse/IGNITE-2913
> Project: Ignite
>  Issue Type: Bug
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
>
> {code}
> select name from Person p where exists(select 1 from Organization o where 
> p.orgId = o.id)
> {code}
> {code}
> org.apache.ignite.IgniteCheckedException: Unsupported expression: EXISTS(...
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (IGNITE-4826) SQL: Eviction to swap failed if segmented index is used.

2017-03-28 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-4826:


Looks good to me.

> SQL: Eviction to swap failed if segmented index is used.
> 
>
> Key: IGNITE-4826
> URL: https://issues.apache.org/jira/browse/IGNITE-4826
> Project: Ignite
>  Issue Type: Bug
>  Components: SQL
>Affects Versions: 1.9
>Reporter: Andrew Mashenkov
>Assignee: Andrew Mashenkov
>Priority: Critical
>  Labels: trivial
> Fix For: 2.0
>
> Attachments: stacktrace.log
>
>
> PFA stacktrace attached.
> SegmentID should be calculated from row key field in 
> GridH2TreeIndex.findOne(row) method.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Closed] (IGNITE-3013) Support sorted merge index for SQL

2017-03-09 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin closed IGNITE-3013.
--

Merged to master

> Support sorted merge index for SQL
> --
>
> Key: IGNITE-3013
> URL: https://issues.apache.org/jira/browse/IGNITE-3013
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
>  Labels: SQL
> Fix For: 2.0
>
>
> Currently for sorting we have to fetch all the result sets from remote nodes 
> and sort them on the client side, need to implement sorted merge index which 
> will do it lazily in streaming fashion.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (IGNITE-4751) JVM crash while accessing Offheap entry.

2017-02-27 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-4751:


Do we have any reproducer? Config, etc?

> JVM crash while accessing Offheap entry.
> 
>
> Key: IGNITE-4751
> URL: https://issues.apache.org/jira/browse/IGNITE-4751
> Project: Ignite
>  Issue Type: Bug
>  Components: general, swap
>Affects Versions: 1.7, 1.8
>Reporter: Andrew Mashenkov
>Priority: Critical
> Fix For: 2.0
>
> Attachments: hs_err_pid18543.log, mm-rbp-server-err-pid8466.log
>
>
> JVM crashed with SIGSEGV error while iterating over offheap entries on stable 
> topology.
> Also similar issue appears while iterating over SQL query offheap rows.
> PFA logs attached.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (IGNITE-4436) SQL: create API to collect list of running SQL queries and cancel them

2017-02-03 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-4436:


Yes, lets collect them in {{IgniteH2Indexling}} and {{GridReduceQueryExecutor}}.

> SQL: create API to collect list of running SQL queries and cancel them
> --
>
> Key: IGNITE-4436
> URL: https://issues.apache.org/jira/browse/IGNITE-4436
> Project: Ignite
>  Issue Type: Task
>  Components: SQL
>Affects Versions: 1.8
>Reporter: Alexey Kuznetsov
>Assignee: Alexey Kuznetsov
> Fix For: 2.0
>
>
> It may be very useful for monitoring tools to be able to collect list of 
> currently running SQL queries with possibility to cancel them.
> See discussion on dev list for more info: 
> http://apache-ignite-developers.2346864.n4.nabble.com/API-to-collect-list-of-running-SQL-queries-td13031.html



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (IGNITE-4523) Allow distributed SQL query execution over explicit set of partitions

2017-01-20 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-4523:


Then move setPartitions method out of Query and add it only to supported 
subclasses.

> Allow distributed SQL query execution over explicit set of partitions
> -
>
> Key: IGNITE-4523
> URL: https://issues.apache.org/jira/browse/IGNITE-4523
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache, SQL
>Affects Versions: 1.8
>Reporter: Alexei Scherbakov
>Assignee: Alexei Scherbakov
> Fix For: 1.9
>
>
> 3Currently distributed SQL query is executed on all nodes containing primary 
> partitions for a cache, sending map query requests on all nodes in grid.
> Sometimes we know in advance which partitions hold a data for query, on 
> example, in case of custom affinity function. 
> Therefore it's possible to reduce number of nodes receiving map query request 
> by providing explicit set of partitions, which will give significant 
> performance advantage and traffic reduction in case of very large clusters.
> Internally we already have such functionality, so the only necessary thing is 
> to provide public API for what.



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


[jira] [Commented] (IGNITE-4523) Allow distributed SQL query execution over explicit set of partitions

2017-01-20 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-4523:


If you have added method setPartitions on Query, did you make sure that all the 
Query descendants (like SpiQuery, ScanQuery, etc...) support it correctly? I 
think we have to have respective tests for all of them.

> Allow distributed SQL query execution over explicit set of partitions
> -
>
> Key: IGNITE-4523
> URL: https://issues.apache.org/jira/browse/IGNITE-4523
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache, SQL
>Affects Versions: 1.8
>Reporter: Alexei Scherbakov
>Assignee: Alexei Scherbakov
> Fix For: 1.9
>
>
> 3Currently distributed SQL query is executed on all nodes containing primary 
> partitions for a cache, sending map query requests on all nodes in grid.
> Sometimes we know in advance which partitions hold a data for query, on 
> example, in case of custom affinity function. 
> Therefore it's possible to reduce number of nodes receiving map query request 
> by providing explicit set of partitions, which will give significant 
> performance advantage and traffic reduction in case of very large clusters.
> Internally we already have such functionality, so the only necessary thing is 
> to provide public API for what.



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


[jira] [Updated] (IGNITE-872) Scan query scans the whole cache before returning the first page in case of single node

2017-01-13 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin updated IGNITE-872:
--
Assignee: (was: Sergi Vladykin)

> Scan query scans the whole cache before returning the first page in case of 
> single node
> ---
>
> Key: IGNITE-872
> URL: https://issues.apache.org/jira/browse/IGNITE-872
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Reporter: Dmitriy Setrakyan
>Priority: Critical
>
> Dev list link:
> http://apache-ignite-developers.2346864.n4.nabble.com/Scan-query-with-page-size-should-return-as-first-page-available-td353.html



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


[jira] [Closed] (IGNITE-3326) Map-reduce query waits for rebalancing forever when it's disabled.

2017-01-13 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin closed IGNITE-3326.
--

> Map-reduce query waits for rebalancing forever when it's disabled.
> --
>
> Key: IGNITE-3326
> URL: https://issues.apache.org/jira/browse/IGNITE-3326
> Project: Ignite
>  Issue Type: Bug
>Reporter: Alexei Scherbakov
>Assignee: Sergi Vladykin
>Priority: Minor
>
> The code below doesn't print anything:
> {code}
> public static void main(String[] args) throws IgniteException {
> Ignite start = Ignition.start(new IgniteConfiguration());
> CacheConfiguration cfg = new CacheConfiguration<>();
> cfg.setRebalanceMode(CacheRebalanceMode.NONE);
> cfg.setCacheMode(CacheMode.PARTITIONED);
> cfg.setName("test");
> cfg.setIndexedTypes(Integer.class, Person.class);
> IgniteCache cache = start.createCache(cfg);
> cache.put(1, new Person(1L, "Test 1", "Test 1"));
> cache.put(2, new Person(1L, "Test 2", "Test 2"));
> cache.put(3, new Person(1L, "Test 3", "Test 3"));
> QueryCursor> query = cache.query(new 
> SqlQuery(Person.class, "_key >= 0"));
> List> all = query.getAll();
> System.out.println(all);
> }
> {code}
> Suggested fix: disable reservation if rebalancing is disabled.
> In GridMapQueryExecutor.reservePartitions add
> if (cctx.isLocal() || !cctx.rebalanceEnabled())
> continue;



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


[jira] [Updated] (IGNITE-1495) Cache SQL query metadata index's fields have wrong register.

2017-01-13 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin updated IGNITE-1495:
---
Assignee: (was: Sergi Vladykin)

> Cache SQL query metadata index's fields have wrong register.
> 
>
> Key: IGNITE-1495
> URL: https://issues.apache.org/jira/browse/IGNITE-1495
> Project: Ignite
>  Issue Type: Bug
>  Components: SQL
>Affects Versions: 1.5.0.final
>Reporter: Vasiliy Sisko
> Fix For: 2.0
>
> Attachments: #_IGNITE-1495_Test_for_index_s_fields.patch
>
>
> Index's fields should have register how in table fields (In upper case).



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


[jira] [Updated] (IGNITE-878) Large GC if load data to the cache using datastreamer

2017-01-13 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin updated IGNITE-878:
--
Assignee: (was: Sergi Vladykin)

> Large GC if load data to the cache using datastreamer 
> --
>
> Key: IGNITE-878
> URL: https://issues.apache.org/jira/browse/IGNITE-878
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Affects Versions: sprint-4
>Reporter: Pavel Konstantinov
> Fix For: 2.0
>
> Attachments: ig-878.png, 
> #_IGNITE-878_GC_using_on_data_streaming_test.patch
>
>




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


[jira] [Closed] (IGNITE-1142) Use temporary tables instead of table function.

2017-01-13 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin closed IGNITE-1142.
--

Implemented time ago.

> Use temporary tables instead of table function.
> ---
>
> Key: IGNITE-1142
> URL: https://issues.apache.org/jira/browse/IGNITE-1142
> Project: Ignite
>  Issue Type: Wish
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
> Attachments: master_ignite-1142.patch, master_ignite-1142.patch, 
> master_ignite-1142.patch
>
>
> See TODOs in Splitter



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


[jira] [Commented] (IGNITE-4523) Allow distributed SQL query execution over explicit set of partitions

2017-01-12 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-4523:


I looked at the code. The  {{PartitionSet}} concept looks overengineered to me, 
why wouldn't we just go with int[]?

> Allow distributed SQL query execution over explicit set of partitions
> -
>
> Key: IGNITE-4523
> URL: https://issues.apache.org/jira/browse/IGNITE-4523
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache, SQL
>Affects Versions: 1.8
>Reporter: Alexei Scherbakov
>Assignee: Alexei Scherbakov
> Fix For: 1.9
>
>
> Currently distributed SQL query is executed on all nodes containing primary 
> partitions for a cache, sending map query requests on all nodes in grid.
> Sometimes we know in advance which partitions hold a data for query, on 
> example, in case of custom affinity function. 
> Therefore it's possible to reduce number of nodes receiving map query request 
> by providing explicit set of partitions, which will give significant 
> performance advantage and traffic reduction in case of very large clusters.
> Internally we already have such functionality, so the only necessary thing is 
> to provide public API for what.



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


[jira] [Commented] (IGNITE-3959) SQL: Optimize Date\Time fields conversion.

2016-12-07 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-3959:


May be this must be fixed in H2 database, no?

> SQL: Optimize Date\Time fields conversion.
> --
>
> Key: IGNITE-3959
> URL: https://issues.apache.org/jira/browse/IGNITE-3959
> Project: Ignite
>  Issue Type: Sub-task
>  Components: SQL
>Affects Versions: 1.6
>Reporter: Andrew Mashenkov
>  Labels: newbie, performance
> Fix For: 2.0
>
>
> SqlFieldsQueries slowdown on date\time fields processing due to ineffective 
> java.util.Calendar usage for date manipulation by H2 database.
> Good point to start is IgniteH2Indexing.wrap() method. Make optimization for 
> types DATE and TIME as it already done for TIMESTAMP type.



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


[jira] [Commented] (IGNITE-4376) SQL: Failed to run reduce query locally with a valid query

2016-12-06 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-4376:


I see what the problem is. Will fix it as part of IGNITE-3860

> SQL: Failed to run reduce query locally with a valid query
> --
>
> Key: IGNITE-4376
> URL: https://issues.apache.org/jira/browse/IGNITE-4376
> Project: Ignite
>  Issue Type: Bug
>  Components: SQL
>Affects Versions: 1.7
>Reporter: Pavel Tupitsyn
>Assignee: Sergi Vladykin
> Fix For: 1.9
>
>
> Reported by Ignite.NET user:
> {code}
> javax.cache.CacheException: Failed to run reduce query locally.
> at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.query(GridReduceQueryExecutor.java:754)
> at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing$5.iterator(IgniteH2Indexing.java:1119)
> at 
> org.apache.ignite.internal.processors.cache.QueryCursorImpl.iterator(QueryCursorImpl.java:98)
> at 
> org.apache.ignite.internal.processors.platform.cache.query.PlatformAbstractQueryCursor.processInLongOutLong(PlatformAbstractQueryCursor.java:142)
> at 
> org.apache.ignite.internal.processors.platform.PlatformAbstractTarget.inLongOutLong(PlatformAbstractTarget.java:66)
> Caused by: class org.apache.ignite.IgniteCheckedException: Failed to parse 
> SQL query: SELECT
> __C0 NATURALKEY,
> ((PR.PR_PER_PROJECTS_PERCENTCOMPLETED / 100.0) * SUM(__C1)) AS EXPR1
> FROM PUBLIC.__T0
> GROUP BY __C0, __C2
> at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.preparedStatementWithParams(IgniteH2Indexing.java:913)
> at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.executeSqlQueryWithTimer(IgniteH2Indexing.java:985)
> at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.query(GridReduceQueryExecutor.java:709)
> ... 4 more
> Caused by: org.h2.jdbc.JdbcSQLException: Column 
> "PR.PR_PER_PROJECTS_PERCENTCOMPLETED" not found; SQL statement:
> SELECT
> __C0 NATURALKEY,
> ((PR.PR_PER_PROJECTS_PERCENTCOMPLETED / 100.0) * SUM(__C1)) AS EXPR1
> FROM PUBLIC.__T0
> GROUP BY __C0, __C2 [42122-191]
> at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
> at org.h2.message.DbException.get(DbException.java:179)
> at org.h2.message.DbException.get(DbException.java:155)
> at org.h2.expression.ExpressionColumn.optimize(ExpressionColumn.java:147)
> at org.h2.expression.Operation.optimize(Operation.java:181)
> at org.h2.expression.Operation.optimize(Operation.java:181)
> at org.h2.expression.Alias.optimize(Alias.java:51)
> at org.h2.command.dml.Select.prepare(Select.java:852)
> at org.h2.command.Parser.prepareCommand(Parser.java:257)
> at org.h2.engine.Session.prepareLocal(Session.java:560)
> at org.h2.engine.Session.prepareCommand(Session.java:501)
> at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1188)
> at org.h2.jdbc.JdbcPreparedStatement.(JdbcPreparedStatement.java:73)
> at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:276)
> at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.prepareStatement(IgniteH2Indexing.java:425)
> at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.preparedStatementWithParams(IgniteH2Indexing.java:910)
> ... 6 more
> {code}
> Query (works in H2 console):
> {code}
> select pr.NATURALKEY, (pr.PR_PER_PROJECTS_PERCENTCOMPLETED / 100.0) * 
> sum(a.AS_RIO_ASSIGNMENTS_PERIODCOST) as Expr1
> from "Landscape".MI_MILESTONES mi 
> Inner join "Landscape".PR_HAS_MI_A t0 on t0.MI_ID_A = MI.NATURALKEY 
> Inner join "Landscape".PR_HAS_AS_A t1 on t1.PR_ID_HAS = t0.PR_ID_HAS 
> Inner join "Landscape".PR_HAS_OW_A t2 on t2.PR_ID_HAS = t0.PR_ID_HAS 
> Inner join "Landscape".AS_ASSIGNMENTS a on a.NATURALKEY = t1.AS_ID_A 
> inner join "Landscape".PR_PROJECTS pr on pr.NATURALKEY = t0.PR_ID_HAS 
> inner join "Landscape".OW_OWNERSHIP ow on ow.NATURALKEY=t2.OW_ID_A 
> group by 
> pr.NATURALKEY, pr.PR_PER_PROJECTS_PERCENTCOMPLETED
> {code}
> Query entity config:
> {code}
> 
>  valueTypeName="PR_Projects">
>   
>fieldTypeName="java.lang.Long" />
>fieldTypeName="java.lang.String" />
>fieldType="System.String" fieldTypeName="java.lang.String" />
>fieldType="System.String" fieldTypeName="java.lang.String" />
>fieldType="System.DateTime" fieldTypeName="java.sql.Timestamp" />
>fieldType="System.DateTime" fieldTypeName="java.sql.Timestamp" />
>fieldType="System.DateTime" fieldTypeName="java.sql.Timestamp" />
>fieldTypeName="java.lang.Integer" />
>fieldType="System.Int32" fieldTypeName="java.lang.Integer" />
>

[jira] [Assigned] (IGNITE-4376) SQL: Failed to run reduce query locally with a valid query

2016-12-06 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin reassigned IGNITE-4376:
--

Assignee: Sergi Vladykin

> SQL: Failed to run reduce query locally with a valid query
> --
>
> Key: IGNITE-4376
> URL: https://issues.apache.org/jira/browse/IGNITE-4376
> Project: Ignite
>  Issue Type: Bug
>  Components: SQL
>Affects Versions: 1.7
>Reporter: Pavel Tupitsyn
>Assignee: Sergi Vladykin
> Fix For: 1.9
>
>
> Reported by Ignite.NET user:
> {code}
> javax.cache.CacheException: Failed to run reduce query locally.
> at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.query(GridReduceQueryExecutor.java:754)
> at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing$5.iterator(IgniteH2Indexing.java:1119)
> at 
> org.apache.ignite.internal.processors.cache.QueryCursorImpl.iterator(QueryCursorImpl.java:98)
> at 
> org.apache.ignite.internal.processors.platform.cache.query.PlatformAbstractQueryCursor.processInLongOutLong(PlatformAbstractQueryCursor.java:142)
> at 
> org.apache.ignite.internal.processors.platform.PlatformAbstractTarget.inLongOutLong(PlatformAbstractTarget.java:66)
> Caused by: class org.apache.ignite.IgniteCheckedException: Failed to parse 
> SQL query: SELECT
> __C0 NATURALKEY,
> ((PR.PR_PER_PROJECTS_PERCENTCOMPLETED / 100.0) * SUM(__C1)) AS EXPR1
> FROM PUBLIC.__T0
> GROUP BY __C0, __C2
> at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.preparedStatementWithParams(IgniteH2Indexing.java:913)
> at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.executeSqlQueryWithTimer(IgniteH2Indexing.java:985)
> at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.query(GridReduceQueryExecutor.java:709)
> ... 4 more
> Caused by: org.h2.jdbc.JdbcSQLException: Column 
> "PR.PR_PER_PROJECTS_PERCENTCOMPLETED" not found; SQL statement:
> SELECT
> __C0 NATURALKEY,
> ((PR.PR_PER_PROJECTS_PERCENTCOMPLETED / 100.0) * SUM(__C1)) AS EXPR1
> FROM PUBLIC.__T0
> GROUP BY __C0, __C2 [42122-191]
> at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
> at org.h2.message.DbException.get(DbException.java:179)
> at org.h2.message.DbException.get(DbException.java:155)
> at org.h2.expression.ExpressionColumn.optimize(ExpressionColumn.java:147)
> at org.h2.expression.Operation.optimize(Operation.java:181)
> at org.h2.expression.Operation.optimize(Operation.java:181)
> at org.h2.expression.Alias.optimize(Alias.java:51)
> at org.h2.command.dml.Select.prepare(Select.java:852)
> at org.h2.command.Parser.prepareCommand(Parser.java:257)
> at org.h2.engine.Session.prepareLocal(Session.java:560)
> at org.h2.engine.Session.prepareCommand(Session.java:501)
> at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1188)
> at org.h2.jdbc.JdbcPreparedStatement.(JdbcPreparedStatement.java:73)
> at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:276)
> at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.prepareStatement(IgniteH2Indexing.java:425)
> at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.preparedStatementWithParams(IgniteH2Indexing.java:910)
> ... 6 more
> {code}
> Query (works in H2 console):
> {code}
> select pr.NATURALKEY, (pr.PR_PER_PROJECTS_PERCENTCOMPLETED / 100.0) * 
> sum(a.AS_RIO_ASSIGNMENTS_PERIODCOST) as Expr1
> from "Landscape".MI_MILESTONES mi 
> Inner join "Landscape".PR_HAS_MI_A t0 on t0.MI_ID_A = MI.NATURALKEY 
> Inner join "Landscape".PR_HAS_AS_A t1 on t1.PR_ID_HAS = t0.PR_ID_HAS 
> Inner join "Landscape".PR_HAS_OW_A t2 on t2.PR_ID_HAS = t0.PR_ID_HAS 
> Inner join "Landscape".AS_ASSIGNMENTS a on a.NATURALKEY = t1.AS_ID_A 
> inner join "Landscape".PR_PROJECTS pr on pr.NATURALKEY = t0.PR_ID_HAS 
> inner join "Landscape".OW_OWNERSHIP ow on ow.NATURALKEY=t2.OW_ID_A 
> group by 
> pr.NATURALKEY, pr.PR_PER_PROJECTS_PERCENTCOMPLETED
> {code}
> Query entity config:
> {code}
> 
>  valueTypeName="PR_Projects">
>   
>fieldTypeName="java.lang.Long" />
>fieldTypeName="java.lang.String" />
>fieldType="System.String" fieldTypeName="java.lang.String" />
>fieldType="System.String" fieldTypeName="java.lang.String" />
>fieldType="System.DateTime" fieldTypeName="java.sql.Timestamp" />
>fieldType="System.DateTime" fieldTypeName="java.sql.Timestamp" />
>fieldType="System.DateTime" fieldTypeName="java.sql.Timestamp" />
>fieldTypeName="java.lang.Integer" />
>fieldType="System.Int32" fieldTypeName="java.lang.Integer" />
>fieldType="System.Int32" fieldTypeName="java.lang.Integer" />
>

[jira] [Commented] (IGNITE-2294) Implement SQL DML (insert, update, delete) clauses.

2016-11-21 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-2294:


Use {{Object uuid;}} in {{JdbcResultSet}} and cast it when passing to either 
{{JdbcQueryTask}} or {{JdbcQueryTaskV2}}.

> Implement SQL DML (insert, update, delete) clauses.
> ---
>
> Key: IGNITE-2294
> URL: https://issues.apache.org/jira/browse/IGNITE-2294
> Project: Ignite
>  Issue Type: Wish
>Reporter: Sergi Vladykin
>Assignee: Alexander Paschenko
>  Labels: important
> Fix For: 1.8
>
>
> We need to add parsing for all the listed SQL commands and translate them 
> into respective cache operations (putIfAbstent, put, remove).



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


[jira] [Commented] (IGNITE-4145) "No query result found for request" exception when running multiple queries concurrently.

2016-11-10 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-4145:


Please fix the formatting: spaces and newlines.

> "No query result found for request" exception when running multiple queries 
> concurrently.
> -
>
> Key: IGNITE-4145
> URL: https://issues.apache.org/jira/browse/IGNITE-4145
> Project: Ignite
>  Issue Type: Bug
>  Components: SQL
>Affects Versions: 1.7
>Reporter: Vladimir Ozerov
>Assignee: Andrew Mashenkov
> Fix For: 1.8
>
>
> When many queries are executed simultaneously in multi-node cluster, the 
> following exception might appear from time to time:
> {code}
> Exception in thread "qry-exec-20" javax.cache.CacheException: Failed to fetch 
> data from node: 3432842f-2fa2-44b9-b69b-cadba286d317
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor$3.fetchNextPage(GridReduceQueryExecutor.java:298)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridMergeIndex.fetchNextPage(GridMergeIndex.java:229)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridMergeIndexUnsorted$1.hasNext(GridMergeIndexUnsorted.java:106)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridMergeIndex$IteratorCursor.next(GridMergeIndex.java:351)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridMergeIndex$FetchingCursor.next(GridMergeIndex.java:382)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.query(GridReduceQueryExecutor.java:640)
>   at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing$4.iterator(IgniteH2Indexing.java:1057)
>   at 
> org.apache.ignite.internal.processors.cache.QueryCursorImpl.iterator(QueryCursorImpl.java:81)
>   at 
> org.apache.ignite.yardstick.ringcentral.AdgRunner$QueryExecutor.run(AdgRunner.java:394)
>   at java.lang.Thread.run(Thread.java:745)
>   Suppressed: javax.cache.CacheException: Failed to execute map query on 
> the node: c51bc4f2-7038-4df6-88a9-eb87506c2f86, class 
> javax.cache.CacheException:No query result found for request: 
> GridQueryNextPageRequest [qryReqId=93, qry=0, pageSize=1024]
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.fail(GridReduceQueryExecutor.java:259)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.onFail(GridReduceQueryExecutor.java:249)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.onMessage(GridReduceQueryExecutor.java:230)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor$1.onMessage(GridReduceQueryExecutor.java:178)
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager$ArrayListener.onMessage(GridIoManager.java:1900)
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1080)
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:708)
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager.access$1700(GridIoManager.java:101)
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:671)
>   at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>   at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>   ... 1 more
> {code}
> Quick analysis shows that next-page request could possibly arrive before 
> original query message is processed. Need to confirm it with deeper debugging 
> first.
> The best way to reproduce it:
> 1) Generate some data
> 2) Start several data nodes (e.g. 4)
> 3) Start client node
> 4) Concurrently execute multiple SQL queries from the client in different 
> threads.



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


[jira] [Commented] (IGNITE-4145) "No query result found for request" exception when running multiple queries concurrently.

2016-11-10 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-4145:


You can add it to the same place where we have other multithreaded query tests, 
take a look at `IgniteCacheQueryMultiThreadedSelfTest` for example.

> "No query result found for request" exception when running multiple queries 
> concurrently.
> -
>
> Key: IGNITE-4145
> URL: https://issues.apache.org/jira/browse/IGNITE-4145
> Project: Ignite
>  Issue Type: Bug
>  Components: SQL
>Affects Versions: 1.7
>Reporter: Vladimir Ozerov
>Assignee: Andrew Mashenkov
> Fix For: 1.8
>
>
> When many queries are executed simultaneously in multi-node cluster, the 
> following exception might appear from time to time:
> {code}
> Exception in thread "qry-exec-20" javax.cache.CacheException: Failed to fetch 
> data from node: 3432842f-2fa2-44b9-b69b-cadba286d317
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor$3.fetchNextPage(GridReduceQueryExecutor.java:298)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridMergeIndex.fetchNextPage(GridMergeIndex.java:229)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridMergeIndexUnsorted$1.hasNext(GridMergeIndexUnsorted.java:106)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridMergeIndex$IteratorCursor.next(GridMergeIndex.java:351)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridMergeIndex$FetchingCursor.next(GridMergeIndex.java:382)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.query(GridReduceQueryExecutor.java:640)
>   at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing$4.iterator(IgniteH2Indexing.java:1057)
>   at 
> org.apache.ignite.internal.processors.cache.QueryCursorImpl.iterator(QueryCursorImpl.java:81)
>   at 
> org.apache.ignite.yardstick.ringcentral.AdgRunner$QueryExecutor.run(AdgRunner.java:394)
>   at java.lang.Thread.run(Thread.java:745)
>   Suppressed: javax.cache.CacheException: Failed to execute map query on 
> the node: c51bc4f2-7038-4df6-88a9-eb87506c2f86, class 
> javax.cache.CacheException:No query result found for request: 
> GridQueryNextPageRequest [qryReqId=93, qry=0, pageSize=1024]
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.fail(GridReduceQueryExecutor.java:259)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.onFail(GridReduceQueryExecutor.java:249)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.onMessage(GridReduceQueryExecutor.java:230)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor$1.onMessage(GridReduceQueryExecutor.java:178)
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager$ArrayListener.onMessage(GridIoManager.java:1900)
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1080)
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:708)
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager.access$1700(GridIoManager.java:101)
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:671)
>   at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>   at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>   ... 1 more
> {code}
> Quick analysis shows that next-page request could possibly arrive before 
> original query message is processed. Need to confirm it with deeper debugging 
> first.
> The best way to reproduce it:
> 1) Generate some data
> 2) Start several data nodes (e.g. 4)
> 3) Start client node
> 4) Concurrently execute multiple SQL queries from the client in different 
> threads.



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


[jira] [Commented] (IGNITE-4145) "No query result found for request" exception when running multiple queries concurrently.

2016-11-09 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-4145:


Looks good to me, but do we have a test for this issue?

> "No query result found for request" exception when running multiple queries 
> concurrently.
> -
>
> Key: IGNITE-4145
> URL: https://issues.apache.org/jira/browse/IGNITE-4145
> Project: Ignite
>  Issue Type: Bug
>  Components: SQL
>Affects Versions: 1.7
>Reporter: Vladimir Ozerov
>Assignee: Andrew Mashenkov
> Fix For: 1.8
>
>
> When many queries are executed simultaneously in multi-node cluster, the 
> following exception might appear from time to time:
> {code}
> Exception in thread "qry-exec-20" javax.cache.CacheException: Failed to fetch 
> data from node: 3432842f-2fa2-44b9-b69b-cadba286d317
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor$3.fetchNextPage(GridReduceQueryExecutor.java:298)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridMergeIndex.fetchNextPage(GridMergeIndex.java:229)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridMergeIndexUnsorted$1.hasNext(GridMergeIndexUnsorted.java:106)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridMergeIndex$IteratorCursor.next(GridMergeIndex.java:351)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridMergeIndex$FetchingCursor.next(GridMergeIndex.java:382)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.query(GridReduceQueryExecutor.java:640)
>   at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing$4.iterator(IgniteH2Indexing.java:1057)
>   at 
> org.apache.ignite.internal.processors.cache.QueryCursorImpl.iterator(QueryCursorImpl.java:81)
>   at 
> org.apache.ignite.yardstick.ringcentral.AdgRunner$QueryExecutor.run(AdgRunner.java:394)
>   at java.lang.Thread.run(Thread.java:745)
>   Suppressed: javax.cache.CacheException: Failed to execute map query on 
> the node: c51bc4f2-7038-4df6-88a9-eb87506c2f86, class 
> javax.cache.CacheException:No query result found for request: 
> GridQueryNextPageRequest [qryReqId=93, qry=0, pageSize=1024]
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.fail(GridReduceQueryExecutor.java:259)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.onFail(GridReduceQueryExecutor.java:249)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.onMessage(GridReduceQueryExecutor.java:230)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor$1.onMessage(GridReduceQueryExecutor.java:178)
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager$ArrayListener.onMessage(GridIoManager.java:1900)
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1080)
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:708)
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager.access$1700(GridIoManager.java:101)
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:671)
>   at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>   at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>   ... 1 more
> {code}
> Quick analysis shows that next-page request could possibly arrive before 
> original query message is processed. Need to confirm it with deeper debugging 
> first.
> The best way to reproduce it:
> 1) Generate some data
> 2) Start several data nodes (e.g. 4)
> 3) Start client node
> 4) Concurrently execute multiple SQL queries from the client in different 
> threads.



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


[jira] [Commented] (IGNITE-4145) "No query result found for request" exception when running multiple queries concurrently.

2016-11-08 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-4145:


Please provide correct PR for review.

> "No query result found for request" exception when running multiple queries 
> concurrently.
> -
>
> Key: IGNITE-4145
> URL: https://issues.apache.org/jira/browse/IGNITE-4145
> Project: Ignite
>  Issue Type: Bug
>  Components: SQL
>Affects Versions: 1.7
>Reporter: Vladimir Ozerov
>Assignee: Andrew Mashenkov
> Fix For: 1.8
>
>
> When many queries are executed simultaneously in multi-node cluster, the 
> following exception might appear from time to time:
> {code}
> Exception in thread "qry-exec-20" javax.cache.CacheException: Failed to fetch 
> data from node: 3432842f-2fa2-44b9-b69b-cadba286d317
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor$3.fetchNextPage(GridReduceQueryExecutor.java:298)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridMergeIndex.fetchNextPage(GridMergeIndex.java:229)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridMergeIndexUnsorted$1.hasNext(GridMergeIndexUnsorted.java:106)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridMergeIndex$IteratorCursor.next(GridMergeIndex.java:351)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridMergeIndex$FetchingCursor.next(GridMergeIndex.java:382)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.query(GridReduceQueryExecutor.java:640)
>   at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing$4.iterator(IgniteH2Indexing.java:1057)
>   at 
> org.apache.ignite.internal.processors.cache.QueryCursorImpl.iterator(QueryCursorImpl.java:81)
>   at 
> org.apache.ignite.yardstick.ringcentral.AdgRunner$QueryExecutor.run(AdgRunner.java:394)
>   at java.lang.Thread.run(Thread.java:745)
>   Suppressed: javax.cache.CacheException: Failed to execute map query on 
> the node: c51bc4f2-7038-4df6-88a9-eb87506c2f86, class 
> javax.cache.CacheException:No query result found for request: 
> GridQueryNextPageRequest [qryReqId=93, qry=0, pageSize=1024]
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.fail(GridReduceQueryExecutor.java:259)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.onFail(GridReduceQueryExecutor.java:249)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.onMessage(GridReduceQueryExecutor.java:230)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor$1.onMessage(GridReduceQueryExecutor.java:178)
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager$ArrayListener.onMessage(GridIoManager.java:1900)
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1080)
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:708)
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager.access$1700(GridIoManager.java:101)
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:671)
>   at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>   at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>   ... 1 more
> {code}
> Quick analysis shows that next-page request could possibly arrive before 
> original query message is processed. Need to confirm it with deeper debugging 
> first.
> The best way to reproduce it:
> 1) Generate some data
> 2) Start several data nodes (e.g. 4)
> 3) Start client node
> 4) Concurrently execute multiple SQL queries from the client in different 
> threads.



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


[jira] [Commented] (IGNITE-3448) Wrong count returned by count distinct and similar queries.

2016-10-18 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-3448:


Overall looks good to me. Though there are few things we need to fix:

1. Fix review comments on GitHub
2. I think we need tests with mixed distinct/non-distinct aggregates to make 
sure they do not interfere with each other.




> Wrong count returned by count distinct and similar queries.
> ---
>
> Key: IGNITE-3448
> URL: https://issues.apache.org/jira/browse/IGNITE-3448
> Project: Ignite
>  Issue Type: Bug
>  Components: SQL
>Affects Versions: 1.7
>Reporter: Alexei Scherbakov
>Assignee: Andrew Mashenkov
> Fix For: 1.8
>
>
> Partitioned cache is deployed on 3 nodes.
> The code below outputs incorrect counts: 
> 14
> 14
> {code}
>IgniteCache cache = grid(0).cache(null);
> cache.put(0, new Value("v1"));
> cache.put(3, new Value("v1"));
> cache.put(5, new Value("v1"));
> cache.put(9, new Value("v1"));
> cache.put(1, new Value("v3"));
> cache.put(15, new Value("v3"));
> cache.put(8, new Value("v3"));
> cache.put(2, new Value("v5"));
> cache.put(12, new Value("v5"));
> cache.put(4, new Value("v2"));
> cache.put(6, new Value("v2"));
> cache.put(7, new Value("v6"));
> cache.put(10, new Value("v7"));
> cache.put(11, new Value("v8"));
> cache.put(13, new Value("v4"));
> cache.put(14, new Value("v4"));
> QueryCursor qry = cache.query(new SqlFieldsQuery("select 
> count(distinct str) from Value"));
> for (List objects : qry)
> System.out.println(objects.get(0));
> qry = cache.query(new SqlFieldsQuery("select count(*) from (select 1 
> from Value group by str)"));
> for (List objects : qry)
> System.out.println(objects.get(0));
>
> {code}



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


[jira] [Commented] (IGNITE-4037) High memory consumption when executing TeraSort Hadoop example

2016-10-15 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-4037:


As the original author of HadoopSkipList :) I think it must be relatively easy 
to refactor it to use memory mapped files instead of offheap memory. This way 
OS will manage everything for us. Just an idea for consideration.

> High memory consumption when executing TeraSort Hadoop example
> --
>
> Key: IGNITE-4037
> URL: https://issues.apache.org/jira/browse/IGNITE-4037
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 1.6
>Reporter: Ivan Veselovsky
>Assignee: Ivan Veselovsky
> Fix For: 1.7
>
>
> When executing TeraSort Hadoop example, we observe high memory consumption 
> that frequently leads to cluster malfunction.
> The problem can be reproduced in unit test, even with 1 node, and with not 
> huge input data set as 100Mb. 
> Dump analysis shows that  memory is taken in various queues: 
> org.apache.ignite.internal.processors.hadoop.taskexecutor.HadoopExecutorService#queue
>  
> and 
> task queue of 
> org.apache.ignite.internal.processors.hadoop.jobtracker.HadoopJobTracker#evtProcSvc
>   .
> Since objects stored in these queues hold byte arrays of significant size, 
> memory if consumed very fast.
> It looks like real cause of the problem is that some tasks are blocked.



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


[jira] [Commented] (IGNITE-4035) SQL: Avoid excessive calls of deterministic functions on same arguments

2016-10-11 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-4035:


Are you sure your example covers all the possible cases for that cache to make 
any conclusions? 

> SQL: Avoid excessive calls of deterministic functions on same arguments
> ---
>
> Key: IGNITE-4035
> URL: https://issues.apache.org/jira/browse/IGNITE-4035
> Project: Ignite
>  Issue Type: Sub-task
>  Components: SQL
>Affects Versions: 1.6, 1.7
>Reporter: Andrew Mashenkov
>  Labels: performance
>
> In sql query example below, heavy "datediff" deterministic function will be 
> called 4 times per row. I'd expected function was called once per row. 
> Example:
> {noformat}
> Select
>   avg(datediff('s',ts1,ts2)) as avg_diff,
>   min(datediff('s',ts1,ts2)) as min_diff,
>   max(datediff('s',ts1,ts2)) as max_diff
> From table
> {noformat}



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


[jira] [Created] (IGNITE-3860) Improve distributed SQL support.

2016-09-07 Thread Sergi Vladykin (JIRA)
Sergi Vladykin created IGNITE-3860:
--

 Summary: Improve distributed SQL support.
 Key: IGNITE-3860
 URL: https://issues.apache.org/jira/browse/IGNITE-3860
 Project: Ignite
  Issue Type: Bug
Reporter: Sergi Vladykin
Assignee: Sergi Vladykin
Priority: Critical


Now we do not process subqueries containing aggregate functions or group bys in 
FROM clause. Also we do not correctly process UNIONs.



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


[jira] [Closed] (IGNITE-3685) H2 Debug console does not show list of tables.

2016-08-15 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin closed IGNITE-3685.
--

> H2 Debug console does not show list of tables.
> --
>
> Key: IGNITE-3685
> URL: https://issues.apache.org/jira/browse/IGNITE-3685
> Project: Ignite
>  Issue Type: Bug
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
>
> Exception thrown:
> {code}
> General error: "java.lang.UnsupportedOperationException"; SQL statement: 
> SELECT UPPER(VALUE) FROM INFORMATION_SCHEMA.SETTINGS WHERE NAME=? [5-191] 
> HY000/5 
> org.h2.jdbc.JdbcSQLException: General error: 
> "java.lang.UnsupportedOperationException"; SQL statement: 
> SELECT UPPER(VALUE) FROM INFORMATION_SCHEMA.SETTINGS WHERE NAME=? [5-191] 
> at org.h2.message.DbException.getJdbcSQLException(DbException.java:345) 
> at org.h2.message.DbException.get(DbException.java:168) 
> at org.h2.message.DbException.convert(DbException.java:295) 
> at org.h2.command.Command.executeQuery(Command.java:213) 
> at 
> org.h2.jdbc.JdbcPreparedStatement.executeQuery(JdbcPreparedStatement.java:110)
>  
> at org.h2.bnf.context.DbContents.readContents(DbContents.java:136) 
> at org.h2.server.web.WebApp.tables(WebApp.java:697) 
> at org.h2.server.web.WebApp.process(WebApp.java:225) 
> at org.h2.server.web.WebApp.processRequest(WebApp.java:170) 
> at org.h2.server.web.WebThread.process(WebThread.java:133) 
> at org.h2.server.web.WebThread.run(WebThread.java:89) 
> at java.lang.Thread.run(Thread.java:745) 
> Caused by: java.lang.UnsupportedOperationException 
> at 
> org.apache.ignite.internal.processors.query.h2.opt.GridH2Row.setKey(GridH2Row.java:101)
>  
> at org.h2.table.MetaTable.add(MetaTable.java:1982) 
> at org.h2.table.MetaTable.generateRows(MetaTable.java:940) 
> at org.h2.index.MetaIndex.find(MetaIndex.java:50) 
> at org.h2.index.BaseIndex.find(BaseIndex.java:132) 
> at org.h2.index.IndexCursor.find(IndexCursor.java:169) 
> at org.h2.table.TableFilter.next(TableFilter.java:460) 
> at org.h2.command.dml.Select.queryFlat(Select.java:541) 
> at org.h2.command.dml.Select.queryWithoutCache(Select.java:654) 
> at org.h2.command.dml.Query.query(Query.java:322) 
> at org.h2.command.dml.Query.query(Query.java:309) 
> at org.h2.command.dml.Query.query(Query.java:36) 
> at org.h2.command.CommandContainer.query(CommandContainer.java:110) 
> at org.h2.command.Command.executeQuery(Command.java:201) 
> ... 8 more
> {code}



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


[jira] [Created] (IGNITE-3685) H2 Debug console does not show list of tables.

2016-08-15 Thread Sergi Vladykin (JIRA)
Sergi Vladykin created IGNITE-3685:
--

 Summary: H2 Debug console does not show list of tables.
 Key: IGNITE-3685
 URL: https://issues.apache.org/jira/browse/IGNITE-3685
 Project: Ignite
  Issue Type: Bug
Reporter: Sergi Vladykin
Assignee: Sergi Vladykin


Exception thrown:
{code}
General error: "java.lang.UnsupportedOperationException"; SQL statement: 
SELECT UPPER(VALUE) FROM INFORMATION_SCHEMA.SETTINGS WHERE NAME=? [5-191] 
HY000/5 
org.h2.jdbc.JdbcSQLException: General error: 
"java.lang.UnsupportedOperationException"; SQL statement: 
SELECT UPPER(VALUE) FROM INFORMATION_SCHEMA.SETTINGS WHERE NAME=? [5-191] 
at org.h2.message.DbException.getJdbcSQLException(DbException.java:345) 
at org.h2.message.DbException.get(DbException.java:168) 
at org.h2.message.DbException.convert(DbException.java:295) 
at org.h2.command.Command.executeQuery(Command.java:213) 
at 
org.h2.jdbc.JdbcPreparedStatement.executeQuery(JdbcPreparedStatement.java:110) 
at org.h2.bnf.context.DbContents.readContents(DbContents.java:136) 
at org.h2.server.web.WebApp.tables(WebApp.java:697) 
at org.h2.server.web.WebApp.process(WebApp.java:225) 
at org.h2.server.web.WebApp.processRequest(WebApp.java:170) 
at org.h2.server.web.WebThread.process(WebThread.java:133) 
at org.h2.server.web.WebThread.run(WebThread.java:89) 
at java.lang.Thread.run(Thread.java:745) 
Caused by: java.lang.UnsupportedOperationException 
at 
org.apache.ignite.internal.processors.query.h2.opt.GridH2Row.setKey(GridH2Row.java:101)
 
at org.h2.table.MetaTable.add(MetaTable.java:1982) 
at org.h2.table.MetaTable.generateRows(MetaTable.java:940) 
at org.h2.index.MetaIndex.find(MetaIndex.java:50) 
at org.h2.index.BaseIndex.find(BaseIndex.java:132) 
at org.h2.index.IndexCursor.find(IndexCursor.java:169) 
at org.h2.table.TableFilter.next(TableFilter.java:460) 
at org.h2.command.dml.Select.queryFlat(Select.java:541) 
at org.h2.command.dml.Select.queryWithoutCache(Select.java:654) 
at org.h2.command.dml.Query.query(Query.java:322) 
at org.h2.command.dml.Query.query(Query.java:309) 
at org.h2.command.dml.Query.query(Query.java:36) 
at org.h2.command.CommandContainer.query(CommandContainer.java:110) 
at org.h2.command.Command.executeQuery(Command.java:201) 
... 8 more
{code}



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


[jira] [Updated] (IGNITE-735) Need to add support for dynamic indexes

2016-08-05 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin updated IGNITE-735:
--
Description: 
We should support dynamic index creation and deletion.


  was:
We should dynamic index creation and deletion.



> Need to add support for dynamic indexes
> ---
>
> Key: IGNITE-735
> URL: https://issues.apache.org/jira/browse/IGNITE-735
> Project: Ignite
>  Issue Type: Task
>  Components: SQL
>Reporter: Alexey Kuznetsov
>Assignee: Sergi Vladykin
> Fix For: 1.7
>
>
> We should support dynamic index creation and deletion.



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


[jira] [Updated] (IGNITE-735) Need to add support for dynamic indexes

2016-08-05 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin updated IGNITE-735:
--
Description: 
We should dynamic index creation and deletion.


  was:
We should support indexes for any data type, including Map, Collection, or 
complex object.



> Need to add support for dynamic indexes
> ---
>
> Key: IGNITE-735
> URL: https://issues.apache.org/jira/browse/IGNITE-735
> Project: Ignite
>  Issue Type: Task
>  Components: SQL
>Reporter: Alexey Kuznetsov
>Assignee: Sergi Vladykin
> Fix For: 1.7
>
>
> We should dynamic index creation and deletion.



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


[jira] [Closed] (IGNITE-1232) Support distributed SQL JOIN

2016-08-05 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin closed IGNITE-1232.
--

> Support distributed SQL JOIN 
> -
>
> Key: IGNITE-1232
> URL: https://issues.apache.org/jira/browse/IGNITE-1232
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
> Fix For: 1.7
>
>




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


[jira] [Created] (IGNITE-3595) Improve Enum fields handling in SQL.

2016-07-28 Thread Sergi Vladykin (JIRA)
Sergi Vladykin created IGNITE-3595:
--

 Summary: Improve Enum fields handling in SQL.
 Key: IGNITE-3595
 URL: https://issues.apache.org/jira/browse/IGNITE-3595
 Project: Ignite
  Issue Type: Improvement
Affects Versions: 1.7
Reporter: Sergi Vladykin
 Fix For: 2.0


Currently queries like this do not work in Ignite if we use enum field on the 
left side and enum constant name or ordinal on the right side:

select * from A where my_enum = 'ENUM_CONST';
select * from A where my_enum = 3;

This is a huge usability issue.

We can try to solve it by contributing `User defined Value types` in H2 and 
implementing the special value type for Enums to handle comparison with String 
(convert to enum by name) and with int (convert to enum by ordinal).



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


[jira] [Commented] (IGNITE-3560) Unify type descriptor removal and destruction in IgniteH2Indexing

2016-07-26 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-3560:


[~kromulan]

You are missing the fact that the same thing was done in 3 different places 
differently and there were no tests for correct clean up. The error you've 
reported happened because of that. Now we are ok.

> Unify type descriptor removal and destruction in IgniteH2Indexing
> -
>
> Key: IGNITE-3560
> URL: https://issues.apache.org/jira/browse/IGNITE-3560
> Project: Ignite
>  Issue Type: Bug
>Reporter: Sergi Vladykin
>Priority: Blocker
> Fix For: 1.7
>
>
> Currently I see at least 3 places where we have to deal with table 
> destruction:
> 1. unregisterCache() -> Schema.onDrop()
> 2. unregisterType() -> removeTable()
> 3. stop()
> We need to refactor them to call the same logic which has to always do the 
> following steps:
> 1. dataTables.remove()
> 2. GridH2Table.destroy()
> 3. U.closeQuiet(TableDescriptor.luceneIdx)



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


[jira] [Commented] (IGNITE-3560) Unify type descriptor removal and destruction in IgniteH2Indexing

2016-07-26 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-3560:


[~sboikov]

I pushed one minor change, otherwise looks good, please merge!

> Unify type descriptor removal and destruction in IgniteH2Indexing
> -
>
> Key: IGNITE-3560
> URL: https://issues.apache.org/jira/browse/IGNITE-3560
> Project: Ignite
>  Issue Type: Bug
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
>Priority: Blocker
> Fix For: 1.7
>
>
> Currently I see at least 3 places where we have to deal with table 
> destruction:
> 1. unregisterCache() -> Schema.onDrop()
> 2. unregisterType() -> removeTable()
> 3. stop()
> We need to refactor them to call the same logic which has to always do the 
> following steps:
> 1. dataTables.remove()
> 2. GridH2Table.destroy()
> 3. U.closeQuiet(TableDescriptor.luceneIdx)



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


[jira] [Commented] (IGNITE-3399) Support primitive type names in QueryEntity

2016-07-25 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-3399:


I merged the PR. 

[~thehoff] Thanks a lot for your contribution!

> Support primitive type names in QueryEntity
> ---
>
> Key: IGNITE-3399
> URL: https://issues.apache.org/jira/browse/IGNITE-3399
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache
>Affects Versions: 1.6
>Reporter: Alexey Goncharuk
>Assignee: Sergi Vladykin
>  Labels: newbie
> Fix For: 1.7
>
>
> When BinaryMarshaller is enabled (default), it is impossible to use primitive 
> type names (such as int, short,...) as field type in QueryEntity. 
> I think we should support such aliases because it will improve usability for 
> .NET and C++ users, who will not need to deal with java types when 
> configuring SQL.
> A test reproducing the issue is committed to master: 
> org.apache.ignite.internal.processors.cache.IgniteCachePrimitiveFieldsQuerySelfTest



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


[jira] [Closed] (IGNITE-3399) Support primitive type names in QueryEntity

2016-07-25 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin closed IGNITE-3399.
--

> Support primitive type names in QueryEntity
> ---
>
> Key: IGNITE-3399
> URL: https://issues.apache.org/jira/browse/IGNITE-3399
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache
>Affects Versions: 1.6
>Reporter: Alexey Goncharuk
>Assignee: Sergi Vladykin
>  Labels: newbie
> Fix For: 1.7
>
>
> When BinaryMarshaller is enabled (default), it is impossible to use primitive 
> type names (such as int, short,...) as field type in QueryEntity. 
> I think we should support such aliases because it will improve usability for 
> .NET and C++ users, who will not need to deal with java types when 
> configuring SQL.
> A test reproducing the issue is committed to master: 
> org.apache.ignite.internal.processors.cache.IgniteCachePrimitiveFieldsQuerySelfTest



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


[jira] [Commented] (IGNITE-3399) Support primitive type names in QueryEntity

2016-07-23 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-3399:


I'll merge the PR but you need to update it from upstream because it seems to 
have conflicts.

> Support primitive type names in QueryEntity
> ---
>
> Key: IGNITE-3399
> URL: https://issues.apache.org/jira/browse/IGNITE-3399
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache
>Affects Versions: 1.6
>Reporter: Alexey Goncharuk
>Assignee: Jens Hoffmann
>  Labels: newbie
> Fix For: 1.7
>
>
> When BinaryMarshaller is enabled (default), it is impossible to use primitive 
> type names (such as int, short,...) as field type in QueryEntity. 
> I think we should support such aliases because it will improve usability for 
> .NET and C++ users, who will not need to deal with java types when 
> configuring SQL.
> A test reproducing the issue is committed to master: 
> org.apache.ignite.internal.processors.cache.IgniteCachePrimitiveFieldsQuerySelfTest



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


[jira] [Comment Edited] (IGNITE-3560) Unify type descriptor removal and destruction in IgniteH2Indexing

2016-07-23 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin edited comment on IGNITE-3560 at 7/23/16 6:41 AM:
-

The original reported issue is IGNITE-3516.


was (Author: sergi.vladykin):
The original reported issue.

> Unify type descriptor removal and destruction in IgniteH2Indexing
> -
>
> Key: IGNITE-3560
> URL: https://issues.apache.org/jira/browse/IGNITE-3560
> Project: Ignite
>  Issue Type: Bug
>Reporter: Sergi Vladykin
>Priority: Blocker
> Fix For: 1.7
>
>
> Currently I see at least 3 places where we have to deal with table 
> destruction:
> 1. unregisterCache() -> Schema.onDrop()
> 2. unregisterType() -> removeTable()
> 3. stop()
> We need to refactor them to call the same logic which has to always do the 
> following steps:
> 1. dataTables.remove()
> 2. GridH2Table.destroy()
> 3. U.closeQuiet(TableDescriptor.luceneIdx)



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


[jira] [Closed] (IGNITE-3516) H2 Indexing unregisterCache method does not cleanup resources and causes memory leak with OFFHEAP_TIERED cache mode cache.

2016-07-23 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin closed IGNITE-3516.
--

> H2 Indexing unregisterCache method does not cleanup resources and causes 
> memory leak with OFFHEAP_TIERED cache mode cache.
> --
>
> Key: IGNITE-3516
> URL: https://issues.apache.org/jira/browse/IGNITE-3516
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Affects Versions: 1.6
>Reporter: Krome Plasma
>Assignee: Krome Plasma
>Priority: Critical
> Fix For: 1.7
>
>
> H2 Indexing unregisterCache method does not call TableDescriptor's 
> GridH2Table close and optionally GridLuceneIndex close, which causes 
> OFFHEAP_TIERED cache to leak memory.



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


[jira] [Created] (IGNITE-3560) Unify type descriptor removal and destruction in IgniteH2Indexing

2016-07-23 Thread Sergi Vladykin (JIRA)
Sergi Vladykin created IGNITE-3560:
--

 Summary: Unify type descriptor removal and destruction in 
IgniteH2Indexing
 Key: IGNITE-3560
 URL: https://issues.apache.org/jira/browse/IGNITE-3560
 Project: Ignite
  Issue Type: Bug
Reporter: Sergi Vladykin
Priority: Blocker
 Fix For: 1.7


Currently I see at least 3 places where we have to deal with table destruction:

1. unregisterCache() -> Schema.onDrop()
2. unregisterType() -> removeTable()
3. stop()

We need to refactor them to call the same logic which has to always do the 
following steps:
1. dataTables.remove()
2. GridH2Table.destroy()
3. U.closeQuiet(TableDescriptor.luceneIdx)




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


[jira] [Commented] (IGNITE-3516) H2 Indexing unregisterCache method does not cleanup resources and causes memory leak with OFFHEAP_TIERED cache mode cache.

2016-07-23 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-3516:


I reviewed the code. The fix does not seem sufficient right now because there 
are multiple places where we handle table remove logic. And as it was pointed 
out not always correctly.

I think I'll close this issue and create another one with more detailed 
description. Then I'll ask someone more experienced in Ignite code base to do a 
correct refactoring to handle this in a single place and to add respective 
tests.

[~kromulan] Thanks for reporting the issue!

> H2 Indexing unregisterCache method does not cleanup resources and causes 
> memory leak with OFFHEAP_TIERED cache mode cache.
> --
>
> Key: IGNITE-3516
> URL: https://issues.apache.org/jira/browse/IGNITE-3516
> Project: Ignite
>  Issue Type: Bug
>  Components: cache
>Affects Versions: 1.6
>Reporter: Krome Plasma
>Assignee: Krome Plasma
>Priority: Critical
> Fix For: 1.7
>
>
> H2 Indexing unregisterCache method does not call TableDescriptor's 
> GridH2Table close and optionally GridLuceneIndex close, which causes 
> OFFHEAP_TIERED cache to leak memory.



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


[jira] [Commented] (IGNITE-1232) Support distributed SQL JOIN

2016-07-21 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-1232:


I still think that there is something wrong with our P -> R -> P handling. 
Because semantically in case of distributed join P cache has access to all the 
remote data and thus it is equivalent to R cache. No?

> Support distributed SQL JOIN 
> -
>
> Key: IGNITE-1232
> URL: https://issues.apache.org/jira/browse/IGNITE-1232
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Sergi Vladykin
>Assignee: Sergi Vladykin
> Fix For: 1.7
>
>




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


[jira] [Created] (IGNITE-3488) Prohibit null as name in all the components (cache name first of all).

2016-07-16 Thread Sergi Vladykin (JIRA)
Sergi Vladykin created IGNITE-3488:
--

 Summary: Prohibit null as name in all the components (cache name 
first of all).
 Key: IGNITE-3488
 URL: https://issues.apache.org/jira/browse/IGNITE-3488
 Project: Ignite
  Issue Type: Improvement
Reporter: Sergi Vladykin
Priority: Blocker
 Fix For: 2.0


Need to create a list of all the affected components.



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


[jira] [Resolved] (IGNITE-3482) Implement lazy query execution in H2.

2016-07-14 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin resolved IGNITE-3482.

Resolution: Duplicate

IGNITE-3481

> Implement lazy query execution in H2.
> -
>
> Key: IGNITE-3482
> URL: https://issues.apache.org/jira/browse/IGNITE-3482
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Sergi Vladykin
>




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


[jira] [Created] (IGNITE-3482) Implement lazy query execution in H2.

2016-07-14 Thread Sergi Vladykin (JIRA)
Sergi Vladykin created IGNITE-3482:
--

 Summary: Implement lazy query execution in H2.
 Key: IGNITE-3482
 URL: https://issues.apache.org/jira/browse/IGNITE-3482
 Project: Ignite
  Issue Type: Improvement
Reporter: Sergi Vladykin






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


[jira] [Created] (IGNITE-3481) Implement lazy query execution in H2.

2016-07-14 Thread Sergi Vladykin (JIRA)
Sergi Vladykin created IGNITE-3481:
--

 Summary: Implement lazy query execution in H2.
 Key: IGNITE-3481
 URL: https://issues.apache.org/jira/browse/IGNITE-3481
 Project: Ignite
  Issue Type: Improvement
Reporter: Sergi Vladykin






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


[jira] [Closed] (IGNITE-3254) Valid SQL index configuration is not accepted in certain cases

2016-07-13 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin closed IGNITE-3254.
--

> Valid SQL index configuration is not accepted in certain cases
> --
>
> Key: IGNITE-3254
> URL: https://issues.apache.org/jira/browse/IGNITE-3254
> Project: Ignite
>  Issue Type: Bug
>  Components: general
> Environment: java 8
>Reporter: Alexei Scherbakov
>Assignee: Sergi Vladykin
> Fix For: 1.7
>
> Attachments: Example.java
>
>
> In certain cases involving inheritance valid SQL configuration is not 
> accepted when run under java 8. See example in the attachment.
> The reason is the different behavior of getDeclaredMethods in
> java 7 and java 8, leading to duplication of indexes in latter.
> More details here:
> http://stackoverflow.com/questions/27013542/getdeclaredmethods-behaving-differently-in-java-7-vs-java-8



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


[jira] [Resolved] (IGNITE-3254) Valid SQL index configuration is not accepted in certain cases

2016-07-13 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin resolved IGNITE-3254.

Resolution: Fixed

merged to master

> Valid SQL index configuration is not accepted in certain cases
> --
>
> Key: IGNITE-3254
> URL: https://issues.apache.org/jira/browse/IGNITE-3254
> Project: Ignite
>  Issue Type: Bug
>  Components: general
> Environment: java 8
>Reporter: Alexei Scherbakov
>Assignee: Sergi Vladykin
> Fix For: 1.7
>
> Attachments: Example.java
>
>
> In certain cases involving inheritance valid SQL configuration is not 
> accepted when run under java 8. See example in the attachment.
> The reason is the different behavior of getDeclaredMethods in
> java 7 and java 8, leading to duplication of indexes in latter.
> More details here:
> http://stackoverflow.com/questions/27013542/getdeclaredmethods-behaving-differently-in-java-7-vs-java-8



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


[jira] [Commented] (IGNITE-3254) Valid SQL index configuration is not accepted in certain cases

2016-07-12 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-3254:


I think the fix must be relatively easy: if we have duplications possible 
because of generated bridges we have to pick method with the most specific 
return type. If return types do not belong to the same type hierarchy, then 
throw exception.

> Valid SQL index configuration is not accepted in certain cases
> --
>
> Key: IGNITE-3254
> URL: https://issues.apache.org/jira/browse/IGNITE-3254
> Project: Ignite
>  Issue Type: Bug
>  Components: general
> Environment: java 8
>Reporter: Alexei Scherbakov
>Assignee: Sergi Vladykin
> Fix For: 1.7
>
> Attachments: Example.java
>
>
> In certain cases involving inheritance valid SQL configuration is not 
> accepted when run under java 8. See example in the attachment.
> The reason is the different behavior of getDeclaredMethods in
> java 7 and java 8, leading to duplication of indexes in latter.
> More details here:
> http://stackoverflow.com/questions/27013542/getdeclaredmethods-behaving-differently-in-java-7-vs-java-8



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


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

2016-07-12 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin commented on IGNITE-2680:


First of all couple of notices on coding style

1. Stop making variable final and try to avoid changing code if no one asked 
you to do that.
2. Never use abbreviations on class and method name, this is strongly 
prohibited.

Overall I don't like your changes, for timeouts they are mostly wrong (see the 
correct way below), for cancellation i don't like RunnableFuture because it 
makes me think that queries will run in some separate threads, but it would be 
wrong, so I'd prefer to avoid confusing staff like this.
Please rollback everything that you did in IgniteH2Indexing, MapQueryExecutor, 
ReduceQueryExecutor and do the following instead:

For query timeouts:
1. In method IgniteH2Indexing.executeSqlQuery pass timeout.
2. Cast Connection to H2 JdbcConnection and get Session from there.
3. Before stmt.execute() if we have a timeout do 
session.setQueryTimeout(timeout) - It accepts timeout in milliseconds.
4. In finally block after the statement execution clear the query timeout by 
session.setQueryTimeout(0);
5. If method accepts time unit, it must have checks that argument is valid. For 
example if we don't support precision higher than milliseconds, than we have to 
check that argument is positive and is no less than 1 ms. Also describe these 
restrictions in javadocs for all methods (for getters as well).

For query cancellation:
1. Pass additional parameter AtomicReference cancel
for local queries IgniteH2Indexing.executeSqlQuery(...) and all the way up;
for distributed queries to GridReduceQueryExecutor.query(...) and all the way 
up;
2. For local queries wrap PreparedStatement.cancel() into GridAbsClosure and 
try to CAS to this ref, if it does not succeed just throw cancellation 
exception right away.
For distributed queries you need to put all the needed resources to send cancel 
requests to all the parties and cancel reduce query the same way as local one.
3. QueryCursorImpl.close() must have this reference and attempt to get cancel 
closure from it and CAS it to no-op constant and if succeeded call apply() on 
that cancel closure.

I think once you'll implement this cancellation for local queries, it will be 
obvious how to compose these cancellation refs for distributed queries.

> 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] [Resolved] (IGNITE-3273) SQL query parse error on map query side

2016-06-14 Thread Sergi Vladykin (JIRA)

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

Sergi Vladykin resolved IGNITE-3273.

Resolution: Fixed

merged to master

> SQL query parse error on map query side
> ---
>
> Key: IGNITE-3273
> URL: https://issues.apache.org/jira/browse/IGNITE-3273
> Project: Ignite
>  Issue Type: Bug
>  Components: general
>Reporter: Alexei Scherbakov
> Fix For: 1.7
>
> Attachments: Example2.java
>
>
> Distributed SQL query cannot be parsed on map side if it contains left join.
> The same local query works without any error.
> Replacing left join with inner join removes the error.
> See the attachment for the reproducer.
> {noformat}
> [10:40:58,850][ERROR][main][GridMapQueryExecutor] Failed to execute local 
> query: GridQueryRequest [reqId=1, pageSize=1024, space=P, 
> qrys=[GridCacheSqlQuery [qry=SELECT
> PERSON._KEY __C0,
> PERSON._VAL __C1,
> PERSON.NAME __C2,
> PERSON.ID __C3,
> PERSON.DEPID __C4,
> DEP._KEY __C5,
> DEP._VAL __C6,
> DEP.NAME __C7,
> DEP.ID __C8,
> DEP.ORGID __C9,
> ORG._KEY __C10,
> ORG._VAL __C11,
> ORG.NAME __C12,
> ORG.ID __C13
> FROM P.PERSON 
>  INNER JOIN D.DEPARTMENT DEP 
>  LEFT OUTER JOIN O.ORG ORG 
>  ON ORG.ID = DEP.ORGID
> WHERE DEP.ID = P.PERSON.DEPID, params=[], paramIdxs=[], paramsSize=0, 
> cols={__C0=GridSqlType [type=4, scale=0, precision=10, displaySize=11, 
> sql=INTEGER], __C1=GridSqlType [type=19, scale=0, precision=2147483647, 
> displaySize=2147483647, sql=OTHER], __C2=GridSqlType [type=13, scale=0, 
> precision=2147483647, displaySize=2147483647, sql=VARCHAR], __C3=GridSqlType 
> [type=4, scale=0, precision=10, displaySize=11, sql=INTEGER], 
> __C4=GridSqlType [type=4, scale=0, precision=10, displaySize=11, 
> sql=INTEGER], __C5=GridSqlType [type=4, scale=0, precision=10, 
> displaySize=11, sql=INTEGER], __C6=GridSqlType [type=19, scale=0, 
> precision=2147483647, displaySize=2147483647, sql=OTHER], __C7=GridSqlType 
> [type=13, scale=0, precision=2147483647, displaySize=2147483647, 
> sql=VARCHAR], __C8=GridSqlType [type=4, scale=0, precision=10, 
> displaySize=11, sql=INTEGER], __C9=GridSqlType [type=4, scale=0, 
> precision=10, displaySize=11, sql=INTEGER], __C10=GridSqlType [type=4, 
> scale=0, precision=10, displaySize=11, sql=INTEGER], __C11=GridSqlType 
> [type=19, scale=0, precision=2147483647, displaySize=2147483647, sql=OTHER], 
> __C12=GridSqlType [type=13, scale=0, precision=2147483647, 
> displaySize=2147483647, sql=VARCHAR], __C13=GridSqlType [type=4, scale=0, 
> precision=10, displaySize=11, sql=INTEGER]}, alias=null]], 
> topVer=AffinityTopologyVersion [topVer=1, minorTopVer=0], extraSpaces=[D, O], 
> parts=null]
> class org.apache.ignite.IgniteCheckedException: Failed to parse SQL query: 
> SELECT
> PERSON._KEY __C0,
> PERSON._VAL __C1,
> PERSON.NAME __C2,
> PERSON.ID __C3,
> PERSON.DEPID __C4,
> DEP._KEY __C5,
> DEP._VAL __C6,
> DEP.NAME __C7,
> DEP.ID __C8,
> DEP.ORGID __C9,
> ORG._KEY __C10,
> ORG._VAL __C11,
> ORG.NAME __C12,
> ORG.ID __C13
> FROM P.PERSON 
>  INNER JOIN D.DEPARTMENT DEP 
>  LEFT OUTER JOIN O.ORG ORG 
>  ON ORG.ID = DEP.ORGID
> WHERE DEP.ID = P.PERSON.DEPID
>   at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.executeSqlQuery(IgniteH2Indexing.java:828)
>   at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.executeSqlQueryWithTimer(IgniteH2Indexing.java:870)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridMapQueryExecutor.onQueryRequest(GridMapQueryExecutor.java:454)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridMapQueryExecutor.onMessage(GridMapQueryExecutor.java:184)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.send(GridReduceQueryExecutor.java:1065)
>   at 
> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.query(GridReduceQueryExecutor.java:572)
>   at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing$2.iterator(IgniteH2Indexing.java:971)
>   at 
> org.apache.ignite.internal.processors.cache.QueryCursorImpl.iterator(QueryCursorImpl.java:61)
>   at 
> org.apache.ignite.internal.processors.cache.QueryCursorImpl.getAll(QueryCursorImpl.java:73)
>   at 
> org.apache.ignite.internal.processors.cache.distributed.replicated.Example2.main(Example2.java:40)
> Caused by: org.h2.jdbc.JdbcSQLException: Column "DEP.ORGID" not found; SQL 
> statement:
> SELECT
> PERSON._KEY __C0,
> PERSON._VAL __C1,
> PERSON.NAME __C2,
> PERSON.ID __C3,
> PERSON.DEPID __C4,
> DEP._KEY __C5,
> DEP._VAL __C6,
> DEP.NAME __C7,
> DEP.ID __C8,
> DEP.ORGID __C9,
> ORG._KEY __C10,
> ORG._VAL __C11,
> ORG.NAME __C12,
> ORG.ID __C13
> FROM P.PERSON 
>  INNER JOIN D.DEPARTMENT DEP 
>  LEFT OUTER JOIN O.ORG ORG 
>  ON 

[jira] [Created] (IGNITE-3180) Support STDDEV_POP and STDDEV_SAMP aggregate functions over partitioned caches.

2016-05-20 Thread Sergi Vladykin (JIRA)
Sergi Vladykin created IGNITE-3180:
--

 Summary: Support STDDEV_POP and STDDEV_SAMP aggregate functions 
over partitioned caches.
 Key: IGNITE-3180
 URL: https://issues.apache.org/jira/browse/IGNITE-3180
 Project: Ignite
  Issue Type: Improvement
Reporter: Sergi Vladykin






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


[jira] [Created] (IGNITE-3171) Support column selectivity calculation for SQL

2016-05-18 Thread Sergi Vladykin (JIRA)
Sergi Vladykin created IGNITE-3171:
--

 Summary: Support column selectivity calculation for SQL
 Key: IGNITE-3171
 URL: https://issues.apache.org/jira/browse/IGNITE-3171
 Project: Ignite
  Issue Type: Improvement
Reporter: Sergi Vladykin


Need to support ANALYZE command. http://h2database.com/html/grammar.html#analyze

Currently H2 explicitly ignores external table engines (don't see any reasons 
why). Probably we have to fix H2 by adding method Table.canAnalyze() and use it 
in that check.

Also when IGNITE-1232 will be merged we'll need to propagate this statistics to 
clients.



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


  1   2   >