[jira] [Closed] (IGNITE-7265) BPlusTreeSelfTest.testIterateConcurrentPutRemove_1 fails
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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
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
[ 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
[ 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
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
[ 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
[ 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
[ 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
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
[ 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
[ 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
[ 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
[ 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
[ 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
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
[ 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
[ 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
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
[ 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
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
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()
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
[ 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
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
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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.
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.
[ 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.
[ 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.
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
[ 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
[ 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
[ 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
[ 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.
[ 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.
[ 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.
[ 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.
[ 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
[ 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.
[ 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
[ 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
[ 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
[ 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
[ 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.
[ 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()); > CacheConfigurationcfg = 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.
[ 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
[ 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.
[ 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
[ 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.
[ 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
[ 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
[ 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.
[ 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.
[ 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.
[ 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.
[ 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.
[ 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.
[ 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} >IgniteCachecache = 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
[ 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
[ 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.
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.
[ 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.
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
[ 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
[ 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
[ 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.
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
[ 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
[ 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
[ 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
[ 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
[ 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
[ 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.
[ 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
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.
[ 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
[ 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).
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.
[ 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.
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.
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
[ 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
[ 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
[ 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
[ 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
[ 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.
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
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)