[jira] [Resolved] (IGNITE-24600) Support Write Intent switch in zones for abandoned transactions
[ https://issues.apache.org/jira/browse/IGNITE-24600?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Roman Puchkovskiy resolved IGNITE-24600. Resolution: Invalid This has become irrelevant as it's not a problem if some WI of an abandoned transaction remain in storage for some time; we already rely on this when cleaning up abandoned transactions (as we don't know all partitions enlisted in them, some WIs may still remain; they will be resolved later when we stumble upon them while reading) > Support Write Intent switch in zones for abandoned transactions > --- > > Key: IGNITE-24600 > URL: https://issues.apache.org/jira/browse/IGNITE-24600 > Project: Ignite > Issue Type: Improvement >Reporter: Roman Puchkovskiy >Assignee: Roman Puchkovskiy >Priority: Major > Labels: ignite-3 > > When a finish for an abandoned transaction is initiated, we know the zone > partition, but not which tables where enlisted in that zone partition. We > should introduce a flag called 'allTables' in PendingTxPartitionEnlistment > and EnlistedPartitionGroup and inspect it when executing a Write Intent > switch request. When the flag is true, we should apply the WI switch to all > tables and not the ones that are passed explicitly (as in this case no > explicit table IDs will be sent). -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-24649) Remove AbstractZoneReplicationTest
Roman Puchkovskiy created IGNITE-24649: -- Summary: Remove AbstractZoneReplicationTest Key: IGNITE-24649 URL: https://issues.apache.org/jira/browse/IGNITE-24649 Project: Ignite Issue Type: Improvement Reporter: Roman Puchkovskiy As it duplicates ItAbstractColocationTest -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Assigned] (IGNITE-24651) Remove `IgniteWorkerListener`
[ https://issues.apache.org/jira/browse/IGNITE-24651?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ivan Bessonov reassigned IGNITE-24651: -- Assignee: Ivan Bessonov > Remove `IgniteWorkerListener` > - > > Key: IGNITE-24651 > URL: https://issues.apache.org/jira/browse/IGNITE-24651 > Project: Ignite > Issue Type: Improvement >Reporter: Ivan Bessonov >Assignee: Ivan Bessonov >Priority: Major > Labels: ignite-3 > > This interface is not used, we always pass null where this parameter is > present. I propose cleaning the code from this useless interface -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-24650) Make MappingServiceImpl#composeDistributions aware of per-zone colocation
Roman Puchkovskiy created IGNITE-24650: -- Summary: Make MappingServiceImpl#composeDistributions aware of per-zone colocation Key: IGNITE-24650 URL: https://issues.apache.org/jira/browse/IGNITE-24650 Project: Ignite Issue Type: Improvement Reporter: Roman Puchkovskiy -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-24652) Disable ItDisasterRecoveryReconfigurationTest.testSecondResetRewritesUnfinishedFirstPhaseReset
Alexander Lapin created IGNITE-24652: Summary: Disable ItDisasterRecoveryReconfigurationTest.testSecondResetRewritesUnfinishedFirstPhaseReset Key: IGNITE-24652 URL: https://issues.apache.org/jira/browse/IGNITE-24652 Project: Ignite Issue Type: Improvement Reporter: Alexander Lapin {code:java} org.opentest4j.AssertionFailedError: Expected: Assignments [nodes=HashSet [Assignment [consistentId=idrrt_tsrrufpr_1, isPeer=true], Assignment [consistentId=idrrt_tsrrufpr_0, isPeer=true]], force=false, timestamp=114069840443867136, fromReset=false], actual: Assignments [nodes=HashSet [Assignment [consistentId=idrrt_tsrrufpr_0, isPeer=true]], force=false, timestamp=114069840583196674, fromReset=false] ==> expected: but was: at app//org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151) at app//org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132) at app//org.junit.jupiter.api.AssertTrue.failNotTrue(AssertTrue.java:63) at app//org.junit.jupiter.api.AssertTrue.assertTrue(AssertTrue.java:42) at app//org.junit.jupiter.api.Assertions.assertTrue(Assertions.java:191) at app//org.apache.ignite.internal.disaster.ItDisasterRecoveryReconfigurationTest.assertStableAssignments(ItDisasterRecoveryReconfigurationTest.java:1852) at app//org.apache.ignite.internal.disaster.ItDisasterRecoveryReconfigurationTest.testSecondResetRewritesUnfinishedFirstPhaseReset(ItDisasterRecoveryReconfigurationTest.java:1577) at java.base@17.0.6/java.lang.reflect.Method.invoke(Method.java:568) at java.base@17.0.6/java.util.ArrayList.forEach(ArrayList.java:1511) at java.base@17.0.6/java.util.ArrayList.forEach(ArrayList.java:1511) {code} TC Link https://ci.ignite.apache.org/buildConfiguration/ApacheIgnite3xGradle_Test_RunAllTests/8903495 -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24652) Disable ItDisasterRecoveryReconfigurationTest.testSecondResetRewritesUnfinishedFirstPhaseReset
[ https://issues.apache.org/jira/browse/IGNITE-24652?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Alexander Lapin updated IGNITE-24652: - Epic Link: IGNITE-21389 > Disable > ItDisasterRecoveryReconfigurationTest.testSecondResetRewritesUnfinishedFirstPhaseReset > -- > > Key: IGNITE-24652 > URL: https://issues.apache.org/jira/browse/IGNITE-24652 > Project: Ignite > Issue Type: Improvement >Reporter: Alexander Lapin >Priority: Major > Labels: ignite-3 > > {code:java} > org.opentest4j.AssertionFailedError: Expected: Assignments [nodes=HashSet > [Assignment [consistentId=idrrt_tsrrufpr_1, isPeer=true], Assignment > [consistentId=idrrt_tsrrufpr_0, isPeer=true]], force=false, > timestamp=114069840443867136, fromReset=false], actual: Assignments > [nodes=HashSet [Assignment [consistentId=idrrt_tsrrufpr_0, isPeer=true]], > force=false, timestamp=114069840583196674, fromReset=false] ==> expected: > but was: at > app//org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151) > at > app//org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132) > at app//org.junit.jupiter.api.AssertTrue.failNotTrue(AssertTrue.java:63) > at app//org.junit.jupiter.api.AssertTrue.assertTrue(AssertTrue.java:42) at > app//org.junit.jupiter.api.Assertions.assertTrue(Assertions.java:191) at > app//org.apache.ignite.internal.disaster.ItDisasterRecoveryReconfigurationTest.assertStableAssignments(ItDisasterRecoveryReconfigurationTest.java:1852) > at > app//org.apache.ignite.internal.disaster.ItDisasterRecoveryReconfigurationTest.testSecondResetRewritesUnfinishedFirstPhaseReset(ItDisasterRecoveryReconfigurationTest.java:1577) > at java.base@17.0.6/java.lang.reflect.Method.invoke(Method.java:568) at > java.base@17.0.6/java.util.ArrayList.forEach(ArrayList.java:1511) at > java.base@17.0.6/java.util.ArrayList.forEach(ArrayList.java:1511) {code} > TC Link > https://ci.ignite.apache.org/buildConfiguration/ApacheIgnite3xGradle_Test_RunAllTests/8903495 -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Assigned] (IGNITE-24652) Disable ItDisasterRecoveryReconfigurationTest.testSecondResetRewritesUnfinishedFirstPhaseReset
[ https://issues.apache.org/jira/browse/IGNITE-24652?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Alexander Lapin reassigned IGNITE-24652: Assignee: Alexander Lapin > Disable > ItDisasterRecoveryReconfigurationTest.testSecondResetRewritesUnfinishedFirstPhaseReset > -- > > Key: IGNITE-24652 > URL: https://issues.apache.org/jira/browse/IGNITE-24652 > Project: Ignite > Issue Type: Improvement >Reporter: Alexander Lapin >Assignee: Alexander Lapin >Priority: Major > Labels: ignite-3 > > {code:java} > org.opentest4j.AssertionFailedError: Expected: Assignments [nodes=HashSet > [Assignment [consistentId=idrrt_tsrrufpr_1, isPeer=true], Assignment > [consistentId=idrrt_tsrrufpr_0, isPeer=true]], force=false, > timestamp=114069840443867136, fromReset=false], actual: Assignments > [nodes=HashSet [Assignment [consistentId=idrrt_tsrrufpr_0, isPeer=true]], > force=false, timestamp=114069840583196674, fromReset=false] ==> expected: > but was: at > app//org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151) > at > app//org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132) > at app//org.junit.jupiter.api.AssertTrue.failNotTrue(AssertTrue.java:63) > at app//org.junit.jupiter.api.AssertTrue.assertTrue(AssertTrue.java:42) at > app//org.junit.jupiter.api.Assertions.assertTrue(Assertions.java:191) at > app//org.apache.ignite.internal.disaster.ItDisasterRecoveryReconfigurationTest.assertStableAssignments(ItDisasterRecoveryReconfigurationTest.java:1852) > at > app//org.apache.ignite.internal.disaster.ItDisasterRecoveryReconfigurationTest.testSecondResetRewritesUnfinishedFirstPhaseReset(ItDisasterRecoveryReconfigurationTest.java:1577) > at java.base@17.0.6/java.lang.reflect.Method.invoke(Method.java:568) at > java.base@17.0.6/java.util.ArrayList.forEach(ArrayList.java:1511) at > java.base@17.0.6/java.util.ArrayList.forEach(ArrayList.java:1511) {code} > TC Link > https://ci.ignite.apache.org/buildConfiguration/ApacheIgnite3xGradle_Test_RunAllTests/8903495 -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24652) Disable ItDisasterRecoveryReconfigurationTest.testSecondResetRewritesUnfinishedFirstPhaseReset
[ https://issues.apache.org/jira/browse/IGNITE-24652?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Alexander Lapin updated IGNITE-24652: - Ignite Flags: (was: Docs Required,Release Notes Required) > Disable > ItDisasterRecoveryReconfigurationTest.testSecondResetRewritesUnfinishedFirstPhaseReset > -- > > Key: IGNITE-24652 > URL: https://issues.apache.org/jira/browse/IGNITE-24652 > Project: Ignite > Issue Type: Improvement >Reporter: Alexander Lapin >Priority: Major > > {code:java} > org.opentest4j.AssertionFailedError: Expected: Assignments [nodes=HashSet > [Assignment [consistentId=idrrt_tsrrufpr_1, isPeer=true], Assignment > [consistentId=idrrt_tsrrufpr_0, isPeer=true]], force=false, > timestamp=114069840443867136, fromReset=false], actual: Assignments > [nodes=HashSet [Assignment [consistentId=idrrt_tsrrufpr_0, isPeer=true]], > force=false, timestamp=114069840583196674, fromReset=false] ==> expected: > but was: at > app//org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151) > at > app//org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132) > at app//org.junit.jupiter.api.AssertTrue.failNotTrue(AssertTrue.java:63) > at app//org.junit.jupiter.api.AssertTrue.assertTrue(AssertTrue.java:42) at > app//org.junit.jupiter.api.Assertions.assertTrue(Assertions.java:191) at > app//org.apache.ignite.internal.disaster.ItDisasterRecoveryReconfigurationTest.assertStableAssignments(ItDisasterRecoveryReconfigurationTest.java:1852) > at > app//org.apache.ignite.internal.disaster.ItDisasterRecoveryReconfigurationTest.testSecondResetRewritesUnfinishedFirstPhaseReset(ItDisasterRecoveryReconfigurationTest.java:1577) > at java.base@17.0.6/java.lang.reflect.Method.invoke(Method.java:568) at > java.base@17.0.6/java.util.ArrayList.forEach(ArrayList.java:1511) at > java.base@17.0.6/java.util.ArrayList.forEach(ArrayList.java:1511) {code} > TC Link > https://ci.ignite.apache.org/buildConfiguration/ApacheIgnite3xGradle_Test_RunAllTests/8903495 -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Resolved] (IGNITE-24650) Make MappingServiceImpl#composeDistributions aware of per-zone colocation
[ https://issues.apache.org/jira/browse/IGNITE-24650?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Roman Puchkovskiy resolved IGNITE-24650. Resolution: Invalid Closing as irrelevant > Make MappingServiceImpl#composeDistributions aware of per-zone colocation > - > > Key: IGNITE-24650 > URL: https://issues.apache.org/jira/browse/IGNITE-24650 > Project: Ignite > Issue Type: Improvement >Reporter: Roman Puchkovskiy >Priority: Major > Labels: ignite-3 > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-24651) Remove `IgniteWorkerListener`
Ivan Bessonov created IGNITE-24651: -- Summary: Remove `IgniteWorkerListener` Key: IGNITE-24651 URL: https://issues.apache.org/jira/browse/IGNITE-24651 Project: Ignite Issue Type: Improvement Reporter: Ivan Bessonov This interface is not used, we always pass null where this parameter is present. I propose cleaning the code from this useless interface -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24652) Disable ItDisasterRecoveryReconfigurationTest.testSecondResetRewritesUnfinishedFirstPhaseReset
[ https://issues.apache.org/jira/browse/IGNITE-24652?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Alexander Lapin updated IGNITE-24652: - Labels: ignite-3 (was: ) > Disable > ItDisasterRecoveryReconfigurationTest.testSecondResetRewritesUnfinishedFirstPhaseReset > -- > > Key: IGNITE-24652 > URL: https://issues.apache.org/jira/browse/IGNITE-24652 > Project: Ignite > Issue Type: Improvement >Reporter: Alexander Lapin >Priority: Major > Labels: ignite-3 > > {code:java} > org.opentest4j.AssertionFailedError: Expected: Assignments [nodes=HashSet > [Assignment [consistentId=idrrt_tsrrufpr_1, isPeer=true], Assignment > [consistentId=idrrt_tsrrufpr_0, isPeer=true]], force=false, > timestamp=114069840443867136, fromReset=false], actual: Assignments > [nodes=HashSet [Assignment [consistentId=idrrt_tsrrufpr_0, isPeer=true]], > force=false, timestamp=114069840583196674, fromReset=false] ==> expected: > but was: at > app//org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151) > at > app//org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132) > at app//org.junit.jupiter.api.AssertTrue.failNotTrue(AssertTrue.java:63) > at app//org.junit.jupiter.api.AssertTrue.assertTrue(AssertTrue.java:42) at > app//org.junit.jupiter.api.Assertions.assertTrue(Assertions.java:191) at > app//org.apache.ignite.internal.disaster.ItDisasterRecoveryReconfigurationTest.assertStableAssignments(ItDisasterRecoveryReconfigurationTest.java:1852) > at > app//org.apache.ignite.internal.disaster.ItDisasterRecoveryReconfigurationTest.testSecondResetRewritesUnfinishedFirstPhaseReset(ItDisasterRecoveryReconfigurationTest.java:1577) > at java.base@17.0.6/java.lang.reflect.Method.invoke(Method.java:568) at > java.base@17.0.6/java.util.ArrayList.forEach(ArrayList.java:1511) at > java.base@17.0.6/java.util.ArrayList.forEach(ArrayList.java:1511) {code} > TC Link > https://ci.ignite.apache.org/buildConfiguration/ApacheIgnite3xGradle_Test_RunAllTests/8903495 -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-18426) Sql. Fix distribution function to use the distribution zone ID instead of the table ID.
[ https://issues.apache.org/jira/browse/IGNITE-18426?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Roman Puchkovskiy updated IGNITE-18426: --- Epic Link: IGNITE-22115 (was: IGNITE-20473) > Sql. Fix distribution function to use the distribution zone ID instead of the > table ID. > --- > > Key: IGNITE-18426 > URL: https://issues.apache.org/jira/browse/IGNITE-18426 > Project: Ignite > Issue Type: Improvement > Components: sql >Reporter: Pavel Pereslegin >Priority: Major > Labels: ignite-3 > Fix For: 3.1 > > Time Spent: 10m > Remaining Estimate: 0h > > The affinity function must be adjusted in IGNITE-18211, but it currently uses > the table ID instead of the distribution zone ID because distribution zones > do not have table integration. > We need to fix this after IGNITE-18089. > Not forget: > * Enable ItSetOpTest#testSetOpColocated > * Change the {{zoneId}} type from {{Object}} to actual type. > * Fix other {{TODO}} related to IGNITE-18426. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (IGNITE-24635) Use PartitionGroupId + tableId instead of TablePartitionId in PartitionReplicaListener
[ https://issues.apache.org/jira/browse/IGNITE-24635?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17930691#comment-17930691 ] Roman Puchkovskiy commented on IGNITE-24635: The patch looks good to me > Use PartitionGroupId + tableId instead of TablePartitionId in > PartitionReplicaListener > -- > > Key: IGNITE-24635 > URL: https://issues.apache.org/jira/browse/IGNITE-24635 > Project: Ignite > Issue Type: Improvement >Reporter: Alexander Lapin >Assignee: Alexander Lapin >Priority: Major > Labels: ignite-3 > Time Spent: 50m > Remaining Estimate: 0h > > h3. Motivation > It's required to change TablePartitionId in PartitionReplicaListener with > ZonePartitionId in case of colocation enabled in order to properly ensure > primary replicas on the "server" side. > h3. Definition of Done > * Within PartitionReplicaListener PartitionGroupId is used where necessary. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Assigned] (IGNITE-23960) Sql. Execution node should not hold thread for too long
[ https://issues.apache.org/jira/browse/IGNITE-23960?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andrey Mashenkov reassigned IGNITE-23960: - Assignee: Andrey Mashenkov > Sql. Execution node should not hold thread for too long > --- > > Key: IGNITE-23960 > URL: https://issues.apache.org/jira/browse/IGNITE-23960 > Project: Ignite > Issue Type: Bug > Components: sql >Reporter: Konstantin Orlov >Assignee: Andrey Mashenkov >Priority: Major > Labels: ignite-3 > > Some execution nodes violates a key principle of cooperative multitasking: > "Every job must not occupy a thread for too long." The nodes (at least > {{NestedLoopJoinNode}}) are monopolizing threads for extended periods, which > negatively impacts overall system responsiveness and throughput. > Let's check all execution nodes and fix this violation. The common approach > to address the issue is to reschedule execution after certain amount of rows > has been processed. See {{HashAggregateNode#flush}} for example: > {code:java} > if (processed >= inBufSize && requested > 0) { > // allow others to do their job > context().execute(this::flush, this::onError); > return; > } > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24645) Improve connection error logging for thin client
[ https://issues.apache.org/jira/browse/IGNITE-24645?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Aleksandr Popov updated IGNITE-24645: - Priority: Minor (was: Major) > Improve connection error logging for thin client > > > Key: IGNITE-24645 > URL: https://issues.apache.org/jira/browse/IGNITE-24645 > Project: Ignite > Issue Type: Improvement >Reporter: Kirill Tkalenko >Assignee: Kirill Tkalenko >Priority: Minor > Labels: ignite-3 > Attachments: error_first.rtf > > Time Spent: 0.5h > Remaining Estimate: 0h > > When using a cluster in which nodes are frequently restarted, warnings are > found in logs, for example, about a thin client connection being refused. > This looks alarming at first glance, although it is expected. It is suggested > to output some expected errors at the info level and without a stack trace. > [^error_first.rtf] -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-24646) Add Gradle Wrapper into TC Bot to prevent build error caused by incorrect gradle version
Aleksandr Popov created IGNITE-24646: Summary: Add Gradle Wrapper into TC Bot to prevent build error caused by incorrect gradle version Key: IGNITE-24646 URL: https://issues.apache.org/jira/browse/IGNITE-24646 Project: Ignite Issue Type: Bug Reporter: Aleksandr Popov -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-24647) Add Gradle Wrapper into TC Bot to prevent build error caused by incorrect gradle version
Aleksandr Popov created IGNITE-24647: Summary: Add Gradle Wrapper into TC Bot to prevent build error caused by incorrect gradle version Key: IGNITE-24647 URL: https://issues.apache.org/jira/browse/IGNITE-24647 Project: Ignite Issue Type: Bug Reporter: Aleksandr Popov -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24645) Improve connection error logging for thin client
[ https://issues.apache.org/jira/browse/IGNITE-24645?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Aleksandr Popov updated IGNITE-24645: - Priority: Major (was: Minor) > Improve connection error logging for thin client > > > Key: IGNITE-24645 > URL: https://issues.apache.org/jira/browse/IGNITE-24645 > Project: Ignite > Issue Type: Improvement >Reporter: Kirill Tkalenko >Assignee: Kirill Tkalenko >Priority: Major > Labels: ignite-3 > Attachments: error_first.rtf > > Time Spent: 0.5h > Remaining Estimate: 0h > > When using a cluster in which nodes are frequently restarted, warnings are > found in logs, for example, about a thin client connection being refused. > This looks alarming at first glance, although it is expected. It is suggested > to output some expected errors at the info level and without a stack trace. > [^error_first.rtf] -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Assigned] (IGNITE-24560) Sql. Result of script parsing with single statement is cached incorrectly
[ https://issues.apache.org/jira/browse/IGNITE-24560?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Konstantin Orlov reassigned IGNITE-24560: - Assignee: Konstantin Orlov > Sql. Result of script parsing with single statement is cached incorrectly > - > > Key: IGNITE-24560 > URL: https://issues.apache.org/jira/browse/IGNITE-24560 > Project: Ignite > Issue Type: Bug > Components: sql >Affects Versions: 3.0 >Reporter: Pavel Pereslegin >Assignee: Konstantin Orlov >Priority: Major > Labels: ignite-3 > Fix For: 3.1 > > Attachments: Ignite CLI error.png > > Time Spent: 10m > Remaining Estimate: 0h > > Reproducer > {code:java} >@Test > public void testScriptSingleStatement() { > sql("create table test(id int primary key, val int)"); > igniteSql().executeScript("select * from test;"); > sql("alter table test drop column val"); > igniteSql().executeScript("select * from test;"); // Column 'VAL' not > found in table 'TEST > } > {code} > Error output > {noformat} > Caused by: org.apache.calcite.runtime.CalciteContextException: At line 1, > column 8: Column 'VAL' not found in table 'TEST' > at > java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490) > at > org.apache.calcite.runtime.Resources$ExInstWithCause.ex(Resources.java:511) > at org.apache.calcite.sql.SqlUtil.newContextException(SqlUtil.java:952) > at org.apache.calcite.sql.SqlUtil.newContextException(SqlUtil.java:937) > at > org.apache.calcite.sql.validate.SqlValidatorImpl.newValidationError(SqlValidatorImpl.java:5899) > at > org.apache.ignite.internal.sql.engine.prepare.IgniteSqlValidator.newValidationError(IgniteSqlValidator.java:291) > at > org.apache.calcite.sql.validate.DelegatingScope.fullyQualify(DelegatingScope.java:473) > at > org.apache.calcite.sql.validate.SqlValidatorImpl$Expander.visit(SqlValidatorImpl.java:7105) > at > org.apache.calcite.sql.validate.SqlValidatorImpl$SelectExpander.visit(SqlValidatorImpl.java:7276) > at > org.apache.calcite.sql.validate.SqlValidatorImpl$SelectExpander.visit(SqlValidatorImpl.java:7261) > at org.apache.calcite.sql.SqlIdentifier.accept(SqlIdentifier.java:324) > at > org.apache.calcite.sql.validate.SqlValidatorImpl$Expander.go(SqlValidatorImpl.java:7094) > at > org.apache.calcite.sql.validate.SqlValidatorImpl.expandSelectExpr(SqlValidatorImpl.java:6665) > at > org.apache.calcite.sql.validate.SqlValidatorImpl.expandSelectItem(SqlValidatorImpl.java:481) > at > org.apache.calcite.sql.validate.SqlValidatorImpl.validateSelectList(SqlValidatorImpl.java:5015) > at > org.apache.calcite.sql.validate.SqlValidatorImpl.validateSelect(SqlValidatorImpl.java:4096) > at > org.apache.ignite.internal.sql.engine.prepare.IgniteSqlValidator.validateSelect(IgniteSqlValidator.java:684) > at > org.apache.calcite.sql.validate.SelectNamespace.validateImpl(SelectNamespace.java:62) > at > org.apache.calcite.sql.validate.AbstractNamespace.validate(AbstractNamespace.java:95) > at > org.apache.calcite.sql.validate.SqlValidatorImpl.validateNamespace(SqlValidatorImpl.java:1206) > at > org.apache.calcite.sql.validate.SqlValidatorImpl.validateQuery(SqlValidatorImpl.java:1177) > at org.apache.calcite.sql.SqlSelect.validate(SqlSelect.java:282) > at > org.apache.calcite.sql.validate.SqlValidatorImpl.validateScopedExpression(SqlValidatorImpl.java:1143) > at > org.apache.calcite.sql.validate.SqlValidatorImpl.validate(SqlValidatorImpl.java:849) > at > org.apache.ignite.internal.sql.engine.prepare.IgniteSqlValidator.validate(IgniteSqlValidator.java:194) > at > org.apache.ignite.internal.sql.engine.prepare.IgnitePlanner.validateAndGetTypeMetadata(IgnitePlanner.java:303) > at > org.apache.ignite.internal.sql.engine.prepare.PrepareServiceImpl.lambda$prepareQuery$3(PrepareServiceImpl.java:389) > at > java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run$$$capture(CompletableFuture.java:1700) > {noformat} > This happened because we redirect the multi-statement execution with single > statement to single-statement execution workflow, but the AST tree in the > cache remains modified by validator. > E.g. > for single statement execution we generating AST each time. > {code:Java} > ParsedResult result = new ParsedResultImpl( > queryType, > query, > normalizedQuery, > parsedStatement.dynamicParamsCount(), > () -> { > // Descendants of SqlNode class are mutable, thus we must > use every > // synta
[jira] [Created] (IGNITE-24644) ZoneResourcesManagerTest#supportsParallelAllocation is flaky
Aleksandr Polovtsev created IGNITE-24644: Summary: ZoneResourcesManagerTest#supportsParallelAllocation is flaky Key: IGNITE-24644 URL: https://issues.apache.org/jira/browse/IGNITE-24644 Project: Ignite Issue Type: Bug Reporter: Aleksandr Polovtsev Assignee: Aleksandr Polovtsev This test can fail with the following error: {code:java} Caused by: java.util.concurrent.RejectedExecutionException: Thread limit exceeded replacing blocked worker at java.base/java.util.concurrent.ForkJoinPool.tryCompensate(ForkJoinPool.java:1819) at java.base/java.util.concurrent.ForkJoinPool.compensatedBlock(ForkJoinPool.java:3446) at java.base/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3432) at java.base/java.util.concurrent.CompletableFuture.timedGet(CompletableFuture.java:1939) at java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2095) at org.apache.ignite.internal.testframework.IgniteTestUtils.await(IgniteTestUtils.java:836) at org.apache.ignite.internal.testframework.IgniteTestUtils.await(IgniteTestUtils.java:865) at org.apache.ignite.internal.testframework.IgniteTestUtils.bypassingThreadAssertions(IgniteTestUtils.java:536) at org.apache.ignite.internal.partition.replicator.ZoneResourcesManagerTest.allocatePartitionResources(ZoneResourcesManagerTest.java:154) {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24635) Use PartitionGroupId + tableId instead of TablePartitionId in PartitionReplicaListener
[ https://issues.apache.org/jira/browse/IGNITE-24635?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Alexander Lapin updated IGNITE-24635: - Fix Version/s: 3.1 > Use PartitionGroupId + tableId instead of TablePartitionId in > PartitionReplicaListener > -- > > Key: IGNITE-24635 > URL: https://issues.apache.org/jira/browse/IGNITE-24635 > Project: Ignite > Issue Type: Improvement >Reporter: Alexander Lapin >Assignee: Alexander Lapin >Priority: Major > Labels: ignite-3 > Fix For: 3.1 > > Time Spent: 1h > Remaining Estimate: 0h > > h3. Motivation > It's required to change TablePartitionId in PartitionReplicaListener with > ZonePartitionId in case of colocation enabled in order to properly ensure > primary replicas on the "server" side. > h3. Definition of Done > * Within PartitionReplicaListener PartitionGroupId is used where necessary. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24641) Make waits in sql module interruptible
[ https://issues.apache.org/jira/browse/IGNITE-24641?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Roman Puchkovskiy updated IGNITE-24641: --- Summary: Make waits in sql module interruptible (was: Make wait in IgniteSqlImpl.execute() interruptible) > Make waits in sql module interruptible > -- > > Key: IGNITE-24641 > URL: https://issues.apache.org/jira/browse/IGNITE-24641 > Project: Ignite > Issue Type: Improvement >Reporter: Roman Puchkovskiy >Assignee: Roman Puchkovskiy >Priority: Major > Labels: ignite-3 > Fix For: 3.1 > > Time Spent: 10m > Remaining Estimate: 0h > > IgniteSqlImpl.execute() uses join() to wait on a future. This wait is > uninterruptible. If something goes wrong when executing a query and the > future never completes, tests invoking SQL might hang forever, even timeouts > will not help because the thread executing the test will be impossible to > interrupt. > We should use get() instead. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-24645) Improve connection error logging for thin client
Kirill Tkalenko created IGNITE-24645: Summary: Improve connection error logging for thin client Key: IGNITE-24645 URL: https://issues.apache.org/jira/browse/IGNITE-24645 Project: Ignite Issue Type: Improvement Reporter: Kirill Tkalenko Assignee: Kirill Tkalenko Attachments: error_first.rtf, second_error.rtf When using a cluster in which nodes are frequently restarted, warnings are found in logs, for example, about a thin client connection being refused. This looks alarming at first glance, although it is expected. It is suggested to output some expected errors at the info level and without a stack trace. [^error_first.rtf] [^second_error.rtf] -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24644) ZoneResourcesManagerTest#supportsParallelAllocation is flaky
[ https://issues.apache.org/jira/browse/IGNITE-24644?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Aleksandr Polovtsev updated IGNITE-24644: - Reviewer: Roman Puchkovskiy > ZoneResourcesManagerTest#supportsParallelAllocation is flaky > > > Key: IGNITE-24644 > URL: https://issues.apache.org/jira/browse/IGNITE-24644 > Project: Ignite > Issue Type: Bug >Reporter: Aleksandr Polovtsev >Assignee: Aleksandr Polovtsev >Priority: Major > Labels: ignite-3 > Time Spent: 10m > Remaining Estimate: 0h > > This test can fail with the following error: > {code:java} > Caused by: java.util.concurrent.RejectedExecutionException: Thread limit > exceeded replacing blocked worker > at > java.base/java.util.concurrent.ForkJoinPool.tryCompensate(ForkJoinPool.java:1819) > at > java.base/java.util.concurrent.ForkJoinPool.compensatedBlock(ForkJoinPool.java:3446) > at > java.base/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3432) > at > java.base/java.util.concurrent.CompletableFuture.timedGet(CompletableFuture.java:1939) > at > java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2095) > at > org.apache.ignite.internal.testframework.IgniteTestUtils.await(IgniteTestUtils.java:836) > at > org.apache.ignite.internal.testframework.IgniteTestUtils.await(IgniteTestUtils.java:865) > at > org.apache.ignite.internal.testframework.IgniteTestUtils.bypassingThreadAssertions(IgniteTestUtils.java:536) > at > org.apache.ignite.internal.partition.replicator.ZoneResourcesManagerTest.allocatePartitionResources(ZoneResourcesManagerTest.java:154) > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24645) Improve connection error logging for thin client
[ https://issues.apache.org/jira/browse/IGNITE-24645?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Kirill Tkalenko updated IGNITE-24645: - Attachment: (was: second_error.rtf) > Improve connection error logging for thin client > > > Key: IGNITE-24645 > URL: https://issues.apache.org/jira/browse/IGNITE-24645 > Project: Ignite > Issue Type: Improvement >Reporter: Kirill Tkalenko >Assignee: Kirill Tkalenko >Priority: Major > Labels: ignite-3 > Attachments: error_first.rtf > > > When using a cluster in which nodes are frequently restarted, warnings are > found in logs, for example, about a thin client connection being refused. > This looks alarming at first glance, although it is expected. It is suggested > to output some expected errors at the info level and without a stack trace. > [^error_first.rtf] [^second_error.rtf] -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24645) Improve connection error logging for thin client
[ https://issues.apache.org/jira/browse/IGNITE-24645?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Kirill Tkalenko updated IGNITE-24645: - Description: When using a cluster in which nodes are frequently restarted, warnings are found in logs, for example, about a thin client connection being refused. This looks alarming at first glance, although it is expected. It is suggested to output some expected errors at the info level and without a stack trace. [^error_first.rtf] was: When using a cluster in which nodes are frequently restarted, warnings are found in logs, for example, about a thin client connection being refused. This looks alarming at first glance, although it is expected. It is suggested to output some expected errors at the info level and without a stack trace. [^error_first.rtf] [^second_error.rtf] > Improve connection error logging for thin client > > > Key: IGNITE-24645 > URL: https://issues.apache.org/jira/browse/IGNITE-24645 > Project: Ignite > Issue Type: Improvement >Reporter: Kirill Tkalenko >Assignee: Kirill Tkalenko >Priority: Major > Labels: ignite-3 > Attachments: error_first.rtf > > > When using a cluster in which nodes are frequently restarted, warnings are > found in logs, for example, about a thin client connection being refused. > This looks alarming at first glance, although it is expected. It is suggested > to output some expected errors at the info level and without a stack trace. > [^error_first.rtf] -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24626) Not enough information in assertion message
[ https://issues.apache.org/jira/browse/IGNITE-24626?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Aleksandr Polovtsev updated IGNITE-24626: - Reviewer: Kirill Tkalenko > Not enough information in assertion message > --- > > Key: IGNITE-24626 > URL: https://issues.apache.org/jira/browse/IGNITE-24626 > Project: Ignite > Issue Type: Bug >Reporter: Aleksandr Polovtsev >Assignee: Aleksandr Polovtsev >Priority: Major > Labels: ignite-3 > Time Spent: 10m > Remaining Estimate: 0h > > We've got the following exception during one of our tests: > {code:java} > at > org.apache.ignite.internal.table.distributed.TableManager.lambda$tableStopFuture$90(TableManager.java:1932) > at > java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:863) > > at > java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:841) > > java.util.concurrent.CompletionException: java.lang.AssertionError: > REBALANCE > at > java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:482) > > at > java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) > > at > java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) > > at java.base/java.lang.Thread.run(Thread.java:833) > Caused by: java.lang.AssertionError: REBALANCE > at > org.apache.ignite.internal.tx.storage.state.rocksdb.TxStateRocksDbPartitionStorage.tryToCloseStorageAndResources(TxStateRocksDbPartitionStorage.java:575) > at > org.apache.ignite.internal.tx.storage.state.rocksdb.TxStateRocksDbPartitionStorage.close(TxStateRocksDbPartitionStorage.java:415) > {code} > There are several issues here: > # The assertion error does not contain enough information, like partitionId > and tableId of the failed storage. > # Inside {{TableManager#tableStopFuture}} `whenCompleteAsync` is used, which > can hide the original exception that happened before closing the storages. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24635) Use PartitionGroupId + tableId instead of TablePartitionId in PartitionReplicaListener
[ https://issues.apache.org/jira/browse/IGNITE-24635?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Roman Puchkovskiy updated IGNITE-24635: --- Reviewer: Roman Puchkovskiy > Use PartitionGroupId + tableId instead of TablePartitionId in > PartitionReplicaListener > -- > > Key: IGNITE-24635 > URL: https://issues.apache.org/jira/browse/IGNITE-24635 > Project: Ignite > Issue Type: Improvement >Reporter: Alexander Lapin >Assignee: Alexander Lapin >Priority: Major > Labels: ignite-3 > Time Spent: 50m > Remaining Estimate: 0h > > h3. Motivation > It's required to change TablePartitionId in PartitionReplicaListener with > ZonePartitionId in case of colocation enabled in order to properly ensure > primary replicas on the "server" side. > h3. Definition of Done > * Within PartitionReplicaListener PartitionGroupId is used where necessary. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24646) DUPLICATE Add Gradle Wrapper into TC Bot to prevent build error caused by incorrect gradle version
[ https://issues.apache.org/jira/browse/IGNITE-24646?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Aleksandr Popov updated IGNITE-24646: - Summary: DUPLICATE Add Gradle Wrapper into TC Bot to prevent build error caused by incorrect gradle version (was: Add Gradle Wrapper into TC Bot to prevent build error caused by incorrect gradle version) > DUPLICATE Add Gradle Wrapper into TC Bot to prevent build error caused by > incorrect gradle version > -- > > Key: IGNITE-24646 > URL: https://issues.apache.org/jira/browse/IGNITE-24646 > Project: Ignite > Issue Type: Bug >Reporter: Aleksandr Popov >Priority: Major > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Resolved] (IGNITE-24646) Add Gradle Wrapper into TC Bot to prevent build error caused by incorrect gradle version
[ https://issues.apache.org/jira/browse/IGNITE-24646?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Aleksandr Popov resolved IGNITE-24646. -- Resolution: Duplicate > Add Gradle Wrapper into TC Bot to prevent build error caused by incorrect > gradle version > > > Key: IGNITE-24646 > URL: https://issues.apache.org/jira/browse/IGNITE-24646 > Project: Ignite > Issue Type: Bug >Reporter: Aleksandr Popov >Priority: Major > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-24648) Fix potential infinite loop in ExceptionUtils#hasCauseOrSuppressed
Kirill Tkalenko created IGNITE-24648: Summary: Fix potential infinite loop in ExceptionUtils#hasCauseOrSuppressed Key: IGNITE-24648 URL: https://issues.apache.org/jira/browse/IGNITE-24648 Project: Ignite Issue Type: Bug Reporter: Kirill Tkalenko Assignee: Kirill Tkalenko Found that we can get into an infinite loop in methods *org.apache.ignite.internal.util.ExceptionUtils#hasCauseOrSuppressed* due to improper exception construction, we need to protect ourselves from this. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Assigned] (IGNITE-24647) Add Gradle Wrapper into TC Bot to prevent build error caused by incorrect gradle version
[ https://issues.apache.org/jira/browse/IGNITE-24647?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Aleksandr Popov reassigned IGNITE-24647: Assignee: Aleksandr Popov > Add Gradle Wrapper into TC Bot to prevent build error caused by incorrect > gradle version > > > Key: IGNITE-24647 > URL: https://issues.apache.org/jira/browse/IGNITE-24647 > Project: Ignite > Issue Type: Bug >Reporter: Aleksandr Popov >Assignee: Aleksandr Popov >Priority: Minor > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24635) Use PartitionGroupId + tableId instead of TablePartitionId in PartitionReplicaListener
[ https://issues.apache.org/jira/browse/IGNITE-24635?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Alexander Lapin updated IGNITE-24635: - Labels: ignite-3 (was: ) > Use PartitionGroupId + tableId instead of TablePartitionId in > PartitionReplicaListener > -- > > Key: IGNITE-24635 > URL: https://issues.apache.org/jira/browse/IGNITE-24635 > Project: Ignite > Issue Type: Improvement >Reporter: Alexander Lapin >Priority: Major > Labels: ignite-3 > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Assigned] (IGNITE-24635) Use PartitionGroupId + tableId instead of TablePartitionId in PartitionReplicaListener
[ https://issues.apache.org/jira/browse/IGNITE-24635?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Alexander Lapin reassigned IGNITE-24635: Assignee: Alexander Lapin > Use PartitionGroupId + tableId instead of TablePartitionId in > PartitionReplicaListener > -- > > Key: IGNITE-24635 > URL: https://issues.apache.org/jira/browse/IGNITE-24635 > Project: Ignite > Issue Type: Improvement >Reporter: Alexander Lapin >Assignee: Alexander Lapin >Priority: Major > Labels: ignite-3 > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24635) Use PartitionGroupId + tableId instead of TablePartitionId in PartitionReplicaListener
[ https://issues.apache.org/jira/browse/IGNITE-24635?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Alexander Lapin updated IGNITE-24635: - Epic Link: IGNITE-22115 > Use PartitionGroupId + tableId instead of TablePartitionId in > PartitionReplicaListener > -- > > Key: IGNITE-24635 > URL: https://issues.apache.org/jira/browse/IGNITE-24635 > Project: Ignite > Issue Type: Improvement >Reporter: Alexander Lapin >Priority: Major > Labels: ignite-3 > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24635) Use PartitionGroupId + tableId instead of TablePartitionId in PartitionReplicaListener
[ https://issues.apache.org/jira/browse/IGNITE-24635?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Alexander Lapin updated IGNITE-24635: - Description: It's required to change TablePartitionId in PartitionReplicaListener with ZonePartitionId in case of colocation enabled in order to properly ensure primary replicas on the "server" side. > Use PartitionGroupId + tableId instead of TablePartitionId in > PartitionReplicaListener > -- > > Key: IGNITE-24635 > URL: https://issues.apache.org/jira/browse/IGNITE-24635 > Project: Ignite > Issue Type: Improvement >Reporter: Alexander Lapin >Assignee: Alexander Lapin >Priority: Major > Labels: ignite-3 > Time Spent: 20m > Remaining Estimate: 0h > > It's required to change TablePartitionId in PartitionReplicaListener with > ZonePartitionId in case of colocation enabled in order to properly ensure > primary replicas on the "server" side. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24635) Use PartitionGroupId + tableId instead of TablePartitionId in PartitionReplicaListener
[ https://issues.apache.org/jira/browse/IGNITE-24635?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Alexander Lapin updated IGNITE-24635: - Description: h3. Motivation It's required to change TablePartitionId in PartitionReplicaListener with ZonePartitionId in case of colocation enabled in order to properly ensure primary replicas on the "server" side. h3. Definition of Done * Within PartitionReplicaListener PartitionGroupId is used where necessary. was:It's required to change TablePartitionId in PartitionReplicaListener with ZonePartitionId in case of colocation enabled in order to properly ensure primary replicas on the "server" side. > Use PartitionGroupId + tableId instead of TablePartitionId in > PartitionReplicaListener > -- > > Key: IGNITE-24635 > URL: https://issues.apache.org/jira/browse/IGNITE-24635 > Project: Ignite > Issue Type: Improvement >Reporter: Alexander Lapin >Assignee: Alexander Lapin >Priority: Major > Labels: ignite-3 > Time Spent: 20m > Remaining Estimate: 0h > > h3. Motivation > It's required to change TablePartitionId in PartitionReplicaListener with > ZonePartitionId in case of colocation enabled in order to properly ensure > primary replicas on the "server" side. > h3. Definition of Done > * Within PartitionReplicaListener PartitionGroupId is used where necessary. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24642) Calcite do not trim tables in case of multiple joins
[ https://issues.apache.org/jira/browse/IGNITE-24642?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Maksim Timonin updated IGNITE-24642: Labels: ise (was: ) > Calcite do not trim tables in case of multiple joins > > > Key: IGNITE-24642 > URL: https://issues.apache.org/jira/browse/IGNITE-24642 > Project: Ignite > Issue Type: Bug >Reporter: Maksim Timonin >Assignee: Maksim Timonin >Priority: Major > Labels: ise > > IgnitePlanner#trimUnusuedFields do not trim fields in case query contains two > or more joins. > Comment that describes this logic looks weird, as trims applies on > PROJECT_PUSH_DOWN to IgniteLogicalTableScan and do not produce new leafs. > Let's remove this condition, as it affects peformance -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-24642) Calcite do not trim tables in case of multiple joins
Maksim Timonin created IGNITE-24642: --- Summary: Calcite do not trim tables in case of multiple joins Key: IGNITE-24642 URL: https://issues.apache.org/jira/browse/IGNITE-24642 Project: Ignite Issue Type: Bug Reporter: Maksim Timonin Assignee: Maksim Timonin IgnitePlanner#trimUnusuedFields do not trim fields in case query contains two or more joins. Comment that describes this logic looks weird, as trims applies on PROJECT_PUSH_DOWN to IgniteLogicalTableScan and do not produce new leafs. Let's remove this condition, as it affects peformance -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24642) Calcite do not trim tables in case of multiple joins
[ https://issues.apache.org/jira/browse/IGNITE-24642?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Maksim Timonin updated IGNITE-24642: Ignite Flags: Release Notes Required (was: Docs Required,Release Notes Required) > Calcite do not trim tables in case of multiple joins > > > Key: IGNITE-24642 > URL: https://issues.apache.org/jira/browse/IGNITE-24642 > Project: Ignite > Issue Type: Bug >Reporter: Maksim Timonin >Assignee: Maksim Timonin >Priority: Major > Labels: ise > > IgnitePlanner#trimUnusuedFields do not trim fields in case query contains two > or more joins. > Comment that describes this logic looks weird, as trims applies on > PROJECT_PUSH_DOWN to IgniteLogicalTableScan and do not produce new leafs. > Let's remove this condition, as it affects peformance -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24482) Support zone partitions in ExecutionServiceImpl
[ https://issues.apache.org/jira/browse/IGNITE-24482?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Roman Puchkovskiy updated IGNITE-24482: --- Summary: Support zone partitions in ExecutionServiceImpl (was: Enlist ZonePartitionId in ExecutionServiceImpl) > Support zone partitions in ExecutionServiceImpl > --- > > Key: IGNITE-24482 > URL: https://issues.apache.org/jira/browse/IGNITE-24482 > Project: Ignite > Issue Type: Improvement >Reporter: Roman Puchkovskiy >Assignee: Roman Puchkovskiy >Priority: Major > Labels: ignite-3 > > Currently, in ExecutionServiceImpl, TablePartitionId is used to enlist > partition. We should support enlistment of ZonePartitionId if zone partitions > are enabled. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-24641) Make wait in IgniteSqlImpl interruptible
Roman Puchkovskiy created IGNITE-24641: -- Summary: Make wait in IgniteSqlImpl interruptible Key: IGNITE-24641 URL: https://issues.apache.org/jira/browse/IGNITE-24641 Project: Ignite Issue Type: Improvement Reporter: Roman Puchkovskiy Assignee: Roman Puchkovskiy -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24641) Make wait in IgniteSqlImpl.execute() interruptible
[ https://issues.apache.org/jira/browse/IGNITE-24641?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Roman Puchkovskiy updated IGNITE-24641: --- Summary: Make wait in IgniteSqlImpl.execute() interruptible (was: Make wait in IgniteSqlImpl interruptible) > Make wait in IgniteSqlImpl.execute() interruptible > -- > > Key: IGNITE-24641 > URL: https://issues.apache.org/jira/browse/IGNITE-24641 > Project: Ignite > Issue Type: Improvement >Reporter: Roman Puchkovskiy >Assignee: Roman Puchkovskiy >Priority: Major > Labels: ignite-3 > Time Spent: 10m > Remaining Estimate: 0h > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24641) Make wait in IgniteSqlImpl.execute() interruptible
[ https://issues.apache.org/jira/browse/IGNITE-24641?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Roman Puchkovskiy updated IGNITE-24641: --- Description: IgniteSqlImpl.execute() uses join() to wait on a future. This wait is uninterruptible. If something goes wrong when executing a query and the future never completes, tests invoking SQL might hang forever, even timeouts will not help because the thread executing the test will be impossible to interrupt. We should use get() instead. > Make wait in IgniteSqlImpl.execute() interruptible > -- > > Key: IGNITE-24641 > URL: https://issues.apache.org/jira/browse/IGNITE-24641 > Project: Ignite > Issue Type: Improvement >Reporter: Roman Puchkovskiy >Assignee: Roman Puchkovskiy >Priority: Major > Labels: ignite-3 > Time Spent: 10m > Remaining Estimate: 0h > > IgniteSqlImpl.execute() uses join() to wait on a future. This wait is > uninterruptible. If something goes wrong when executing a query and the > future never completes, tests invoking SQL might hang forever, even timeouts > will not help because the thread executing the test will be impossible to > interrupt. > We should use get() instead. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-24643) Lower logging level for 'Peer id not found' in NodeRequestProcessor
Roman Puchkovskiy created IGNITE-24643: -- Summary: Lower logging level for 'Peer id not found' in NodeRequestProcessor Key: IGNITE-24643 URL: https://issues.apache.org/jira/browse/IGNITE-24643 Project: Ignite Issue Type: Improvement Reporter: Roman Puchkovskiy Assignee: Roman Puchkovskiy -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24643) Lower logging level for 'Peer id not found' in Replicator
[ https://issues.apache.org/jira/browse/IGNITE-24643?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Roman Puchkovskiy updated IGNITE-24643: --- Summary: Lower logging level for 'Peer id not found' in Replicator (was: Lower logging level for 'Peer id not found' in NodeRequestProcessor) > Lower logging level for 'Peer id not found' in Replicator > - > > Key: IGNITE-24643 > URL: https://issues.apache.org/jira/browse/IGNITE-24643 > Project: Ignite > Issue Type: Improvement >Reporter: Roman Puchkovskiy >Assignee: Roman Puchkovskiy >Priority: Major > Labels: ignite-3 > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24643) Lower logging level for 'Peer id not found' in Replicator
[ https://issues.apache.org/jira/browse/IGNITE-24643?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Roman Puchkovskiy updated IGNITE-24643: --- Description: Replicator sometimes write logs like the following: [2025-02-26T15:39:35,790][WARN ][%iist_tnswbcic_3344%JRaft-AppendEntries-Processor-1][Replicator] Fail to issue RPC to iist_tnswbcic_3346, consecutiveErrorTimes=10, error=Status[ENOENT<1012>: Peer id not found: iist_tnswbcic_3346, group: metastorage_group] This happens when the leader tries to send an AppendEntriesRequest to a Raft node (follower/learner) that was not yet started. This is not something to be worry about as such requests are just retried, so it seems to be too much to log them as WARN. We should log them as INFO. > Lower logging level for 'Peer id not found' in Replicator > - > > Key: IGNITE-24643 > URL: https://issues.apache.org/jira/browse/IGNITE-24643 > Project: Ignite > Issue Type: Improvement >Reporter: Roman Puchkovskiy >Assignee: Roman Puchkovskiy >Priority: Major > Labels: ignite-3 > Time Spent: 10m > Remaining Estimate: 0h > > Replicator sometimes write logs like the following: > [2025-02-26T15:39:35,790][WARN > ][%iist_tnswbcic_3344%JRaft-AppendEntries-Processor-1][Replicator] Fail to > issue RPC to iist_tnswbcic_3346, consecutiveErrorTimes=10, > error=Status[ENOENT<1012>: Peer id not found: iist_tnswbcic_3346, group: > metastorage_group] > This happens when the leader tries to send an AppendEntriesRequest to a Raft > node (follower/learner) that was not yet started. This is not something to be > worry about as such requests are just retried, so it seems to be too much to > log them as WARN. > We should log them as INFO. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-24637) .NET: Thin 3.0: "IGN-CMN--1" should not be negative
Pavel Tupitsyn created IGNITE-24637: --- Summary: .NET: Thin 3.0: "IGN-CMN--1" should not be negative Key: IGNITE-24637 URL: https://issues.apache.org/jira/browse/IGNITE-24637 Project: Ignite Issue Type: Bug Components: platforms, thin client Affects Versions: 3.0 Reporter: Pavel Tupitsyn Assignee: Pavel Tupitsyn Fix For: 3.1 See https://issues.apache.org/jira/browse/IGNITE-24615 -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-24639) Muting ItTxResourcesVacuumTest#testVacuum
Vladislav Pyatkov created IGNITE-24639: -- Summary: Muting ItTxResourcesVacuumTest#testVacuum Key: IGNITE-24639 URL: https://issues.apache.org/jira/browse/IGNITE-24639 Project: Ignite Issue Type: Bug Reporter: Vladislav Pyatkov h3. Motivation Recently, this test became flaky. Until IGNITE-24633 is fixed, we have to leave this test ignored. h3. Definition of done Mute this test. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-24640) Fix storages stoppings on PartitionReplicaLifecycleManager#beforeNodeStop
Mikhail Efremov created IGNITE-24640: Summary: Fix storages stoppings on PartitionReplicaLifecycleManager#beforeNodeStop Key: IGNITE-24640 URL: https://issues.apache.org/jira/browse/IGNITE-24640 Project: Ignite Issue Type: Bug Reporter: Mikhail Efremov Assignee: Mikhail Efremov *Description* After IGNITE-24384 we don't have table replicas, but table listeners and storages in {{TableManager}}. Also after IGNITE-23741 there was removed {{AFTER_REPLICA_STOPPED}} that leads to a situation where {{TableManager}} stops table storages asynchronously while zone replicas still may process requests like {{ReplicaSafeTimeSyncRequest}} from IGNITE-22620 that are being sent frequently by a timer ~0.5s. *Motivation* We should fix a race between table storages and zone replicas stops. *Definition of done* 1. {{AFTER_REPLICA_STOPPED}} is returned back; 2. {{TableManager#cleanupResources}} now checks colocation flag; 3. {{TableManager}} stops storages only after zone replica stopped on the local event. 4. Corresponding test is written. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-24635) Use PartitionGroupId + tableId instead of TablePartitionId in PartitionReplicaListener
Alexander Lapin created IGNITE-24635: Summary: Use PartitionGroupId + tableId instead of TablePartitionId in PartitionReplicaListener Key: IGNITE-24635 URL: https://issues.apache.org/jira/browse/IGNITE-24635 Project: Ignite Issue Type: Improvement Reporter: Alexander Lapin -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24635) Use PartitionGroupId + tableId instead of TablePartitionId in PartitionReplicaListener
[ https://issues.apache.org/jira/browse/IGNITE-24635?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Alexander Lapin updated IGNITE-24635: - Ignite Flags: (was: Docs Required,Release Notes Required) > Use PartitionGroupId + tableId instead of TablePartitionId in > PartitionReplicaListener > -- > > Key: IGNITE-24635 > URL: https://issues.apache.org/jira/browse/IGNITE-24635 > Project: Ignite > Issue Type: Improvement >Reporter: Alexander Lapin >Priority: Major > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-24636) Sql. Fix freezes in MergeJoin[type=RIGHT]
Konstantin Orlov created IGNITE-24636: - Summary: Sql. Fix freezes in MergeJoin[type=RIGHT] Key: IGNITE-24636 URL: https://issues.apache.org/jira/browse/IGNITE-24636 Project: Ignite Issue Type: Bug Components: sql Reporter: Konstantin Orlov Assignee: Konstantin Orlov Run {{q16}} from {{TpchBenchmark}} on a single node cluster with scale factor equals to 0.1. Make sure that {{MergeJoin}} is presented on the query plan. The first iteration will never end. Thread dumps shows that there is no activity on {{sql-exec}} threads. Let's investigate and fix the issue. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24636) Sql. Fix freezes in MergeJoin[type=RIGHT]
[ https://issues.apache.org/jira/browse/IGNITE-24636?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Konstantin Orlov updated IGNITE-24636: -- Fix Version/s: 3.1 > Sql. Fix freezes in MergeJoin[type=RIGHT] > - > > Key: IGNITE-24636 > URL: https://issues.apache.org/jira/browse/IGNITE-24636 > Project: Ignite > Issue Type: Bug > Components: sql >Reporter: Konstantin Orlov >Assignee: Konstantin Orlov >Priority: Major > Labels: ignite-3 > Fix For: 3.1 > > Time Spent: 10m > Remaining Estimate: 0h > > Run {{q16}} from {{TpchBenchmark}} on a single node cluster with scale factor > equals to 0.1. Make sure that {{MergeJoin}} is presented on the query plan. > The first iteration will never end. Thread dumps shows that there is no > activity on {{sql-exec}} threads. > Let's investigate and fix the issue. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-24638) Abandoned transactions should be listed in system.transactions view
Denis Chudov created IGNITE-24638: - Summary: Abandoned transactions should be listed in system.transactions view Key: IGNITE-24638 URL: https://issues.apache.org/jira/browse/IGNITE-24638 Project: Ignite Issue Type: Bug Reporter: Denis Chudov *Motivation* Abandoned transactions are neither committed nor aborted, they still exist, and their locks can be seen. The transactions for the view should be collected not only from coordinators, but cluster-wide looking into transaction states map on every node. *Definition of done* Abandoned transactions can be seen in system.transactions. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24640) Fix storages stoppings on PartitionReplicaLifecycleManager#beforeNodeStop
[ https://issues.apache.org/jira/browse/IGNITE-24640?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Mikhail Efremov updated IGNITE-24640: - Epic Link: IGNITE-22115 Ignite Flags: (was: Docs Required,Release Notes Required) Labels: ignite-3 (was: ) > Fix storages stoppings on PartitionReplicaLifecycleManager#beforeNodeStop > - > > Key: IGNITE-24640 > URL: https://issues.apache.org/jira/browse/IGNITE-24640 > Project: Ignite > Issue Type: Bug >Reporter: Mikhail Efremov >Assignee: Mikhail Efremov >Priority: Major > Labels: ignite-3 > > *Description* > After IGNITE-24384 we don't have table replicas, but table listeners and > storages in {{TableManager}}. Also after IGNITE-23741 there was removed > {{AFTER_REPLICA_STOPPED}} that leads to a situation where {{TableManager}} > stops table storages asynchronously while zone replicas still may process > requests like {{ReplicaSafeTimeSyncRequest}} from IGNITE-22620 that are being > sent frequently by a timer ~0.5s. > *Motivation* > We should fix a race between table storages and zone replicas stops. > *Definition of done* > 1. {{AFTER_REPLICA_STOPPED}} is returned back; > 2. {{TableManager#cleanupResources}} now checks colocation flag; > 3. {{TableManager}} stops storages only after zone replica stopped on the > local event. > 4. Corresponding test is written. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-24641) Make wait in IgniteSqlImpl.execute() interruptible
[ https://issues.apache.org/jira/browse/IGNITE-24641?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Konstantin Orlov updated IGNITE-24641: -- Fix Version/s: 3.1 > Make wait in IgniteSqlImpl.execute() interruptible > -- > > Key: IGNITE-24641 > URL: https://issues.apache.org/jira/browse/IGNITE-24641 > Project: Ignite > Issue Type: Improvement >Reporter: Roman Puchkovskiy >Assignee: Roman Puchkovskiy >Priority: Major > Labels: ignite-3 > Fix For: 3.1 > > Time Spent: 10m > Remaining Estimate: 0h > > IgniteSqlImpl.execute() uses join() to wait on a future. This wait is > uninterruptible. If something goes wrong when executing a query and the > future never completes, tests invoking SQL might hang forever, even timeouts > will not help because the thread executing the test will be impossible to > interrupt. > We should use get() instead. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (IGNITE-24639) Muting ItTxResourcesVacuumTest#testVacuum
[ https://issues.apache.org/jira/browse/IGNITE-24639?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17930666#comment-17930666 ] Vladislav Pyatkov commented on IGNITE-24639: Merge b9aa92015279325eee4070fb1248e8aeb80d27fb > Muting ItTxResourcesVacuumTest#testVacuum > - > > Key: IGNITE-24639 > URL: https://issues.apache.org/jira/browse/IGNITE-24639 > Project: Ignite > Issue Type: Bug >Reporter: Vladislav Pyatkov >Assignee: Vladislav Pyatkov >Priority: Major > Labels: ignite-3 > Time Spent: 20m > Remaining Estimate: 0h > > h3. Motivation > Recently, this test became flaky. > Until IGNITE-24633 is fixed, we have to leave this test ignored. > h3. Definition of done > Mute this test. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Assigned] (IGNITE-24639) Muting ItTxResourcesVacuumTest#testVacuum
[ https://issues.apache.org/jira/browse/IGNITE-24639?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vladislav Pyatkov reassigned IGNITE-24639: -- Assignee: Vladislav Pyatkov > Muting ItTxResourcesVacuumTest#testVacuum > - > > Key: IGNITE-24639 > URL: https://issues.apache.org/jira/browse/IGNITE-24639 > Project: Ignite > Issue Type: Bug >Reporter: Vladislav Pyatkov >Assignee: Vladislav Pyatkov >Priority: Major > Labels: ignite-3 > Time Spent: 10m > Remaining Estimate: 0h > > h3. Motivation > Recently, this test became flaky. > Until IGNITE-24633 is fixed, we have to leave this test ignored. > h3. Definition of done > Mute this test. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Comment Edited] (IGNITE-24639) Muting ItTxResourcesVacuumTest#testVacuum
[ https://issues.apache.org/jira/browse/IGNITE-24639?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17930666#comment-17930666 ] Vladislav Pyatkov edited comment on IGNITE-24639 at 2/26/25 12:42 PM: -- Merged b9aa92015279325eee4070fb1248e8aeb80d27fb was (Author: v.pyatkov): Merge b9aa92015279325eee4070fb1248e8aeb80d27fb > Muting ItTxResourcesVacuumTest#testVacuum > - > > Key: IGNITE-24639 > URL: https://issues.apache.org/jira/browse/IGNITE-24639 > Project: Ignite > Issue Type: Bug >Reporter: Vladislav Pyatkov >Assignee: Vladislav Pyatkov >Priority: Major > Labels: ignite-3 > Fix For: 3.1 > > Time Spent: 20m > Remaining Estimate: 0h > > h3. Motivation > Recently, this test became flaky. > Until IGNITE-24633 is fixed, we have to leave this test ignored. > h3. Definition of done > Mute this test. -- This message was sent by Atlassian Jira (v8.20.10#820010)