[jira] [Commented] (IGNITE-21637) Possible integer overflow in page eviction trackers
[ https://issues.apache.org/jira/browse/IGNITE-21637?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17824292#comment-17824292 ] Ilya Shishkov commented on IGNITE-21637: [~ivandasch], can you take a look, please? > Possible integer overflow in page eviction trackers > --- > > Key: IGNITE-21637 > URL: https://issues.apache.org/jira/browse/IGNITE-21637 > Project: Ignite > Issue Type: Bug >Reporter: Ilya Shishkov >Assignee: Ilya Shishkov >Priority: Critical > Labels: ise > Time Spent: 10m > Remaining Estimate: 0h > > Ignite Node can fail with segmentation violation because of integer overflow > when eviction policy is used and large amount pages is allocated. > One of the problematic places: {{Random2LruPageEvictionTracker#touchPage}} > [1]. In this place we can get incorrect offset value when {{trackingIdx}} is > more than {{Integer.MAX_VALUE / 8}}: > {{trackingArrPtr (long) + trackingIdx (int) * 8}}. > # > https://github.com/apache/ignite/blob/5ad698dab9835f6e6efb6a8b12da34515bd78349/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/evict/Random2LruPageEvictionTracker.java#L95 -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (IGNITE-21637) Possible integer overflow in page eviction trackers
[ https://issues.apache.org/jira/browse/IGNITE-21637?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17824290#comment-17824290 ] Ignite TC Bot commented on IGNITE-21637: {panel:title=Branch: [pull/11261/head] Base: [master] : No blockers found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel} {panel:title=Branch: [pull/11261/head] Base: [master] : No new tests found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#F7D6C1}{panel} [TeamCity *-- Run :: All* Results|https://ci2.ignite.apache.org/viewLog.html?buildId=7771981buildTypeId=IgniteTests24Java8_RunAll] > Possible integer overflow in page eviction trackers > --- > > Key: IGNITE-21637 > URL: https://issues.apache.org/jira/browse/IGNITE-21637 > Project: Ignite > Issue Type: Bug >Reporter: Ilya Shishkov >Assignee: Ilya Shishkov >Priority: Critical > Labels: ise > Time Spent: 10m > Remaining Estimate: 0h > > Ignite Node can fail with segmentation violation because of integer overflow > when eviction policy is used and large amount pages is allocated. > One of the problematic places: {{Random2LruPageEvictionTracker#touchPage}} > [1]. In this place we can get incorrect offset value when {{trackingIdx}} is > more than {{Integer.MAX_VALUE / 8}}: > {{trackingArrPtr (long) + trackingIdx (int) * 8}}. > # > https://github.com/apache/ignite/blob/5ad698dab9835f6e6efb6a8b12da34515bd78349/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/evict/Random2LruPageEvictionTracker.java#L95 -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Assigned] (IGNITE-21330) Sql. Index is not used for IN predicate with column type of UUID
[ https://issues.apache.org/jira/browse/IGNITE-21330?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Pavel Pereslegin reassigned IGNITE-21330: - Assignee: Pavel Pereslegin > Sql. Index is not used for IN predicate with column type of UUID > > > Key: IGNITE-21330 > URL: https://issues.apache.org/jira/browse/IGNITE-21330 > Project: Ignite > Issue Type: Bug > Components: sql >Reporter: Konstantin Orlov >Assignee: Pavel Pereslegin >Priority: Major > Labels: ignite-3 > > See ItUuidIndexTest#testInLookUp, false scan is used in execution although > index is available. > The query is > {code:java} > SELECT * > FROM t > WHERE test_key IN ('--0001--0001'::UUID, > '--0003--0001'::UUID) > ORDER BY id > {code} > and the plan is > {code:java} > IgniteExchange(distribution=[single]) > IgniteSort(sort0=[$0], dir0=[ASC]) > IgniteTableScan(table=[[PUBLIC, T]], tableId=[6], filters=[OR(=($t1, > CAST(_UTF-8'--0001--0001'):UUID NOT NULL), =($t1, > CAST(_UTF-8'--0003--0001'):UUID NOT NULL))], > requiredColumns=[{0, 1}]) > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21709) Revise TimestampAware messages processing
[ https://issues.apache.org/jira/browse/IGNITE-21709?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Pavel Pereslegin updated IGNITE-21709: -- Ignite Flags: (was: Docs Required,Release Notes Required) > Revise TimestampAware messages processing > - > > Key: IGNITE-21709 > URL: https://issues.apache.org/jira/browse/IGNITE-21709 > Project: Ignite > Issue Type: Improvement >Reporter: Pavel Pereslegin >Priority: Major > Labels: ignite-3 > > {{TimestampAware}} messages contain timestamp to adjust a hybrid logical > clock. > Currently, ReplicaManager updates the local clock when it receives a > {{ReplicaRequest}} with a timestamp. > It may be worth revising the design and adding general processing of such > messages (probably at the MessageService level). > For example, it is also necessary to adjust the clock when receiving a > {{QueryBatchMessage}} (sql-engine) and currently each component must > duplicate the clock adjusting logic. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21709) Revise TimestampAware messages processing
[ https://issues.apache.org/jira/browse/IGNITE-21709?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Pavel Pereslegin updated IGNITE-21709: -- Description: {{TimestampAware}} messages contain timestamp to adjust a hybrid logical clock. Currently, ReplicaManager updates the local clock when it receives a {{ReplicaRequest}} with a timestamp. It may be worth revising the design and adding general processing of such messages (probably at the MessageService level). For example, it is also necessary to adjust the clock when receiving a {{QueryBatchMessage}} (sql-engine) and currently each component must duplicate the clock adjusting logic. was: {{TimestampAware}} messages contain timestamp to adjust a hybrid logical clock. Currently, ReplicaManager updates the local clock when it receives a {{ReplicaRequest}} with a timestamp. It may be worth revising the design and adding general processing of such messages (probably at the MessageService level). For example, it is also necessary to adjust the clock when receiving a {{QueryBatchMessage}} (sql-engine) and currently each component must duplicate the clock setting logic. > Revise TimestampAware messages processing > - > > Key: IGNITE-21709 > URL: https://issues.apache.org/jira/browse/IGNITE-21709 > Project: Ignite > Issue Type: Improvement >Reporter: Pavel Pereslegin >Priority: Major > Labels: ignite-3 > > {{TimestampAware}} messages contain timestamp to adjust a hybrid logical > clock. > Currently, ReplicaManager updates the local clock when it receives a > {{ReplicaRequest}} with a timestamp. > It may be worth revising the design and adding general processing of such > messages (probably at the MessageService level). > For example, it is also necessary to adjust the clock when receiving a > {{QueryBatchMessage}} (sql-engine) and currently each component must > duplicate the clock adjusting logic. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21709) Revise TimestampAware messages processing
[ https://issues.apache.org/jira/browse/IGNITE-21709?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Pavel Pereslegin updated IGNITE-21709: -- Description: {{TimestampAware}} messages contain timestamp to adjust a hybrid logical clock. Currently, ReplicaManager updates the local clock when it receives a {{ReplicaRequest}} with a timestamp. It may be worth revising the design and adding general processing of such messages (probably at the MessageService level). For example, it is also necessary to adjust the clock when receiving a {{QueryBatchMessage}} (sql-engine) and currently each component must duplicate the clock setting logic. was: {{TimestampAware}} messages contain timestamp to adjust a hybrid logical clock. Currently, ReplicaManager updates the local clock when it receives a {{ReplicaRequest}} with a timestamp. It may be worth revising the design and adding general processing of such messages (possibly at the MessageService level). For example, it is also necessary to adjust the clock when receiving a {{QueryBatchMessage}} (sql-engine) and currently each component must duplicate the clock setting logic. > Revise TimestampAware messages processing > - > > Key: IGNITE-21709 > URL: https://issues.apache.org/jira/browse/IGNITE-21709 > Project: Ignite > Issue Type: Improvement >Reporter: Pavel Pereslegin >Priority: Major > Labels: ignite-3 > > {{TimestampAware}} messages contain timestamp to adjust a hybrid logical > clock. > Currently, ReplicaManager updates the local clock when it receives a > {{ReplicaRequest}} with a timestamp. > It may be worth revising the design and adding general processing of such > messages (probably at the MessageService level). > For example, it is also necessary to adjust the clock when receiving a > {{QueryBatchMessage}} (sql-engine) and currently each component must > duplicate the clock setting logic. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21709) Revise TimestampAware messages processing
Pavel Pereslegin created IGNITE-21709: - Summary: Revise TimestampAware messages processing Key: IGNITE-21709 URL: https://issues.apache.org/jira/browse/IGNITE-21709 Project: Ignite Issue Type: Improvement Reporter: Pavel Pereslegin {{TimestampAware}} messages contain timestamp to adjust a hybrid logical clock. Currently, ReplicaManager updates the local clock when it receives a {{ReplicaRequest}} with a timestamp. It may be worth revising the design and adding general processing of such messages (possibly at the MessageService level). For example, it is also necessary to adjust the clock when receiving a {{QueryBatchMessage}} (sql-engine) and currently each component must duplicate the clock setting logic. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21685) Thin 3.0: executeColocated does not work with escaped table names
[ https://issues.apache.org/jira/browse/IGNITE-21685?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Pavel Tupitsyn updated IGNITE-21685: Description: Add the following test to *ItThinClientComputeTest*: {code:java} @Test void testExecuteColocatedEscapedTableName() { var session = client().sql().sessionBuilder().build(); session.execute(null, "CREATE TABLE \"TBL ABC\" (key INT PRIMARY KEY, val INT)"); var tableName = "\"TBL ABC\""; client().compute().executeColocated(tableName, Tuple.create().set("key", 1), List.of(), NodeNameJob.class.getName()); } {code} It fails: {code} Caused by: java.lang.IllegalArgumentException: Fully qualified name is not expected [name=TBL ABC] at org.apache.ignite.lang.util.IgniteNameUtils.parseSimpleName(IgniteNameUtils.java:49) at org.apache.ignite.internal.table.distributed.TableManager.tableAsync(TableManager.java:1510) at org.apache.ignite.client.handler.requests.table.ClientTableGetRequest.process(ClientTableGetRequest.java:45) at org.apache.ignite.client.handler.ClientInboundMessageHandler.processOperation(ClientInboundMessageHandler.java:637) at org.apache.ignite.client.handler.ClientInboundMessageHandler.processOperation(ClientInboundMessageHandler.java:569) {code} was: Add the following test to *ItThinClientComputeTest*: {code:java} @Test void testExecuteColocatedEscapedTableName() { var session = client().sql().sessionBuilder().build(); session.execute(null, "CREATE TABLE \"TBL ABC\" (key INT PRIMARY KEY, val INT)"); var tableName = "TBL ABC"; client().compute().executeColocated(tableName, Tuple.create().set("key", 1), List.of(), NodeNameJob.class.getName()); } {code} It fails: {code} Caused by: java.lang.IllegalArgumentException: Fully qualified name is not expected [name=TBL ABC] at org.apache.ignite.lang.util.IgniteNameUtils.parseSimpleName(IgniteNameUtils.java:49) at org.apache.ignite.internal.table.distributed.TableManager.tableAsync(TableManager.java:1510) at org.apache.ignite.client.handler.requests.table.ClientTableGetRequest.process(ClientTableGetRequest.java:45) at org.apache.ignite.client.handler.ClientInboundMessageHandler.processOperation(ClientInboundMessageHandler.java:637) at org.apache.ignite.client.handler.ClientInboundMessageHandler.processOperation(ClientInboundMessageHandler.java:569) {code} > Thin 3.0: executeColocated does not work with escaped table names > - > > Key: IGNITE-21685 > URL: https://issues.apache.org/jira/browse/IGNITE-21685 > Project: Ignite > Issue Type: Bug > Components: compute, thin client >Affects Versions: 3.0.0-beta1 >Reporter: Pavel Tupitsyn >Assignee: Pavel Tupitsyn >Priority: Major > Labels: ignite-3 > Fix For: 3.0.0-beta2 > > > Add the following test to *ItThinClientComputeTest*: > {code:java} > @Test > void testExecuteColocatedEscapedTableName() { > var session = client().sql().sessionBuilder().build(); > session.execute(null, "CREATE TABLE \"TBL ABC\" (key INT PRIMARY KEY, > val INT)"); > var tableName = "\"TBL ABC\""; > client().compute().executeColocated(tableName, > Tuple.create().set("key", 1), List.of(), NodeNameJob.class.getName()); > } > {code} > It fails: > {code} > Caused by: java.lang.IllegalArgumentException: Fully qualified name is not > expected [name=TBL ABC] > at > org.apache.ignite.lang.util.IgniteNameUtils.parseSimpleName(IgniteNameUtils.java:49) > at > org.apache.ignite.internal.table.distributed.TableManager.tableAsync(TableManager.java:1510) > at > org.apache.ignite.client.handler.requests.table.ClientTableGetRequest.process(ClientTableGetRequest.java:45) > at > org.apache.ignite.client.handler.ClientInboundMessageHandler.processOperation(ClientInboundMessageHandler.java:637) > at > org.apache.ignite.client.handler.ClientInboundMessageHandler.processOperation(ClientInboundMessageHandler.java:569) > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Assigned] (IGNITE-19976) Sql: ClassCastException when trying to select from indexed smallint column
[ https://issues.apache.org/jira/browse/IGNITE-19976?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Maksim Zhuravkov reassigned IGNITE-19976: - Assignee: Maksim Zhuravkov > Sql: ClassCastException when trying to select from indexed smallint column > -- > > Key: IGNITE-19976 > URL: https://issues.apache.org/jira/browse/IGNITE-19976 > Project: Ignite > Issue Type: Bug > Components: sql >Affects Versions: 3.0.0-beta1, 3.0.0-beta2 >Reporter: Andrey Khitrin >Assignee: Maksim Zhuravkov >Priority: Major > Labels: ignite-3, sql > Time Spent: 20m > Remaining Estimate: 0h > > Steps to reproduce: > {code:sql} > sql-cli> create table tt(id INTEGER not null, field_1 TINYINT, field_2 > SMALLINT, primary key (id)); > Updated 0 rows. > sql-cli> SELECT * FROM tt WHERE field_2 = 50; > ╔╤═╤═╗ > ║ ID │ FIELD_1 │ FIELD_2 ║ > ╠╧═╧═╣ > ║ (empty)║ > ╚╝ > -- select over field_2 works fine until we create an index on it! > sql-cli> CREATE INDEX tt_idx ON tt (field_2); > Updated 0 rows. > sql-cli> SELECT * FROM tt WHERE field_2 = 50; > SQL query execution error > Exception while executing query [query=SELECT * FROM tt WHERE field_2 = 50;]. > Error message:Query remote fragment execution failed: nodeName=defaultNode, > queryId=15a68600-41bc-46c5-b20d-7a96aad15477, fragmentId=4, > originalMessage=class java.lang.Integer cannot be cast to class > java.lang.Short (java.lang.Integer and java.lang.Short are in module > java.base of loader 'bootstrap') > {code} > This doesn't look good. A created index must not cause casting exception. > Reproduced on commit `fef7a24c2a029cac720d2fea3815c2a70a86b72f` (2023-07-12) -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Comment Edited] (IGNITE-21662) Sql: Data may be unavailable after creation of index
[ https://issues.apache.org/jira/browse/IGNITE-21662?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17824267#comment-17824267 ] Maksim Zhuravkov edited comment on IGNITE-21662 at 3/7/24 6:13 AM: --- An issue with indexes is fixed, now it triggers ClassCastException that looks similar/ can be related to IGNITE-19976 Sql: ClassCastException when trying to select from indexed smallint column. {code} org.apache.ignite.internal.lang.IgniteInternalException: class java.lang.Integer cannot be cast to class java.lang.Short (java.lang.Integer and java.lang.Short are in module java.base of loader 'bootstrap') at org.apache.ignite.internal.sql.engine.exec.ExchangeServiceImpl.sendError(ExchangeServiceImpl.java:116) ~[main/:?] at org.apache.ignite.internal.sql.engine.exec.rel.Outbox.sendError(Outbox.java:277) ~[main/:?] at org.apache.ignite.internal.sql.engine.exec.rel.Outbox.onError(Outbox.java:184) ~[main/:?] at org.apache.ignite.internal.sql.engine.exec.rel.AbstractNode.onError(AbstractNode.java:125) ~[main/:?] at org.apache.ignite.internal.sql.engine.exec.ExecutionContext.lambda$execute$0(ExecutionContext.java:323) ~[main/:?] at org.apache.ignite.internal.sql.engine.exec.QueryTaskExecutorImpl.lambda$execute$0(QueryTaskExecutorImpl.java:85) ~[main/:?] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?] at java.base/java.lang.Thread.run(Thread.java:829) [?:?] Caused by: java.lang.ClassCastException: class java.lang.Integer cannot be cast to class java.lang.Short (java.lang.Integer and java.lang.Short are in module java.base of loader 'bootstrap') at org.apache.ignite.internal.sql.engine.exec.SqlRowHandler$ObjectsArrayRowWrapper.appendValue(SqlRowHandler.java:293) ~[main/:?] at org.apache.ignite.internal.sql.engine.exec.SqlRowHandler$ObjectsArrayRowWrapper.toBinaryTuple(SqlRowHandler.java:259) ~[main/:?] at org.apache.ignite.internal.sql.engine.exec.SqlRowHandler.toBinaryTuple(SqlRowHandler.java:137) ~[main/:?] at org.apache.ignite.internal.sql.engine.exec.SqlRowHandler.toBinaryTuple(SqlRowHandler.java:64) ~[main/:?] at org.apache.ignite.internal.sql.engine.exec.ScannableTableImpl.toBinaryTuplePrefix(ScannableTableImpl.java:248) ~[main/:?] at org.apache.ignite.internal.sql.engine.exec.ScannableTableImpl.indexRangeScan(ScannableTableImpl.java:118) ~[main/:?] at org.apache.ignite.internal.sql.engine.exec.rel.IndexScanNode.partitionPublisher(IndexScanNode.java:149) ~[main/:?] at org.apache.ignite.internal.sql.engine.exec.rel.IndexScanNode.lambda$indexPublisher$1(IndexScanNode.java:130) ~[main/:?] at org.apache.ignite.internal.util.TransformingIterator.next(TransformingIterator.java:50) ~[main/:?] at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133) ~[?:?] at org.apache.ignite.internal.util.SubscriptionUtils.orderedMerge(SubscriptionUtils.java:68) ~[main/:?] at org.apache.ignite.internal.sql.engine.exec.rel.IndexScanNode.indexPublisher(IndexScanNode.java:134) ~[main/:?] at org.apache.ignite.internal.sql.engine.exec.rel.IndexScanNode.lambda$scan$0(IndexScanNode.java:118) ~[main/:?] at org.apache.ignite.internal.util.TransformingIterator.next(TransformingIterator.java:50) ~[main/:?] at org.apache.ignite.internal.util.subscription.ConcatenatedPublisher$ConcatenatedSubscriber.drain(ConcatenatedPublisher.java:137) ~[main/:?] at org.apache.ignite.internal.util.subscription.ConcatenatedPublisher.subscribe(ConcatenatedPublisher.java:53) ~[main/:?] at org.apache.ignite.internal.sql.engine.exec.rel.StorageScanNode.requestNextBatch(StorageScanNode.java:186) ~[main/:?] at org.apache.ignite.internal.sql.engine.exec.rel.StorageScanNode.push(StorageScanNode.java:158) ~[main/:?] at org.apache.ignite.internal.sql.engine.exec.ExecutionContext.lambda$execute$0(ExecutionContext.java:320) ~[main/:?] ... 4 more [2024-03-07T08:12:44,077][INFO ][%idt_n_0%sql-execution-pool-0][ExchangeServiceImpl] Failed to execute query fragment: traceId=ac08d820-22ea-41a5-982b-d78a59ba8912, queryId=cd98dd99-70fa-4c85-9fa5-8e19ce9da634, fragmentId=1 org.apache.ignite.internal.lang.IgniteInternalException: class java.lang.Integer cannot be cast to class java.lang.Short (java.lang.Integer and java.lang.Short are in module java.base of loader 'bootstrap') at org.apache.ignite.internal.sql.engine.exec.ExchangeServiceImpl.sendError(ExchangeServiceImpl.java:116) ~[main/:?] at org.apache.ignite.internal.sql.engine.exec.rel.Outbox.sendError(Outbox.java:277) ~[main/:?] at
[jira] [Commented] (IGNITE-21662) Sql: Data may be unavailable after creation of index
[ https://issues.apache.org/jira/browse/IGNITE-21662?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17824267#comment-17824267 ] Maksim Zhuravkov commented on IGNITE-21662: --- An issue with indexes is fixed, now it triggers ClassCastException that looks similar to IGNITE-19976 Sql: ClassCastException when trying to select from indexed smallint column. > Sql: Data may be unavailable after creation of index > > > Key: IGNITE-21662 > URL: https://issues.apache.org/jira/browse/IGNITE-21662 > Project: Ignite > Issue Type: Bug >Affects Versions: 3.0.0-beta2 >Reporter: Andrey Khitrin >Priority: Major > Labels: ignite-3, sql > > Steps to reproduce: > {code:sql} > create table index_test_table_2(id INTEGER not null, field_1 TINYINT not > null, field_2 SMALLINT not null, field_3 INTEGER not null, field_4 FLOAT not > null, field_5 VARCHAR(50) not null, primary key (id)); > create index index_test_index_2_1 on index_test_table_2 using TREE (field_2, > field_3, field_5); > insert into index_test_table_2(...) > -- try to select one of inserted values > select * from index_test_table_2 where WHERE field_2 = .. AND field_3 = .. > AND field_5 = '..'; > {code} > Expected result: a row is selected. > Actual result: no rows are selected. > The issue is flaky and sometimes is masked by IGNITE-19976. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21708) Catalog. CatalogManagerSelfTest::testPkAvailableIndexEvent is flaky.
[ https://issues.apache.org/jira/browse/IGNITE-21708?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Maksim Zhuravkov updated IGNITE-21708: -- Fix Version/s: (was: 3.0.0-beta2) > Catalog. CatalogManagerSelfTest::testPkAvailableIndexEvent is flaky. > > > Key: IGNITE-21708 > URL: https://issues.apache.org/jira/browse/IGNITE-21708 > Project: Ignite > Issue Type: Bug > Components: sql >Reporter: Maksim Zhuravkov >Priority: Major > Labels: ignite-3 > > testPkAvailableIndexEvent fails at line assertThat(fireEventFuture, > willCompleteSuccessfully()) > Can be easily reproduced by running this test with repeat-until-failure > option in IDE. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21708) Catalog. CatalogManagerSelfTest::testPkAvailableIndexEvent is flaky.
[ https://issues.apache.org/jira/browse/IGNITE-21708?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Maksim Zhuravkov updated IGNITE-21708: -- Description: testPkAvailableIndexEvent fails at line assertThat(fireEventFuture, willCompleteSuccessfully()) Can be easily reproduced by running this test with repeat-until-failure option in IDE. was: testPkAvailableIndexEvent fails at line assertThat(fireEventFuture, willCompleteSuccessfully()) Can easly been reproduced by running this with repeat-until-failure option in IDE. > Catalog. CatalogManagerSelfTest::testPkAvailableIndexEvent is flaky. > > > Key: IGNITE-21708 > URL: https://issues.apache.org/jira/browse/IGNITE-21708 > Project: Ignite > Issue Type: Bug > Components: sql >Reporter: Maksim Zhuravkov >Priority: Major > Labels: ignite-3 > > testPkAvailableIndexEvent fails at line assertThat(fireEventFuture, > willCompleteSuccessfully()) > Can be easily reproduced by running this test with repeat-until-failure > option in IDE. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21708) Catalog. CatalogManagerSelfTest::testPkAvailableIndexEvent is flaky.
[ https://issues.apache.org/jira/browse/IGNITE-21708?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Maksim Zhuravkov updated IGNITE-21708: -- Fix Version/s: 3.0.0-beta2 > Catalog. CatalogManagerSelfTest::testPkAvailableIndexEvent is flaky. > > > Key: IGNITE-21708 > URL: https://issues.apache.org/jira/browse/IGNITE-21708 > Project: Ignite > Issue Type: Bug > Components: sql >Reporter: Maksim Zhuravkov >Priority: Major > Labels: ignite-3 > Fix For: 3.0.0-beta2 > > > testPkAvailableIndexEvent fails at line assertThat(fireEventFuture, > willCompleteSuccessfully()) > Can be easily reproduced by running this test with repeat-until-failure > option in IDE. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21708) Catalog. CatalogManagerSelfTest::testPkAvailableIndexEvent is flaky.
Maksim Zhuravkov created IGNITE-21708: - Summary: Catalog. CatalogManagerSelfTest::testPkAvailableIndexEvent is flaky. Key: IGNITE-21708 URL: https://issues.apache.org/jira/browse/IGNITE-21708 Project: Ignite Issue Type: Bug Components: sql Reporter: Maksim Zhuravkov testPkAvailableIndexEvent fails at line assertThat(fireEventFuture, willCompleteSuccessfully()) Can easly been reproduced by running this with repeat-until-failure option in IDE. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21708) Catalog. CatalogManagerSelfTest::testPkAvailableIndexEvent is flaky.
[ https://issues.apache.org/jira/browse/IGNITE-21708?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Maksim Zhuravkov updated IGNITE-21708: -- Labels: ignite-3 (was: ) > Catalog. CatalogManagerSelfTest::testPkAvailableIndexEvent is flaky. > > > Key: IGNITE-21708 > URL: https://issues.apache.org/jira/browse/IGNITE-21708 > Project: Ignite > Issue Type: Bug > Components: sql >Reporter: Maksim Zhuravkov >Priority: Major > Labels: ignite-3 > > testPkAvailableIndexEvent fails at line assertThat(fireEventFuture, > willCompleteSuccessfully()) > Can easly been reproduced by running this with repeat-until-failure option in > IDE. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21542) Documentation for Ignite security model
[ https://issues.apache.org/jira/browse/IGNITE-21542?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Oleg Valuyskiy updated IGNITE-21542: Summary: Documentation for Ignite security model (was: Documentation on the Ignite DMZ security model) > Documentation for Ignite security model > --- > > Key: IGNITE-21542 > URL: https://issues.apache.org/jira/browse/IGNITE-21542 > Project: Ignite > Issue Type: Task >Reporter: Oleg Valuyskiy >Assignee: Oleg Valuyskiy >Priority: Minor > Labels: ise > Fix For: 2.17 > > > It might be helpful to introduce documentation regarding what could be > expected from Ignite installations in terms of security. More specifically, > what Ignite users can expect when it comes to Discovery and Communication > ports inside and outside of the Ignite DMZ. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Assigned] (IGNITE-21707) Update openapi-generator
[ https://issues.apache.org/jira/browse/IGNITE-21707?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Aleksandr reassigned IGNITE-21707: -- Assignee: Aleksandr > Update openapi-generator > > > Key: IGNITE-21707 > URL: https://issues.apache.org/jira/browse/IGNITE-21707 > Project: Ignite > Issue Type: Improvement >Reporter: Aleksandr >Assignee: Aleksandr >Priority: Major > Labels: ignite-3-cli-tool > Time Spent: 10m > Remaining Estimate: 0h > > We use 5.x version of https://github.com/OpenAPITools/openapi-generator but > the latest one is 7.x -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21707) Update openapi-generator
Aleksandr created IGNITE-21707: -- Summary: Update openapi-generator Key: IGNITE-21707 URL: https://issues.apache.org/jira/browse/IGNITE-21707 Project: Ignite Issue Type: Improvement Reporter: Aleksandr We use 5.x version of https://github.com/OpenAPITools/openapi-generator but the latest one is 7.x -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21698) LocalConfigurationStorage reboxes unboxed value
[ https://issues.apache.org/jira/browse/IGNITE-21698?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21698: --- Labels: ignite3 (was: ) > LocalConfigurationStorage reboxes unboxed value > --- > > Key: IGNITE-21698 > URL: https://issues.apache.org/jira/browse/IGNITE-21698 > Project: Ignite > Issue Type: Task >Reporter: Viacheslav Blinov >Priority: Minor > Labels: ignite3 > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M P BX_UNBOXING_IMMEDIATELY_REBOXED Bx: Boxed value is unboxed and then > immediately reboxed in > org.apache.ignite.internal.configuration.storage.LocalConfigurationStorage.lambda$lastRevision$6() > At LocalConfigurationStorage.java:[line 232] {noformat} > This might cause unwanted additional GC pressure. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21705) CheckpointWorkflow uses weird equals implementation
[ https://issues.apache.org/jira/browse/IGNITE-21705?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21705: --- Labels: ignite3 (was: ) > CheckpointWorkflow uses weird equals implementation > --- > > Key: IGNITE-21705 > URL: https://issues.apache.org/jira/browse/IGNITE-21705 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Minor > Labels: ignite3 > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M B BC_EQUALS_METHOD_SHOULD_WORK_FOR_ALL_OBJECTS BC: Equals method for > org.apache.ignite.internal.pagememory.persistence.checkpoint.CheckpointWorkflow$1 > assumes the argument is of type CheckpointWorkflow$1 At > CheckpointWorkflow.java:[line 349] > M B NP_EQUALS_SHOULD_HANDLE_NULL_ARGUMENT NP: > org.apache.ignite.internal.pagememory.persistence.checkpoint.CheckpointWorkflow$1.equals(Object) > does not check for null argument At CheckpointWorkflow.java:[line 349] > {noformat} > Investigate whenever this is a false-positive and we should suppress it, or > make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21704) ConfigurationListenerHolder uses weird equals implementation
[ https://issues.apache.org/jira/browse/IGNITE-21704?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21704: --- Labels: ignite3 (was: ) > ConfigurationListenerHolder uses weird equals implementation > > > Key: IGNITE-21704 > URL: https://issues.apache.org/jira/browse/IGNITE-21704 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Minor > Labels: ignite3 > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M B BC_EQUALS_METHOD_SHOULD_WORK_FOR_ALL_OBJECTS BC: Equals method for > org.apache.ignite.internal.configuration.ConfigurationListenerHolder$1 > assumes the argument is of type ConfigurationListenerHolder$1 At > ConfigurationListenerHolder.java:[line 56] > M B NP_EQUALS_SHOULD_HANDLE_NULL_ARGUMENT NP: > org.apache.ignite.internal.configuration.ConfigurationListenerHolder$1.equals(Object) > does not check for null argument At ConfigurationListenerHolder.java:[line > 56]{noformat} > Investigate whenever this is a false-positive and we should suppress it, or > make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21699) DistributionFunction compares strings by reference
[ https://issues.apache.org/jira/browse/IGNITE-21699?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21699: --- Labels: ignite3 (was: ) > DistributionFunction compares strings by reference > -- > > Key: IGNITE-21699 > URL: https://issues.apache.org/jira/browse/IGNITE-21699 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Minor > Labels: ignite3 > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M B ES_COMPARING_STRINGS_WITH_EQ ES: Comparison of String objects using == or > != in > org.apache.ignite.internal.sql.engine.trait.DistributionFunction.equals(Object) > At DistributionFunction.java:[line 76] > M B ES_COMPARING_STRINGS_WITH_EQ ES: Comparison of String objects using == or > != in > org.apache.ignite.internal.sql.engine.trait.DistributionFunction.satisfy(DistributionFunction, > DistributionFunction) At DistributionFunction.java:[line 117] > {noformat} > This might be wrong. > Investigate whenever this is a false-positive and we should suppress it, or > make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21696) LazyStripedExecutor performs synchronization on AtomicReferenceArray
[ https://issues.apache.org/jira/browse/IGNITE-21696?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21696: --- Labels: ignite3 (was: ) > LazyStripedExecutor performs synchronization on AtomicReferenceArray > > > Key: IGNITE-21696 > URL: https://issues.apache.org/jira/browse/IGNITE-21696 > Project: Ignite > Issue Type: Task >Reporter: Viacheslav Blinov >Priority: Minor > Labels: ignite3 > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M M JLM_JSR166_UTILCONCURRENT_MONITORENTER JLM: Synchronization performed on > java.util.concurrent.atomic.AtomicReferenceArray in > org.apache.ignite.internal.network.LazyStripedExecutor.executorFor(short) At > LazyStripedExecutor.java:[line 88] {noformat} > Instances of java.util.concurrent.atomic classes have their own concurrency > control mechanisms that are orthogonal to the synchronization provided by the > Java keyword {{{}synchronized{}}}. For example, synchronizing on an > {{AtomicBoolean}} will not prevent other threads from modifying the > {{{}AtomicBoolean{}}}. > Such code may be correct, but should be carefully reviewed and documented, > and may confuse people who have to maintain the code at a later date. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21703) IgniteSqlFunctions.octetLength relies on default encoding
[ https://issues.apache.org/jira/browse/IGNITE-21703?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21703: --- Labels: ignite3 (was: ) > IgniteSqlFunctions.octetLength relies on default encoding > - > > Key: IGNITE-21703 > URL: https://issues.apache.org/jira/browse/IGNITE-21703 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Minor > Labels: ignite3 > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > H I DM_DEFAULT_ENCODING Dm: Found reliance on default encoding in > org.apache.ignite.internal.sql.engine.exec.exp.IgniteSqlFunctions.octetLength(String): > String.getBytes() At IgniteSqlFunctions.java:[line 133] > {noformat} > It looks like a potential bug if system default encoding will be something > exotic. > Investigate whenever this is a false-positive and we should suppress it, or > make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21697) ConnectionManager ignores exceptional return value of ExecutorService.submit
[ https://issues.apache.org/jira/browse/IGNITE-21697?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21697: --- Labels: ignite3 (was: ) > ConnectionManager ignores exceptional return value of ExecutorService.submit > > > Key: IGNITE-21697 > URL: https://issues.apache.org/jira/browse/IGNITE-21697 > Project: Ignite > Issue Type: Task >Reporter: Viacheslav Blinov >Priority: Minor > Labels: ignite3 > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M B RV_RETURN_VALUE_IGNORED_BAD_PRACTICE RV: Exceptional return value of > java.util.concurrent.ExecutorService.submit(Callable) ignored in > org.apache.ignite.internal.network.netty.ConnectionManager.handleNodeLeft(String) > At ConnectionManager.java:[line 603] > {noformat} > If you don't check the result, you won't notice if the method invocation > signals unexpected behavior by returning an atypical return value. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21692) AbstractFreeList has unused private method `initReusedPage`
[ https://issues.apache.org/jira/browse/IGNITE-21692?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21692: --- Labels: ignite3 (was: ) > AbstractFreeList has unused private method `initReusedPage` > --- > > Key: IGNITE-21692 > URL: https://issues.apache.org/jira/browse/IGNITE-21692 > Project: Ignite > Issue Type: Task >Reporter: Viacheslav Blinov >Priority: Minor > Labels: ignite3 > > Issue detected by SpotBugs but is also highlighted by Idea inspection. > Specifically the warning reported is: > {noformat} > M P UPM_UNCALLED_PRIVATE_METHOD UPM: Private method > org.apache.ignite.internal.pagememory.freelist.AbstractFreeList.initReusedPage(Storable, > long, IoStatisticsHolder) is never called At AbstractFreeList.java:[lines > 707-726] > {noformat} > Method `initReusedPage` is never called which can be an indicator of an issue. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21706) RandomLruPageReplacementPolicy has dead conditions
[ https://issues.apache.org/jira/browse/IGNITE-21706?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21706: --- Labels: ignite3 (was: ) > RandomLruPageReplacementPolicy has dead conditions > -- > > Key: IGNITE-21706 > URL: https://issues.apache.org/jira/browse/IGNITE-21706 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Minor > Labels: ignite3 > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > H D UC_USELESS_CONDITION UC: Useless condition: it's known that dirty == > false at this point At RandomLruPageReplacementPolicy.java:[line 134] > {noformat} > I tried to unfold it and ended up removing quite a few lines of dead code and > useless conditions which are constant. I'm not sure if this is right and > there is no missing implementation there. > Investigate whenever this is a false-positive and we should suppress it, or > make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21702) AbstractNode field `inBufSize` is unused
[ https://issues.apache.org/jira/browse/IGNITE-21702?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21702: --- Labels: ignite3 (was: ) > AbstractNode field `inBufSize` is unused > > > Key: IGNITE-21702 > URL: https://issues.apache.org/jira/browse/IGNITE-21702 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Minor > Labels: ignite3 > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M P SS_SHOULD_BE_STATIC SS: Unread field: > org.apache.ignite.internal.sql.engine.exec.rel.AbstractNode.inBufSize; should > this field be static? At AbstractNode.java:[line 39] {noformat} > It looks like this field is just useless. > Investigate whenever this is a false-positive and we should suppress it, or > make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21695) PageHandler: useless control flow
[ https://issues.apache.org/jira/browse/IGNITE-21695?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21695: --- Labels: ignite3 (was: ) > PageHandler: useless control flow > - > > Key: IGNITE-21695 > URL: https://issues.apache.org/jira/browse/IGNITE-21695 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Minor > Labels: ignite3 > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M D UCF_USELESS_CONTROL_FLOW UCF: Useless control flow in > org.apache.ignite.internal.pagememory.util.PageHandler. for PageHandler>() At PageHandler.java:[line 34] > {noformat} > One of the conditions of this interface default implementation checks for > condition which is always true/false. This can be a sign of a bug. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21700) IgniteSort: result of RelOptCost.plus is ignored but it doesn't have side-effects
[ https://issues.apache.org/jira/browse/IGNITE-21700?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21700: --- Labels: ignite3 (was: ) > IgniteSort: result of RelOptCost.plus is ignored but it doesn't have > side-effects > - > > Key: IGNITE-21700 > URL: https://issues.apache.org/jira/browse/IGNITE-21700 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Major > Labels: ignite3 > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > H D RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT RV: Return value of > org.apache.calcite.plan.RelOptCost.plus(RelOptCost) ignored, but method has > no side effect At IgniteSort.java:[line 169] {noformat} > It looks like RelOptCost.plus is side-effect free and it's return result > should be used, but it is ignored! It looks like a bug! > Investigate whenever this is a false-positive and we should suppress it, or > make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21694) HeapLockManager/HeapUnboundedLockManager makes inefficient use of keySet iterator instead of entrySet iterator
[ https://issues.apache.org/jira/browse/IGNITE-21694?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21694: --- Labels: ignite3 (was: ) > HeapLockManager/HeapUnboundedLockManager makes inefficient use of keySet > iterator instead of entrySet iterator > -- > > Key: IGNITE-21694 > URL: https://issues.apache.org/jira/browse/IGNITE-21694 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Major > Labels: ignite3 > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M P WMI_WRONG_MAP_ITERATOR WMI: > org.apache.ignite.internal.tx.impl.HeapLockManager$WaiterImpl.recalculate() > makes inefficient use of keySet iterator instead of entrySet iterator At > HeapLockManager.java:[line 815] > M P WMI_WRONG_MAP_ITERATOR WMI: > org.apache.ignite.internal.tx.impl.HeapUnboundedLockManager$WaiterImpl.recalculate() > makes inefficient use of keySet iterator instead of entrySet iterator At > HeapUnboundedLockManager.java:[line 632] {noformat} > This method accesses the value of a Map entry, using a key that was retrieved > from a keySet iterator. It is more efficient to use an iterator on the > entrySet of the map, to avoid the Map.get(key) lookup. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21701) IgniteSender compares unrelated types
[ https://issues.apache.org/jira/browse/IGNITE-21701?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21701: --- Labels: ignite3 (was: ) > IgniteSender compares unrelated types > - > > Key: IGNITE-21701 > URL: https://issues.apache.org/jira/browse/IGNITE-21701 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Major > Labels: ignite3 > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M C EC_UNRELATED_TYPES_USING_POINTER_EQUALITY EC: Using pointer equality to > compare a org.apache.calcite.rel.RelDistributions$RelDistributionImpl with a > org.apache.ignite.internal.sql.engine.trait.IgniteDistribution in new > org.apache.ignite.internal.sql.engine.rel.IgniteSender(RelOptCluster, > RelTraitSet, RelNode, long, long, IgniteDistribution) At > IgniteSender.java:[line 58] > {noformat} > It looks like a bug because this comparsion will always yield false! > Investigate whenever this is a false-positive and we should suppress it, or > make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21691) BasicMetricExporter has inconsistent synchronized access to field `configuration`
[ https://issues.apache.org/jira/browse/IGNITE-21691?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21691: --- Labels: ignite3 (was: ) > BasicMetricExporter has inconsistent synchronized access to field > `configuration` > - > > Key: IGNITE-21691 > URL: https://issues.apache.org/jira/browse/IGNITE-21691 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Major > Labels: ignite3 > > Issue detected by SpotBugs but is also highlighted by Idea inspection. > Specifically the warning reported is: > {noformat} > M M IS2_INCONSISTENT_SYNC IS: Inconsistent synchronization of > org.apache.ignite.internal.metrics.exporters.BasicMetricExporter.configuration; > locked 66% of time Unsynchronized access at BasicMetricExporter.java:[line > 41] > {noformat} > Field `configuration` are accessed in both synchronized and unsynchronized > fashion. This can be a source of hard to catch bug. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21690) ConfigurationNode has inconsistent synchronized access to fields `invalid` and `val`
[ https://issues.apache.org/jira/browse/IGNITE-21690?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21690: --- Labels: ignite3 (was: ) > ConfigurationNode has inconsistent synchronized access to fields `invalid` > and `val` > > > Key: IGNITE-21690 > URL: https://issues.apache.org/jira/browse/IGNITE-21690 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Major > Labels: ignite3 > > Issue detected by SpotBugs but is also highlighted by Idea inspection. > Specifically the warning reported is: > {noformat} > M M IS2_INCONSISTENT_SYNC IS: Inconsistent synchronization of > org.apache.ignite.internal.configuration.ConfigurationNode.invalid; locked > 66% of time Unsynchronized access at ConfigurationNode.java:[line > 138]{noformat} > {noformat} > M M IS2_INCONSISTENT_SYNC IS: Inconsistent synchronization of > org.apache.ignite.internal.configuration.ConfigurationNode.val; locked 60% of > time Unsynchronized access at ConfigurationNode.java:[line 145]{noformat} > Fields `val` and `invalid` are accessed in both synchronized and > unsynchronized fashion. This can be a source of hard to catch bug. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21693) TxManagerImpl increments/decrements volatile field `inflights`
[ https://issues.apache.org/jira/browse/IGNITE-21693?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21693: --- Labels: ignite3 (was: ) > TxManagerImpl increments/decrements volatile field `inflights` > -- > > Key: IGNITE-21693 > URL: https://issues.apache.org/jira/browse/IGNITE-21693 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Major > Labels: ignite3 > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > H M VO_VOLATILE_INCREMENT VO: Increment of volatile field > org.apache.ignite.internal.tx.impl.TxManagerImpl$TxContext.inflights in > org.apache.ignite.internal.tx.impl.TxManagerImpl.lambda$addInflight$21(boolean[], > UUID, TxManagerImpl$TxContext) At TxManagerImpl.java:[line 843] > H M VO_VOLATILE_INCREMENT VO: Increment of volatile field > org.apache.ignite.internal.tx.impl.TxManagerImpl$TxContext.inflights in > org.apache.ignite.internal.tx.impl.TxManagerImpl.lambda$removeInflight$22(UUID, > TxManagerImpl$TxContext) At TxManagerImpl.java:[line 858] > {noformat} > Increments/Decrements of volatile fields aren't atomic. If more than one > thread is incrementing/decrementing the field at the same time, > increments/decrements could be lost. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21706) RandomLruPageReplacementPolicy has dead conditions
[ https://issues.apache.org/jira/browse/IGNITE-21706?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21706: --- Description: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} H D UC_USELESS_CONDITION UC: Useless condition: it's known that dirty == false at this point At RandomLruPageReplacementPolicy.java:[line 134] {noformat} I tried to unfold it and ended up removing quite a few lines of dead code and useless conditions which are constant. I'm not sure if this is right and there is no missing implementation there. Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml was: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M B BC_EQUALS_METHOD_SHOULD_WORK_FOR_ALL_OBJECTS BC: Equals method for org.apache.ignite.internal.pagememory.persistence.checkpoint.CheckpointWorkflow$1 assumes the argument is of type CheckpointWorkflow$1 At CheckpointWorkflow.java:[line 349] M B NP_EQUALS_SHOULD_HANDLE_NULL_ARGUMENT NP: org.apache.ignite.internal.pagememory.persistence.checkpoint.CheckpointWorkflow$1.equals(Object) does not check for null argument At CheckpointWorkflow.java:[line 349] {noformat} Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml > RandomLruPageReplacementPolicy has dead conditions > -- > > Key: IGNITE-21706 > URL: https://issues.apache.org/jira/browse/IGNITE-21706 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Minor > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > H D UC_USELESS_CONDITION UC: Useless condition: it's known that dirty == > false at this point At RandomLruPageReplacementPolicy.java:[line 134] > {noformat} > I tried to unfold it and ended up removing quite a few lines of dead code and > useless conditions which are constant. I'm not sure if this is right and > there is no missing implementation there. > Investigate whenever this is a false-positive and we should suppress it, or > make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21706) RandomLruPageReplacementPolicy has dead conditions
Viacheslav Blinov created IGNITE-21706: -- Summary: RandomLruPageReplacementPolicy has dead conditions Key: IGNITE-21706 URL: https://issues.apache.org/jira/browse/IGNITE-21706 Project: Ignite Issue Type: Bug Reporter: Viacheslav Blinov Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M B BC_EQUALS_METHOD_SHOULD_WORK_FOR_ALL_OBJECTS BC: Equals method for org.apache.ignite.internal.pagememory.persistence.checkpoint.CheckpointWorkflow$1 assumes the argument is of type CheckpointWorkflow$1 At CheckpointWorkflow.java:[line 349] M B NP_EQUALS_SHOULD_HANDLE_NULL_ARGUMENT NP: org.apache.ignite.internal.pagememory.persistence.checkpoint.CheckpointWorkflow$1.equals(Object) does not check for null argument At CheckpointWorkflow.java:[line 349] {noformat} Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21705) CheckpointWorkflow uses weird equals implementation
Viacheslav Blinov created IGNITE-21705: -- Summary: CheckpointWorkflow uses weird equals implementation Key: IGNITE-21705 URL: https://issues.apache.org/jira/browse/IGNITE-21705 Project: Ignite Issue Type: Bug Reporter: Viacheslav Blinov Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M B BC_EQUALS_METHOD_SHOULD_WORK_FOR_ALL_OBJECTS BC: Equals method for org.apache.ignite.internal.configuration.ConfigurationListenerHolder$1 assumes the argument is of type ConfigurationListenerHolder$1 At ConfigurationListenerHolder.java:[line 56] M B NP_EQUALS_SHOULD_HANDLE_NULL_ARGUMENT NP: org.apache.ignite.internal.configuration.ConfigurationListenerHolder$1.equals(Object) does not check for null argument At ConfigurationListenerHolder.java:[line 56]{noformat} Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21705) CheckpointWorkflow uses weird equals implementation
[ https://issues.apache.org/jira/browse/IGNITE-21705?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21705: --- Description: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M B BC_EQUALS_METHOD_SHOULD_WORK_FOR_ALL_OBJECTS BC: Equals method for org.apache.ignite.internal.pagememory.persistence.checkpoint.CheckpointWorkflow$1 assumes the argument is of type CheckpointWorkflow$1 At CheckpointWorkflow.java:[line 349] M B NP_EQUALS_SHOULD_HANDLE_NULL_ARGUMENT NP: org.apache.ignite.internal.pagememory.persistence.checkpoint.CheckpointWorkflow$1.equals(Object) does not check for null argument At CheckpointWorkflow.java:[line 349] {noformat} Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml was: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M B BC_EQUALS_METHOD_SHOULD_WORK_FOR_ALL_OBJECTS BC: Equals method for org.apache.ignite.internal.configuration.ConfigurationListenerHolder$1 assumes the argument is of type ConfigurationListenerHolder$1 At ConfigurationListenerHolder.java:[line 56] M B NP_EQUALS_SHOULD_HANDLE_NULL_ARGUMENT NP: org.apache.ignite.internal.configuration.ConfigurationListenerHolder$1.equals(Object) does not check for null argument At ConfigurationListenerHolder.java:[line 56]{noformat} Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml > CheckpointWorkflow uses weird equals implementation > --- > > Key: IGNITE-21705 > URL: https://issues.apache.org/jira/browse/IGNITE-21705 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Minor > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M B BC_EQUALS_METHOD_SHOULD_WORK_FOR_ALL_OBJECTS BC: Equals method for > org.apache.ignite.internal.pagememory.persistence.checkpoint.CheckpointWorkflow$1 > assumes the argument is of type CheckpointWorkflow$1 At > CheckpointWorkflow.java:[line 349] > M B NP_EQUALS_SHOULD_HANDLE_NULL_ARGUMENT NP: > org.apache.ignite.internal.pagememory.persistence.checkpoint.CheckpointWorkflow$1.equals(Object) > does not check for null argument At CheckpointWorkflow.java:[line 349] > {noformat} > Investigate whenever this is a false-positive and we should suppress it, or > make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21704) ConfigurationListenerHolder uses weird equals implementation
[ https://issues.apache.org/jira/browse/IGNITE-21704?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21704: --- Description: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M B BC_EQUALS_METHOD_SHOULD_WORK_FOR_ALL_OBJECTS BC: Equals method for org.apache.ignite.internal.configuration.ConfigurationListenerHolder$1 assumes the argument is of type ConfigurationListenerHolder$1 At ConfigurationListenerHolder.java:[line 56] M B NP_EQUALS_SHOULD_HANDLE_NULL_ARGUMENT NP: org.apache.ignite.internal.configuration.ConfigurationListenerHolder$1.equals(Object) does not check for null argument At ConfigurationListenerHolder.java:[line 56]{noformat} Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml was: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M B BC_EQUALS_METHOD_SHOULD_WORK_FOR_ALL_OBJECTS BC: Equals method for org.apache.ignite.internal.configuration.ConfigurationListenerHolder$1 assumes the argument is of type ConfigurationListenerHolder$1 At ConfigurationListenerHolder.java:[line 56] {noformat} Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml > ConfigurationListenerHolder uses weird equals implementation > > > Key: IGNITE-21704 > URL: https://issues.apache.org/jira/browse/IGNITE-21704 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Minor > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M B BC_EQUALS_METHOD_SHOULD_WORK_FOR_ALL_OBJECTS BC: Equals method for > org.apache.ignite.internal.configuration.ConfigurationListenerHolder$1 > assumes the argument is of type ConfigurationListenerHolder$1 At > ConfigurationListenerHolder.java:[line 56] > M B NP_EQUALS_SHOULD_HANDLE_NULL_ARGUMENT NP: > org.apache.ignite.internal.configuration.ConfigurationListenerHolder$1.equals(Object) > does not check for null argument At ConfigurationListenerHolder.java:[line > 56]{noformat} > Investigate whenever this is a false-positive and we should suppress it, or > make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21704) ConfigurationListenerHolder uses weird equals implementation
Viacheslav Blinov created IGNITE-21704: -- Summary: ConfigurationListenerHolder uses weird equals implementation Key: IGNITE-21704 URL: https://issues.apache.org/jira/browse/IGNITE-21704 Project: Ignite Issue Type: Bug Reporter: Viacheslav Blinov Issue detected by SpotBugs. Specifically the warning reported is: {noformat} H I DM_DEFAULT_ENCODING Dm: Found reliance on default encoding in org.apache.ignite.internal.sql.engine.exec.exp.IgniteSqlFunctions.octetLength(String): String.getBytes() At IgniteSqlFunctions.java:[line 133] {noformat} It looks like a potential bug if system default encoding will be something exotic. Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21704) ConfigurationListenerHolder uses weird equals implementation
[ https://issues.apache.org/jira/browse/IGNITE-21704?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21704: --- Description: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M B BC_EQUALS_METHOD_SHOULD_WORK_FOR_ALL_OBJECTS BC: Equals method for org.apache.ignite.internal.configuration.ConfigurationListenerHolder$1 assumes the argument is of type ConfigurationListenerHolder$1 At ConfigurationListenerHolder.java:[line 56] {noformat} Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml was: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} H I DM_DEFAULT_ENCODING Dm: Found reliance on default encoding in org.apache.ignite.internal.sql.engine.exec.exp.IgniteSqlFunctions.octetLength(String): String.getBytes() At IgniteSqlFunctions.java:[line 133] {noformat} It looks like a potential bug if system default encoding will be something exotic. Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml > ConfigurationListenerHolder uses weird equals implementation > > > Key: IGNITE-21704 > URL: https://issues.apache.org/jira/browse/IGNITE-21704 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Minor > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M B BC_EQUALS_METHOD_SHOULD_WORK_FOR_ALL_OBJECTS BC: Equals method for > org.apache.ignite.internal.configuration.ConfigurationListenerHolder$1 > assumes the argument is of type ConfigurationListenerHolder$1 At > ConfigurationListenerHolder.java:[line 56] {noformat} > Investigate whenever this is a false-positive and we should suppress it, or > make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21703) IgniteSqlFunctions.octetLength relies on default encoding
[ https://issues.apache.org/jira/browse/IGNITE-21703?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21703: --- Description: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} H I DM_DEFAULT_ENCODING Dm: Found reliance on default encoding in org.apache.ignite.internal.sql.engine.exec.exp.IgniteSqlFunctions.octetLength(String): String.getBytes() At IgniteSqlFunctions.java:[line 133] {noformat} It looks like a potential bug if system default encoding will be something exotic. Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml was: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M P SS_SHOULD_BE_STATIC SS: Unread field: org.apache.ignite.internal.sql.engine.exec.rel.AbstractNode.inBufSize; should this field be static? At AbstractNode.java:[line 39] {noformat} It looks like this field is just useless. Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml > IgniteSqlFunctions.octetLength relies on default encoding > - > > Key: IGNITE-21703 > URL: https://issues.apache.org/jira/browse/IGNITE-21703 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Minor > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > H I DM_DEFAULT_ENCODING Dm: Found reliance on default encoding in > org.apache.ignite.internal.sql.engine.exec.exp.IgniteSqlFunctions.octetLength(String): > String.getBytes() At IgniteSqlFunctions.java:[line 133] > {noformat} > It looks like a potential bug if system default encoding will be something > exotic. > Investigate whenever this is a false-positive and we should suppress it, or > make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21703) IgniteSqlFunctions.octetLength relies on default encoding
Viacheslav Blinov created IGNITE-21703: -- Summary: IgniteSqlFunctions.octetLength relies on default encoding Key: IGNITE-21703 URL: https://issues.apache.org/jira/browse/IGNITE-21703 Project: Ignite Issue Type: Bug Reporter: Viacheslav Blinov Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M P SS_SHOULD_BE_STATIC SS: Unread field: org.apache.ignite.internal.sql.engine.exec.rel.AbstractNode.inBufSize; should this field be static? At AbstractNode.java:[line 39] {noformat} It looks like this field is just useless. Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21702) AbstractNode field `inBufSize` is unused
[ https://issues.apache.org/jira/browse/IGNITE-21702?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21702: --- Priority: Minor (was: Major) > AbstractNode field `inBufSize` is unused > > > Key: IGNITE-21702 > URL: https://issues.apache.org/jira/browse/IGNITE-21702 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Minor > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M C EC_UNRELATED_TYPES_USING_POINTER_EQUALITY EC: Using pointer equality to > compare a org.apache.calcite.rel.RelDistributions$RelDistributionImpl with a > org.apache.ignite.internal.sql.engine.trait.IgniteDistribution in new > org.apache.ignite.internal.sql.engine.rel.IgniteSender(RelOptCluster, > RelTraitSet, RelNode, long, long, IgniteDistribution) At > IgniteSender.java:[line 58] > {noformat} > It looks like a bug because this comparsion will always yield false! > Investigate whenever this is a false-positive and we should suppress it, or > make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21702) AbstractNode field `inBufSize` is unused
[ https://issues.apache.org/jira/browse/IGNITE-21702?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21702: --- Description: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M P SS_SHOULD_BE_STATIC SS: Unread field: org.apache.ignite.internal.sql.engine.exec.rel.AbstractNode.inBufSize; should this field be static? At AbstractNode.java:[line 39] {noformat} It looks like this field is just useless. Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml was: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M C EC_UNRELATED_TYPES_USING_POINTER_EQUALITY EC: Using pointer equality to compare a org.apache.calcite.rel.RelDistributions$RelDistributionImpl with a org.apache.ignite.internal.sql.engine.trait.IgniteDistribution in new org.apache.ignite.internal.sql.engine.rel.IgniteSender(RelOptCluster, RelTraitSet, RelNode, long, long, IgniteDistribution) At IgniteSender.java:[line 58] {noformat} It looks like a bug because this comparsion will always yield false! Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml > AbstractNode field `inBufSize` is unused > > > Key: IGNITE-21702 > URL: https://issues.apache.org/jira/browse/IGNITE-21702 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Minor > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M P SS_SHOULD_BE_STATIC SS: Unread field: > org.apache.ignite.internal.sql.engine.exec.rel.AbstractNode.inBufSize; should > this field be static? At AbstractNode.java:[line 39] {noformat} > It looks like this field is just useless. > Investigate whenever this is a false-positive and we should suppress it, or > make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21702) AbstractNode field `inBufSize` is unused
Viacheslav Blinov created IGNITE-21702: -- Summary: AbstractNode field `inBufSize` is unused Key: IGNITE-21702 URL: https://issues.apache.org/jira/browse/IGNITE-21702 Project: Ignite Issue Type: Bug Reporter: Viacheslav Blinov Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M C EC_UNRELATED_TYPES_USING_POINTER_EQUALITY EC: Using pointer equality to compare a org.apache.calcite.rel.RelDistributions$RelDistributionImpl with a org.apache.ignite.internal.sql.engine.trait.IgniteDistribution in new org.apache.ignite.internal.sql.engine.rel.IgniteSender(RelOptCluster, RelTraitSet, RelNode, long, long, IgniteDistribution) At IgniteSender.java:[line 58] {noformat} It looks like a bug because this comparsion will always yield false! Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21701) IgniteSender compares unrelated types
[ https://issues.apache.org/jira/browse/IGNITE-21701?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21701: --- Description: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M C EC_UNRELATED_TYPES_USING_POINTER_EQUALITY EC: Using pointer equality to compare a org.apache.calcite.rel.RelDistributions$RelDistributionImpl with a org.apache.ignite.internal.sql.engine.trait.IgniteDistribution in new org.apache.ignite.internal.sql.engine.rel.IgniteSender(RelOptCluster, RelTraitSet, RelNode, long, long, IgniteDistribution) At IgniteSender.java:[line 58] {noformat} It looks like a bug because this comparsion will always yield false! Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml was: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} H D RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT RV: Return value of org.apache.calcite.plan.RelOptCost.plus(RelOptCost) ignored, but method has no side effect At IgniteSort.java:[line 169] {noformat} It looks like RelOptCost.plus is side-effect free and it's return result should be used, but it is ignored! It looks like a bug! Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml > IgniteSender compares unrelated types > - > > Key: IGNITE-21701 > URL: https://issues.apache.org/jira/browse/IGNITE-21701 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Major > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M C EC_UNRELATED_TYPES_USING_POINTER_EQUALITY EC: Using pointer equality to > compare a org.apache.calcite.rel.RelDistributions$RelDistributionImpl with a > org.apache.ignite.internal.sql.engine.trait.IgniteDistribution in new > org.apache.ignite.internal.sql.engine.rel.IgniteSender(RelOptCluster, > RelTraitSet, RelNode, long, long, IgniteDistribution) At > IgniteSender.java:[line 58] > {noformat} > It looks like a bug because this comparsion will always yield false! > Investigate whenever this is a false-positive and we should suppress it, or > make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21701) IgniteSender compares unrelated types
Viacheslav Blinov created IGNITE-21701: -- Summary: IgniteSender compares unrelated types Key: IGNITE-21701 URL: https://issues.apache.org/jira/browse/IGNITE-21701 Project: Ignite Issue Type: Bug Reporter: Viacheslav Blinov Issue detected by SpotBugs. Specifically the warning reported is: {noformat} H D RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT RV: Return value of org.apache.calcite.plan.RelOptCost.plus(RelOptCost) ignored, but method has no side effect At IgniteSort.java:[line 169] {noformat} It looks like RelOptCost.plus is side-effect free and it's return result should be used, but it is ignored! It looks like a bug! Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21700) IgniteSort: result of RelOptCost.plus is ignored but it doesn't have side-effects
[ https://issues.apache.org/jira/browse/IGNITE-21700?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21700: --- Description: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} H D RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT RV: Return value of org.apache.calcite.plan.RelOptCost.plus(RelOptCost) ignored, but method has no side effect At IgniteSort.java:[line 169] {noformat} It looks like RelOptCost.plus is side-effect free and it's return result should be used, but it is ignored! It looks like a bug! Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml was: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M B ES_COMPARING_STRINGS_WITH_EQ ES: Comparison of String objects using == or != in org.apache.ignite.internal.sql.engine.trait.DistributionFunction.equals(Object) At DistributionFunction.java:[line 76] M B ES_COMPARING_STRINGS_WITH_EQ ES: Comparison of String objects using == or != in org.apache.ignite.internal.sql.engine.trait.DistributionFunction.satisfy(DistributionFunction, DistributionFunction) At DistributionFunction.java:[line 117] {noformat} This might be wrong. Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml > IgniteSort: result of RelOptCost.plus is ignored but it doesn't have > side-effects > - > > Key: IGNITE-21700 > URL: https://issues.apache.org/jira/browse/IGNITE-21700 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Minor > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > H D RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT RV: Return value of > org.apache.calcite.plan.RelOptCost.plus(RelOptCost) ignored, but method has > no side effect At IgniteSort.java:[line 169] {noformat} > It looks like RelOptCost.plus is side-effect free and it's return result > should be used, but it is ignored! It looks like a bug! > Investigate whenever this is a false-positive and we should suppress it, or > make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21700) IgniteSort: result of RelOptCost.plus is ignored but it doesn't have side-effects
[ https://issues.apache.org/jira/browse/IGNITE-21700?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21700: --- Priority: Major (was: Minor) > IgniteSort: result of RelOptCost.plus is ignored but it doesn't have > side-effects > - > > Key: IGNITE-21700 > URL: https://issues.apache.org/jira/browse/IGNITE-21700 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Major > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > H D RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT RV: Return value of > org.apache.calcite.plan.RelOptCost.plus(RelOptCost) ignored, but method has > no side effect At IgniteSort.java:[line 169] {noformat} > It looks like RelOptCost.plus is side-effect free and it's return result > should be used, but it is ignored! It looks like a bug! > Investigate whenever this is a false-positive and we should suppress it, or > make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21700) IgniteSort: result of RelOptCost.plus is ignored but it doesn't have side-effects
Viacheslav Blinov created IGNITE-21700: -- Summary: IgniteSort: result of RelOptCost.plus is ignored but it doesn't have side-effects Key: IGNITE-21700 URL: https://issues.apache.org/jira/browse/IGNITE-21700 Project: Ignite Issue Type: Bug Reporter: Viacheslav Blinov Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M B ES_COMPARING_STRINGS_WITH_EQ ES: Comparison of String objects using == or != in org.apache.ignite.internal.sql.engine.trait.DistributionFunction.equals(Object) At DistributionFunction.java:[line 76] M B ES_COMPARING_STRINGS_WITH_EQ ES: Comparison of String objects using == or != in org.apache.ignite.internal.sql.engine.trait.DistributionFunction.satisfy(DistributionFunction, DistributionFunction) At DistributionFunction.java:[line 117] {noformat} This might be wrong. Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21699) DistributionFunction compares strings by reference
Viacheslav Blinov created IGNITE-21699: -- Summary: DistributionFunction compares strings by reference Key: IGNITE-21699 URL: https://issues.apache.org/jira/browse/IGNITE-21699 Project: Ignite Issue Type: Task Reporter: Viacheslav Blinov Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M P BX_UNBOXING_IMMEDIATELY_REBOXED Bx: Boxed value is unboxed and then immediately reboxed in org.apache.ignite.internal.configuration.storage.LocalConfigurationStorage.lambda$lastRevision$6() At LocalConfigurationStorage.java:[line 232] {noformat} This might cause unwanted additional GC pressure. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21699) DistributionFunction compares strings by reference
[ https://issues.apache.org/jira/browse/IGNITE-21699?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21699: --- Issue Type: Bug (was: Task) > DistributionFunction compares strings by reference > -- > > Key: IGNITE-21699 > URL: https://issues.apache.org/jira/browse/IGNITE-21699 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Minor > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M B ES_COMPARING_STRINGS_WITH_EQ ES: Comparison of String objects using == or > != in > org.apache.ignite.internal.sql.engine.trait.DistributionFunction.equals(Object) > At DistributionFunction.java:[line 76] > M B ES_COMPARING_STRINGS_WITH_EQ ES: Comparison of String objects using == or > != in > org.apache.ignite.internal.sql.engine.trait.DistributionFunction.satisfy(DistributionFunction, > DistributionFunction) At DistributionFunction.java:[line 117] > {noformat} > This might be wrong. > Investigate whenever this is a false-positive and we should suppress it, or > make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21699) DistributionFunction compares strings by reference
[ https://issues.apache.org/jira/browse/IGNITE-21699?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21699: --- Description: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M B ES_COMPARING_STRINGS_WITH_EQ ES: Comparison of String objects using == or != in org.apache.ignite.internal.sql.engine.trait.DistributionFunction.equals(Object) At DistributionFunction.java:[line 76] M B ES_COMPARING_STRINGS_WITH_EQ ES: Comparison of String objects using == or != in org.apache.ignite.internal.sql.engine.trait.DistributionFunction.satisfy(DistributionFunction, DistributionFunction) At DistributionFunction.java:[line 117] {noformat} This might be wrong. Investigate whenever this is a false-positive and we should suppress it, or make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml was: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M P BX_UNBOXING_IMMEDIATELY_REBOXED Bx: Boxed value is unboxed and then immediately reboxed in org.apache.ignite.internal.configuration.storage.LocalConfigurationStorage.lambda$lastRevision$6() At LocalConfigurationStorage.java:[line 232] {noformat} This might cause unwanted additional GC pressure. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml > DistributionFunction compares strings by reference > -- > > Key: IGNITE-21699 > URL: https://issues.apache.org/jira/browse/IGNITE-21699 > Project: Ignite > Issue Type: Task >Reporter: Viacheslav Blinov >Priority: Minor > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M B ES_COMPARING_STRINGS_WITH_EQ ES: Comparison of String objects using == or > != in > org.apache.ignite.internal.sql.engine.trait.DistributionFunction.equals(Object) > At DistributionFunction.java:[line 76] > M B ES_COMPARING_STRINGS_WITH_EQ ES: Comparison of String objects using == or > != in > org.apache.ignite.internal.sql.engine.trait.DistributionFunction.satisfy(DistributionFunction, > DistributionFunction) At DistributionFunction.java:[line 117] > {noformat} > This might be wrong. > Investigate whenever this is a false-positive and we should suppress it, or > make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21698) LocalConfigurationStorage reboxes unboxed value
[ https://issues.apache.org/jira/browse/IGNITE-21698?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21698: --- Description: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M P BX_UNBOXING_IMMEDIATELY_REBOXED Bx: Boxed value is unboxed and then immediately reboxed in org.apache.ignite.internal.configuration.storage.LocalConfigurationStorage.lambda$lastRevision$6() At LocalConfigurationStorage.java:[line 232] {noformat} This might cause unwanted additional GC pressure. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml was: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M B RV_RETURN_VALUE_IGNORED_BAD_PRACTICE RV: Exceptional return value of java.util.concurrent.ExecutorService.submit(Callable) ignored in org.apache.ignite.internal.network.netty.ConnectionManager.handleNodeLeft(String) At ConnectionManager.java:[line 603] {noformat} If you don't check the result, you won't notice if the method invocation signals unexpected behavior by returning an atypical return value. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml > LocalConfigurationStorage reboxes unboxed value > --- > > Key: IGNITE-21698 > URL: https://issues.apache.org/jira/browse/IGNITE-21698 > Project: Ignite > Issue Type: Task >Reporter: Viacheslav Blinov >Priority: Minor > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M P BX_UNBOXING_IMMEDIATELY_REBOXED Bx: Boxed value is unboxed and then > immediately reboxed in > org.apache.ignite.internal.configuration.storage.LocalConfigurationStorage.lambda$lastRevision$6() > At LocalConfigurationStorage.java:[line 232] {noformat} > This might cause unwanted additional GC pressure. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21698) LocalConfigurationStorage reboxes unboxed value
Viacheslav Blinov created IGNITE-21698: -- Summary: LocalConfigurationStorage reboxes unboxed value Key: IGNITE-21698 URL: https://issues.apache.org/jira/browse/IGNITE-21698 Project: Ignite Issue Type: Task Reporter: Viacheslav Blinov Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M B RV_RETURN_VALUE_IGNORED_BAD_PRACTICE RV: Exceptional return value of java.util.concurrent.ExecutorService.submit(Callable) ignored in org.apache.ignite.internal.network.netty.ConnectionManager.handleNodeLeft(String) At ConnectionManager.java:[line 603] {noformat} If you don't check the result, you won't notice if the method invocation signals unexpected behavior by returning an atypical return value. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21697) ConnectionManager ignores exceptional return value of ExecutorService.submit
[ https://issues.apache.org/jira/browse/IGNITE-21697?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21697: --- Description: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M B RV_RETURN_VALUE_IGNORED_BAD_PRACTICE RV: Exceptional return value of java.util.concurrent.ExecutorService.submit(Callable) ignored in org.apache.ignite.internal.network.netty.ConnectionManager.handleNodeLeft(String) At ConnectionManager.java:[line 603] {noformat} If you don't check the result, you won't notice if the method invocation signals unexpected behavior by returning an atypical return value. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml was: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M M JLM_JSR166_UTILCONCURRENT_MONITORENTER JLM: Synchronization performed on java.util.concurrent.atomic.AtomicReferenceArray in org.apache.ignite.internal.network.LazyStripedExecutor.executorFor(short) At LazyStripedExecutor.java:[line 88] {noformat} Instances of java.util.concurrent.atomic classes have their own concurrency control mechanisms that are orthogonal to the synchronization provided by the Java keyword {{{}synchronized{}}}. For example, synchronizing on an {{AtomicBoolean}} will not prevent other threads from modifying the {{{}AtomicBoolean{}}}. Such code may be correct, but should be carefully reviewed and documented, and may confuse people who have to maintain the code at a later date. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml > ConnectionManager ignores exceptional return value of ExecutorService.submit > > > Key: IGNITE-21697 > URL: https://issues.apache.org/jira/browse/IGNITE-21697 > Project: Ignite > Issue Type: Task >Reporter: Viacheslav Blinov >Priority: Minor > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M B RV_RETURN_VALUE_IGNORED_BAD_PRACTICE RV: Exceptional return value of > java.util.concurrent.ExecutorService.submit(Callable) ignored in > org.apache.ignite.internal.network.netty.ConnectionManager.handleNodeLeft(String) > At ConnectionManager.java:[line 603] > {noformat} > If you don't check the result, you won't notice if the method invocation > signals unexpected behavior by returning an atypical return value. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21697) ConnectionManager ignores exceptional return value of ExecutorService.submit
Viacheslav Blinov created IGNITE-21697: -- Summary: ConnectionManager ignores exceptional return value of ExecutorService.submit Key: IGNITE-21697 URL: https://issues.apache.org/jira/browse/IGNITE-21697 Project: Ignite Issue Type: Task Reporter: Viacheslav Blinov Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M M JLM_JSR166_UTILCONCURRENT_MONITORENTER JLM: Synchronization performed on java.util.concurrent.atomic.AtomicReferenceArray in org.apache.ignite.internal.network.LazyStripedExecutor.executorFor(short) At LazyStripedExecutor.java:[line 88] {noformat} Instances of java.util.concurrent.atomic classes have their own concurrency control mechanisms that are orthogonal to the synchronization provided by the Java keyword {{{}synchronized{}}}. For example, synchronizing on an {{AtomicBoolean}} will not prevent other threads from modifying the {{{}AtomicBoolean{}}}. Such code may be correct, but should be carefully reviewed and documented, and may confuse people who have to maintain the code at a later date. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21696) LazyStripedExecutor performs synchronization on AtomicReferenceArray
[ https://issues.apache.org/jira/browse/IGNITE-21696?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21696: --- Issue Type: Task (was: Bug) > LazyStripedExecutor performs synchronization on AtomicReferenceArray > > > Key: IGNITE-21696 > URL: https://issues.apache.org/jira/browse/IGNITE-21696 > Project: Ignite > Issue Type: Task >Reporter: Viacheslav Blinov >Priority: Minor > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M M JLM_JSR166_UTILCONCURRENT_MONITORENTER JLM: Synchronization performed on > java.util.concurrent.atomic.AtomicReferenceArray in > org.apache.ignite.internal.network.LazyStripedExecutor.executorFor(short) At > LazyStripedExecutor.java:[line 88] {noformat} > Instances of java.util.concurrent.atomic classes have their own concurrency > control mechanisms that are orthogonal to the synchronization provided by the > Java keyword {{{}synchronized{}}}. For example, synchronizing on an > {{AtomicBoolean}} will not prevent other threads from modifying the > {{{}AtomicBoolean{}}}. > Such code may be correct, but should be carefully reviewed and documented, > and may confuse people who have to maintain the code at a later date. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21696) LazyStripedExecutor performs synchronization on AtomicReferenceArray
[ https://issues.apache.org/jira/browse/IGNITE-21696?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21696: --- Description: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M M JLM_JSR166_UTILCONCURRENT_MONITORENTER JLM: Synchronization performed on java.util.concurrent.atomic.AtomicReferenceArray in org.apache.ignite.internal.network.LazyStripedExecutor.executorFor(short) At LazyStripedExecutor.java:[line 88] {noformat} Instances of java.util.concurrent.atomic classes have their own concurrency control mechanisms that are orthogonal to the synchronization provided by the Java keyword {{{}synchronized{}}}. For example, synchronizing on an {{AtomicBoolean}} will not prevent other threads from modifying the {{{}AtomicBoolean{}}}. Such code may be correct, but should be carefully reviewed and documented, and may confuse people who have to maintain the code at a later date. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml was: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M D UCF_USELESS_CONTROL_FLOW UCF: Useless control flow in org.apache.ignite.internal.pagememory.util.PageHandler.() At PageHandler.java:[line 34] {noformat} One of the conditions of this interface default implementation checks for condition which is always true/false. This can be a sign of a bug. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml > LazyStripedExecutor performs synchronization on AtomicReferenceArray > > > Key: IGNITE-21696 > URL: https://issues.apache.org/jira/browse/IGNITE-21696 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Minor > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M M JLM_JSR166_UTILCONCURRENT_MONITORENTER JLM: Synchronization performed on > java.util.concurrent.atomic.AtomicReferenceArray in > org.apache.ignite.internal.network.LazyStripedExecutor.executorFor(short) At > LazyStripedExecutor.java:[line 88] {noformat} > Instances of java.util.concurrent.atomic classes have their own concurrency > control mechanisms that are orthogonal to the synchronization provided by the > Java keyword {{{}synchronized{}}}. For example, synchronizing on an > {{AtomicBoolean}} will not prevent other threads from modifying the > {{{}AtomicBoolean{}}}. > Such code may be correct, but should be carefully reviewed and documented, > and may confuse people who have to maintain the code at a later date. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21695) PageHandler: useless control flow
[ https://issues.apache.org/jira/browse/IGNITE-21695?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21695: --- Description: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M D UCF_USELESS_CONTROL_FLOW UCF: Useless control flow in org.apache.ignite.internal.pagememory.util.PageHandler.() At PageHandler.java:[line 34] {noformat} One of the conditions of this interface default implementation checks for condition which is always true/false. This can be a sign of a bug. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml was: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M P WMI_WRONG_MAP_ITERATOR WMI: org.apache.ignite.internal.tx.impl.HeapLockManager$WaiterImpl.recalculate() makes inefficient use of keySet iterator instead of entrySet iterator At HeapLockManager.java:[line 815] M P WMI_WRONG_MAP_ITERATOR WMI: org.apache.ignite.internal.tx.impl.HeapUnboundedLockManager$WaiterImpl.recalculate() makes inefficient use of keySet iterator instead of entrySet iterator At HeapUnboundedLockManager.java:[line 632] {noformat} This method accesses the value of a Map entry, using a key that was retrieved from a keySet iterator. It is more efficient to use an iterator on the entrySet of the map, to avoid the Map.get(key) lookup. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml > PageHandler: useless control flow > - > > Key: IGNITE-21695 > URL: https://issues.apache.org/jira/browse/IGNITE-21695 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Major > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M D UCF_USELESS_CONTROL_FLOW UCF: Useless control flow in > org.apache.ignite.internal.pagememory.util.PageHandler. for PageHandler>() At PageHandler.java:[line 34] > {noformat} > One of the conditions of this interface default implementation checks for > condition which is always true/false. This can be a sign of a bug. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21696) LazyStripedExecutor performs synchronization on AtomicReferenceArray
Viacheslav Blinov created IGNITE-21696: -- Summary: LazyStripedExecutor performs synchronization on AtomicReferenceArray Key: IGNITE-21696 URL: https://issues.apache.org/jira/browse/IGNITE-21696 Project: Ignite Issue Type: Bug Reporter: Viacheslav Blinov Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M D UCF_USELESS_CONTROL_FLOW UCF: Useless control flow in org.apache.ignite.internal.pagememory.util.PageHandler.() At PageHandler.java:[line 34] {noformat} One of the conditions of this interface default implementation checks for condition which is always true/false. This can be a sign of a bug. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21695) PageHandler: useless control flow
[ https://issues.apache.org/jira/browse/IGNITE-21695?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21695: --- Priority: Minor (was: Major) > PageHandler: useless control flow > - > > Key: IGNITE-21695 > URL: https://issues.apache.org/jira/browse/IGNITE-21695 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Minor > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M D UCF_USELESS_CONTROL_FLOW UCF: Useless control flow in > org.apache.ignite.internal.pagememory.util.PageHandler. for PageHandler>() At PageHandler.java:[line 34] > {noformat} > One of the conditions of this interface default implementation checks for > condition which is always true/false. This can be a sign of a bug. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21695) PageHandler: useless control flow
Viacheslav Blinov created IGNITE-21695: -- Summary: PageHandler: useless control flow Key: IGNITE-21695 URL: https://issues.apache.org/jira/browse/IGNITE-21695 Project: Ignite Issue Type: Bug Reporter: Viacheslav Blinov Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M P WMI_WRONG_MAP_ITERATOR WMI: org.apache.ignite.internal.tx.impl.HeapLockManager$WaiterImpl.recalculate() makes inefficient use of keySet iterator instead of entrySet iterator At HeapLockManager.java:[line 815] M P WMI_WRONG_MAP_ITERATOR WMI: org.apache.ignite.internal.tx.impl.HeapUnboundedLockManager$WaiterImpl.recalculate() makes inefficient use of keySet iterator instead of entrySet iterator At HeapUnboundedLockManager.java:[line 632] {noformat} This method accesses the value of a Map entry, using a key that was retrieved from a keySet iterator. It is more efficient to use an iterator on the entrySet of the map, to avoid the Map.get(key) lookup. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21694) HeapLockManager/HeapUnboundedLockManager makes inefficient use of keySet iterator instead of entrySet iterator
[ https://issues.apache.org/jira/browse/IGNITE-21694?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21694: --- Description: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} M P WMI_WRONG_MAP_ITERATOR WMI: org.apache.ignite.internal.tx.impl.HeapLockManager$WaiterImpl.recalculate() makes inefficient use of keySet iterator instead of entrySet iterator At HeapLockManager.java:[line 815] M P WMI_WRONG_MAP_ITERATOR WMI: org.apache.ignite.internal.tx.impl.HeapUnboundedLockManager$WaiterImpl.recalculate() makes inefficient use of keySet iterator instead of entrySet iterator At HeapUnboundedLockManager.java:[line 632] {noformat} This method accesses the value of a Map entry, using a key that was retrieved from a keySet iterator. It is more efficient to use an iterator on the entrySet of the map, to avoid the Map.get(key) lookup. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml was: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} H M VO_VOLATILE_INCREMENT VO: Increment of volatile field org.apache.ignite.internal.tx.impl.TxManagerImpl$TxContext.inflights in org.apache.ignite.internal.tx.impl.TxManagerImpl.lambda$addInflight$21(boolean[], UUID, TxManagerImpl$TxContext) At TxManagerImpl.java:[line 843] H M VO_VOLATILE_INCREMENT VO: Increment of volatile field org.apache.ignite.internal.tx.impl.TxManagerImpl$TxContext.inflights in org.apache.ignite.internal.tx.impl.TxManagerImpl.lambda$removeInflight$22(UUID, TxManagerImpl$TxContext) At TxManagerImpl.java:[line 858] {noformat} Increments/Decrements of volatile fields aren't atomic. If more than one thread is incrementing/decrementing the field at the same time, increments/decrements could be lost. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml > HeapLockManager/HeapUnboundedLockManager makes inefficient use of keySet > iterator instead of entrySet iterator > -- > > Key: IGNITE-21694 > URL: https://issues.apache.org/jira/browse/IGNITE-21694 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Major > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > M P WMI_WRONG_MAP_ITERATOR WMI: > org.apache.ignite.internal.tx.impl.HeapLockManager$WaiterImpl.recalculate() > makes inefficient use of keySet iterator instead of entrySet iterator At > HeapLockManager.java:[line 815] > M P WMI_WRONG_MAP_ITERATOR WMI: > org.apache.ignite.internal.tx.impl.HeapUnboundedLockManager$WaiterImpl.recalculate() > makes inefficient use of keySet iterator instead of entrySet iterator At > HeapUnboundedLockManager.java:[line 632] {noformat} > This method accesses the value of a Map entry, using a key that was retrieved > from a keySet iterator. It is more efficient to use an iterator on the > entrySet of the map, to avoid the Map.get(key) lookup. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21694) HeapLockManager/HeapUnboundedLockManager makes inefficient use of keySet iterator instead of entrySet iterator
Viacheslav Blinov created IGNITE-21694: -- Summary: HeapLockManager/HeapUnboundedLockManager makes inefficient use of keySet iterator instead of entrySet iterator Key: IGNITE-21694 URL: https://issues.apache.org/jira/browse/IGNITE-21694 Project: Ignite Issue Type: Bug Reporter: Viacheslav Blinov Issue detected by SpotBugs. Specifically the warning reported is: {noformat} H M VO_VOLATILE_INCREMENT VO: Increment of volatile field org.apache.ignite.internal.tx.impl.TxManagerImpl$TxContext.inflights in org.apache.ignite.internal.tx.impl.TxManagerImpl.lambda$addInflight$21(boolean[], UUID, TxManagerImpl$TxContext) At TxManagerImpl.java:[line 843] H M VO_VOLATILE_INCREMENT VO: Increment of volatile field org.apache.ignite.internal.tx.impl.TxManagerImpl$TxContext.inflights in org.apache.ignite.internal.tx.impl.TxManagerImpl.lambda$removeInflight$22(UUID, TxManagerImpl$TxContext) At TxManagerImpl.java:[line 858] {noformat} Increments/Decrements of volatile fields aren't atomic. If more than one thread is incrementing/decrementing the field at the same time, increments/decrements could be lost. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21691) BasicMetricExporter has inconsistent synchronized access to field `configuration`
[ https://issues.apache.org/jira/browse/IGNITE-21691?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21691: --- Issue Type: Bug (was: Task) > BasicMetricExporter has inconsistent synchronized access to field > `configuration` > - > > Key: IGNITE-21691 > URL: https://issues.apache.org/jira/browse/IGNITE-21691 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Major > > Issue detected by SpotBugs but is also highlighted by Idea inspection. > Specifically the warning reported is: > {noformat} > M M IS2_INCONSISTENT_SYNC IS: Inconsistent synchronization of > org.apache.ignite.internal.metrics.exporters.BasicMetricExporter.configuration; > locked 66% of time Unsynchronized access at BasicMetricExporter.java:[line > 41] > {noformat} > Field `configuration` are accessed in both synchronized and unsynchronized > fashion. This can be a source of hard to catch bug. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21693) TxManagerImpl increments/decrements volatile field `inflights`
[ https://issues.apache.org/jira/browse/IGNITE-21693?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21693: --- Priority: Major (was: Minor) > TxManagerImpl increments/decrements volatile field `inflights` > -- > > Key: IGNITE-21693 > URL: https://issues.apache.org/jira/browse/IGNITE-21693 > Project: Ignite > Issue Type: Task >Reporter: Viacheslav Blinov >Priority: Major > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > H M VO_VOLATILE_INCREMENT VO: Increment of volatile field > org.apache.ignite.internal.tx.impl.TxManagerImpl$TxContext.inflights in > org.apache.ignite.internal.tx.impl.TxManagerImpl.lambda$addInflight$21(boolean[], > UUID, TxManagerImpl$TxContext) At TxManagerImpl.java:[line 843] > H M VO_VOLATILE_INCREMENT VO: Increment of volatile field > org.apache.ignite.internal.tx.impl.TxManagerImpl$TxContext.inflights in > org.apache.ignite.internal.tx.impl.TxManagerImpl.lambda$removeInflight$22(UUID, > TxManagerImpl$TxContext) At TxManagerImpl.java:[line 858] > {noformat} > Increments/Decrements of volatile fields aren't atomic. If more than one > thread is incrementing/decrementing the field at the same time, > increments/decrements could be lost. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21693) TxManagerImpl increments/decrements volatile field `inflights`
[ https://issues.apache.org/jira/browse/IGNITE-21693?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21693: --- Issue Type: Bug (was: Task) > TxManagerImpl increments/decrements volatile field `inflights` > -- > > Key: IGNITE-21693 > URL: https://issues.apache.org/jira/browse/IGNITE-21693 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Major > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > H M VO_VOLATILE_INCREMENT VO: Increment of volatile field > org.apache.ignite.internal.tx.impl.TxManagerImpl$TxContext.inflights in > org.apache.ignite.internal.tx.impl.TxManagerImpl.lambda$addInflight$21(boolean[], > UUID, TxManagerImpl$TxContext) At TxManagerImpl.java:[line 843] > H M VO_VOLATILE_INCREMENT VO: Increment of volatile field > org.apache.ignite.internal.tx.impl.TxManagerImpl$TxContext.inflights in > org.apache.ignite.internal.tx.impl.TxManagerImpl.lambda$removeInflight$22(UUID, > TxManagerImpl$TxContext) At TxManagerImpl.java:[line 858] > {noformat} > Increments/Decrements of volatile fields aren't atomic. If more than one > thread is incrementing/decrementing the field at the same time, > increments/decrements could be lost. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21690) ConfigurationNode has inconsistent synchronized access to fields `invalid` and `val`
[ https://issues.apache.org/jira/browse/IGNITE-21690?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21690: --- Issue Type: Bug (was: Task) > ConfigurationNode has inconsistent synchronized access to fields `invalid` > and `val` > > > Key: IGNITE-21690 > URL: https://issues.apache.org/jira/browse/IGNITE-21690 > Project: Ignite > Issue Type: Bug >Reporter: Viacheslav Blinov >Priority: Major > > Issue detected by SpotBugs but is also highlighted by Idea inspection. > Specifically the warning reported is: > {noformat} > M M IS2_INCONSISTENT_SYNC IS: Inconsistent synchronization of > org.apache.ignite.internal.configuration.ConfigurationNode.invalid; locked > 66% of time Unsynchronized access at ConfigurationNode.java:[line > 138]{noformat} > {noformat} > M M IS2_INCONSISTENT_SYNC IS: Inconsistent synchronization of > org.apache.ignite.internal.configuration.ConfigurationNode.val; locked 60% of > time Unsynchronized access at ConfigurationNode.java:[line 145]{noformat} > Fields `val` and `invalid` are accessed in both synchronized and > unsynchronized fashion. This can be a source of hard to catch bug. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21693) TxManagerImpl increments/decrements volatile field `inflights`
Viacheslav Blinov created IGNITE-21693: -- Summary: TxManagerImpl increments/decrements volatile field `inflights` Key: IGNITE-21693 URL: https://issues.apache.org/jira/browse/IGNITE-21693 Project: Ignite Issue Type: Task Reporter: Viacheslav Blinov Issue detected by SpotBugs but is also highlighted by Idea inspection. Specifically the warning reported is: {noformat} M P UPM_UNCALLED_PRIVATE_METHOD UPM: Private method org.apache.ignite.internal.pagememory.freelist.AbstractFreeList.initReusedPage(Storable, long, IoStatisticsHolder) is never called At AbstractFreeList.java:[lines 707-726] {noformat} Method `initReusedPage` is never called which can be an indicator of an issue. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21693) TxManagerImpl increments/decrements volatile field `inflights`
[ https://issues.apache.org/jira/browse/IGNITE-21693?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21693: --- Description: Issue detected by SpotBugs. Specifically the warning reported is: {noformat} H M VO_VOLATILE_INCREMENT VO: Increment of volatile field org.apache.ignite.internal.tx.impl.TxManagerImpl$TxContext.inflights in org.apache.ignite.internal.tx.impl.TxManagerImpl.lambda$addInflight$21(boolean[], UUID, TxManagerImpl$TxContext) At TxManagerImpl.java:[line 843] H M VO_VOLATILE_INCREMENT VO: Increment of volatile field org.apache.ignite.internal.tx.impl.TxManagerImpl$TxContext.inflights in org.apache.ignite.internal.tx.impl.TxManagerImpl.lambda$removeInflight$22(UUID, TxManagerImpl$TxContext) At TxManagerImpl.java:[line 858] {noformat} Increments/Decrements of volatile fields aren't atomic. If more than one thread is incrementing/decrementing the field at the same time, increments/decrements could be lost. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml was: Issue detected by SpotBugs but is also highlighted by Idea inspection. Specifically the warning reported is: {noformat} M P UPM_UNCALLED_PRIVATE_METHOD UPM: Private method org.apache.ignite.internal.pagememory.freelist.AbstractFreeList.initReusedPage(Storable, long, IoStatisticsHolder) is never called At AbstractFreeList.java:[lines 707-726] {noformat} Method `initReusedPage` is never called which can be an indicator of an issue. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml > TxManagerImpl increments/decrements volatile field `inflights` > -- > > Key: IGNITE-21693 > URL: https://issues.apache.org/jira/browse/IGNITE-21693 > Project: Ignite > Issue Type: Task >Reporter: Viacheslav Blinov >Priority: Minor > > Issue detected by SpotBugs. Specifically the warning reported is: > {noformat} > H M VO_VOLATILE_INCREMENT VO: Increment of volatile field > org.apache.ignite.internal.tx.impl.TxManagerImpl$TxContext.inflights in > org.apache.ignite.internal.tx.impl.TxManagerImpl.lambda$addInflight$21(boolean[], > UUID, TxManagerImpl$TxContext) At TxManagerImpl.java:[line 843] > H M VO_VOLATILE_INCREMENT VO: Increment of volatile field > org.apache.ignite.internal.tx.impl.TxManagerImpl$TxContext.inflights in > org.apache.ignite.internal.tx.impl.TxManagerImpl.lambda$removeInflight$22(UUID, > TxManagerImpl$TxContext) At TxManagerImpl.java:[line 858] > {noformat} > Increments/Decrements of volatile fields aren't atomic. If more than one > thread is incrementing/decrementing the field at the same time, > increments/decrements could be lost. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21692) AbstractFreeList has unused private method `initReusedPage`
[ https://issues.apache.org/jira/browse/IGNITE-21692?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21692: --- Description: Issue detected by SpotBugs but is also highlighted by Idea inspection. Specifically the warning reported is: {noformat} M P UPM_UNCALLED_PRIVATE_METHOD UPM: Private method org.apache.ignite.internal.pagememory.freelist.AbstractFreeList.initReusedPage(Storable, long, IoStatisticsHolder) is never called At AbstractFreeList.java:[lines 707-726] {noformat} Method `initReusedPage` is never called which can be an indicator of an issue. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml was: Issue detected by SpotBugs but is also highlighted by Idea inspection. Specifically the warning reported is: {noformat} M M IS2_INCONSISTENT_SYNC IS: Inconsistent synchronization of org.apache.ignite.internal.metrics.exporters.BasicMetricExporter.configuration; locked 66% of time Unsynchronized access at BasicMetricExporter.java:[line 41] {noformat} Field `configuration` are accessed in both synchronized and unsynchronized fashion. This can be a source of hard to catch bug. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml > AbstractFreeList has unused private method `initReusedPage` > --- > > Key: IGNITE-21692 > URL: https://issues.apache.org/jira/browse/IGNITE-21692 > Project: Ignite > Issue Type: Task >Reporter: Viacheslav Blinov >Priority: Major > > Issue detected by SpotBugs but is also highlighted by Idea inspection. > Specifically the warning reported is: > {noformat} > M P UPM_UNCALLED_PRIVATE_METHOD UPM: Private method > org.apache.ignite.internal.pagememory.freelist.AbstractFreeList.initReusedPage(Storable, > long, IoStatisticsHolder) is never called At AbstractFreeList.java:[lines > 707-726] > {noformat} > Method `initReusedPage` is never called which can be an indicator of an issue. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21692) AbstractFreeList has unused private method `initReusedPage`
[ https://issues.apache.org/jira/browse/IGNITE-21692?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21692: --- Priority: Minor (was: Major) > AbstractFreeList has unused private method `initReusedPage` > --- > > Key: IGNITE-21692 > URL: https://issues.apache.org/jira/browse/IGNITE-21692 > Project: Ignite > Issue Type: Task >Reporter: Viacheslav Blinov >Priority: Minor > > Issue detected by SpotBugs but is also highlighted by Idea inspection. > Specifically the warning reported is: > {noformat} > M P UPM_UNCALLED_PRIVATE_METHOD UPM: Private method > org.apache.ignite.internal.pagememory.freelist.AbstractFreeList.initReusedPage(Storable, > long, IoStatisticsHolder) is never called At AbstractFreeList.java:[lines > 707-726] > {noformat} > Method `initReusedPage` is never called which can be an indicator of an issue. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21692) AbstractFreeList has unused private method `initReusedPage`
Viacheslav Blinov created IGNITE-21692: -- Summary: AbstractFreeList has unused private method `initReusedPage` Key: IGNITE-21692 URL: https://issues.apache.org/jira/browse/IGNITE-21692 Project: Ignite Issue Type: Task Reporter: Viacheslav Blinov Issue detected by SpotBugs but is also highlighted by Idea inspection. Specifically the warning reported is: {noformat} M M IS2_INCONSISTENT_SYNC IS: Inconsistent synchronization of org.apache.ignite.internal.metrics.exporters.BasicMetricExporter.configuration; locked 66% of time Unsynchronized access at BasicMetricExporter.java:[line 41] {noformat} Field `configuration` are accessed in both synchronized and unsynchronized fashion. This can be a source of hard to catch bug. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21691) BasicMetricExporter has inconsistent synchronized access to field `configuration`
[ https://issues.apache.org/jira/browse/IGNITE-21691?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Viacheslav Blinov updated IGNITE-21691: --- Description: Issue detected by SpotBugs but is also highlighted by Idea inspection. Specifically the warning reported is: {noformat} M M IS2_INCONSISTENT_SYNC IS: Inconsistent synchronization of org.apache.ignite.internal.metrics.exporters.BasicMetricExporter.configuration; locked 66% of time Unsynchronized access at BasicMetricExporter.java:[line 41] {noformat} Field `configuration` are accessed in both synchronized and unsynchronized fashion. This can be a source of hard to catch bug. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml was: Issue detected by SpotBugs but is also highlighted by Idea inspection. Specifically the warning reported is: {noformat} M M IS2_INCONSISTENT_SYNC IS: Inconsistent synchronization of org.apache.ignite.internal.configuration.ConfigurationNode.invalid; locked 66% of time Unsynchronized access at ConfigurationNode.java:[line 138]{noformat} {noformat} M M IS2_INCONSISTENT_SYNC IS: Inconsistent synchronization of org.apache.ignite.internal.configuration.ConfigurationNode.val; locked 60% of time Unsynchronized access at ConfigurationNode.java:[line 145]{noformat} Fields `val` and `invalid` are accessed in both synchronized and unsynchronized fashion. This can be a source of hard to catch bug. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml > BasicMetricExporter has inconsistent synchronized access to field > `configuration` > - > > Key: IGNITE-21691 > URL: https://issues.apache.org/jira/browse/IGNITE-21691 > Project: Ignite > Issue Type: Task >Reporter: Viacheslav Blinov >Priority: Major > > Issue detected by SpotBugs but is also highlighted by Idea inspection. > Specifically the warning reported is: > {noformat} > M M IS2_INCONSISTENT_SYNC IS: Inconsistent synchronization of > org.apache.ignite.internal.metrics.exporters.BasicMetricExporter.configuration; > locked 66% of time Unsynchronized access at BasicMetricExporter.java:[line > 41] > {noformat} > Field `configuration` are accessed in both synchronized and unsynchronized > fashion. This can be a source of hard to catch bug. > Investigate whenever this is a false-positive and we should suppress it, or > we should make a proper fix. > At the result of investigation corresponding TODO should be removed in > spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21691) BasicMetricExporter has inconsistent synchronized access to field `configuration`
Viacheslav Blinov created IGNITE-21691: -- Summary: BasicMetricExporter has inconsistent synchronized access to field `configuration` Key: IGNITE-21691 URL: https://issues.apache.org/jira/browse/IGNITE-21691 Project: Ignite Issue Type: Task Reporter: Viacheslav Blinov Issue detected by SpotBugs but is also highlighted by Idea inspection. Specifically the warning reported is: {noformat} M M IS2_INCONSISTENT_SYNC IS: Inconsistent synchronization of org.apache.ignite.internal.configuration.ConfigurationNode.invalid; locked 66% of time Unsynchronized access at ConfigurationNode.java:[line 138]{noformat} {noformat} M M IS2_INCONSISTENT_SYNC IS: Inconsistent synchronization of org.apache.ignite.internal.configuration.ConfigurationNode.val; locked 60% of time Unsynchronized access at ConfigurationNode.java:[line 145]{noformat} Fields `val` and `invalid` are accessed in both synchronized and unsynchronized fashion. This can be a source of hard to catch bug. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21690) ConfigurationNode has inconsistent synchronized access to fields `invalid` and `val`
Viacheslav Blinov created IGNITE-21690: -- Summary: ConfigurationNode has inconsistent synchronized access to fields `invalid` and `val` Key: IGNITE-21690 URL: https://issues.apache.org/jira/browse/IGNITE-21690 Project: Ignite Issue Type: Task Reporter: Viacheslav Blinov Issue detected by SpotBugs but is also highlighted by Idea inspection. Specifically the warning reported is: {noformat} M M IS2_INCONSISTENT_SYNC IS: Inconsistent synchronization of org.apache.ignite.internal.configuration.ConfigurationNode.invalid; locked 66% of time Unsynchronized access at ConfigurationNode.java:[line 138]{noformat} {noformat} M M IS2_INCONSISTENT_SYNC IS: Inconsistent synchronization of org.apache.ignite.internal.configuration.ConfigurationNode.val; locked 60% of time Unsynchronized access at ConfigurationNode.java:[line 145]{noformat} Fields `val` and `invalid` are accessed in both synchronized and unsynchronized fashion. This can be a source of hard to catch bug. Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix. At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Assigned] (IGNITE-19744) Clean up IEP-54 leftovers
[ https://issues.apache.org/jira/browse/IGNITE-19744?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Konstantin Orlov reassigned IGNITE-19744: - Assignee: Konstantin Orlov > Clean up IEP-54 leftovers > - > > Key: IGNITE-19744 > URL: https://issues.apache.org/jira/browse/IGNITE-19744 > Project: Ignite > Issue Type: Improvement >Reporter: Konstantin Orlov >Assignee: Konstantin Orlov >Priority: Major > Labels: ignite-3 > > After migration from IEP-54 to IEP-92 binary format, there still a lot of > code working by old rules and used primarily in tests (see SchemaDescriptor > and all related classes). Let's clean up this code. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21689) Correct CI jobs to remove modernizer calls
Viacheslav Blinov created IGNITE-21689: -- Summary: Correct CI jobs to remove modernizer calls Key: IGNITE-21689 URL: https://issues.apache.org/jira/browse/IGNITE-21689 Project: Ignite Issue Type: Task Reporter: Viacheslav Blinov Assignee: Mikhail Pochatkin Before merging IGNITE-21688 we should remove modernizer usage from our CI pipelines -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21688) Remove Modernizer from gradle build
Viacheslav Blinov created IGNITE-21688: -- Summary: Remove Modernizer from gradle build Key: IGNITE-21688 URL: https://issues.apache.org/jira/browse/IGNITE-21688 Project: Ignite Issue Type: Task Reporter: Viacheslav Blinov Assignee: Viacheslav Blinov After IGNITE-21569 is implemented all existing modernizer rules will be covered by Spotbugs. Let's get rid of modernizer -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21687) Modify TC jobs to run Spotbugs checks
Viacheslav Blinov created IGNITE-21687: -- Summary: Modify TC jobs to run Spotbugs checks Key: IGNITE-21687 URL: https://issues.apache.org/jira/browse/IGNITE-21687 Project: Ignite Issue Type: Task Reporter: Viacheslav Blinov Assignee: Mikhail Pochatkin After IGNITE-21569 is merged, lets modify our TC pipeline to run spotbugs as part of it's checks. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21686) Sql. Investigate disabling back pressure on Exchange
[ https://issues.apache.org/jira/browse/IGNITE-21686?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Konstantin Orlov updated IGNITE-21686: -- Labels: ignite-3 (was: ) > Sql. Investigate disabling back pressure on Exchange > > > Key: IGNITE-21686 > URL: https://issues.apache.org/jira/browse/IGNITE-21686 > Project: Ignite > Issue Type: Improvement > Components: sql >Reporter: Konstantin Orlov >Priority: Major > Labels: ignite-3 > > In IGNITE-21668 order-preserving exchange was disabled for multinode target. > Alternative solution to the deadlock is to disable backpressure for such > exchange. In that case we can potentially save time on re-sorting, while > occupied memory will be the same. > We need to figure out if there are downsides to disabling backpressure. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21686) Sql. Investigate disabling back pressure on Exchange
Konstantin Orlov created IGNITE-21686: - Summary: Sql. Investigate disabling back pressure on Exchange Key: IGNITE-21686 URL: https://issues.apache.org/jira/browse/IGNITE-21686 Project: Ignite Issue Type: Improvement Components: sql Reporter: Konstantin Orlov In IGNITE-21668 order-preserving exchange was disabled for multinode target. Alternative solution to the deadlock is to disable backpressure for such exchange. In that case we can potentially save time on re-sorting, while occupied memory will be the same. We need to figure out if there are downsides to disabling backpressure. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (IGNITE-18757) Sql. Add arch unit tests for classes that inherited from Calcite classes.
[ https://issues.apache.org/jira/browse/IGNITE-18757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17824018#comment-17824018 ] Pavel Pereslegin commented on IGNITE-18757: --- One such check was implemented in {{SqlEngineModuleArchTest}}. > Sql. Add arch unit tests for classes that inherited from Calcite classes. > - > > Key: IGNITE-18757 > URL: https://issues.apache.org/jira/browse/IGNITE-18757 > Project: Ignite > Issue Type: Improvement > Components: sql >Reporter: Andrey Mashenkov >Priority: Major > Labels: ignite-3, tech-debt > Fix For: 3.0.0-beta2 > > > Motivation: as of now, it is easy to miss/forget to override methods, when > inherit from Calcite classes. > E.g. from time to time we forget to override methods for deriving/passing > through traits or passing shuttle. > We can use ArchUnit to make additional checks that all required methods are > overridden. > As an example, see static logger checks in ClientArchTest. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (IGNITE-21682) Remove transferFrom and transferTo from FileIo
[ https://issues.apache.org/jira/browse/IGNITE-21682?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17824016#comment-17824016 ] Roman Puchkovskiy commented on IGNITE-21682: Thanks > Remove transferFrom and transferTo from FileIo > -- > > Key: IGNITE-21682 > URL: https://issues.apache.org/jira/browse/IGNITE-21682 > Project: Ignite > Issue Type: Improvement >Reporter: Roman Puchkovskiy >Assignee: Roman Puchkovskiy >Priority: Major > Labels: ignite-3 > Fix For: 3.0.0-beta2 > > Time Spent: 20m > Remaining Estimate: 0h > > These methods are only used in tests. If we need to bring them back, we'll do > so. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21373) SQL. Get rid of the Ignite prefix in SQL operators.
[ https://issues.apache.org/jira/browse/IGNITE-21373?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Pavel Pereslegin updated IGNITE-21373: -- Fix Version/s: 3.0.0-beta2 > SQL. Get rid of the Ignite prefix in SQL operators. > --- > > Key: IGNITE-21373 > URL: https://issues.apache.org/jira/browse/IGNITE-21373 > Project: Ignite > Issue Type: Improvement > Components: sql >Reporter: Iurii Gerzhedovich >Assignee: Pavel Pereslegin >Priority: Major > Labels: ignite-3 > Fix For: 3.0.0-beta2 > > Time Spent: 2h 40m > Remaining Estimate: 0h > > Currently we have an Ignite prefix for all SQL statements for the text view > of the plane (IgniteProject, IgniteNestedLoopJoin, IgniteTableScan, > IgniteExchange, .). Let's get rid of the prefix. > Since we are generating the name as a simple class name, we need to rework > this part and introduce the ability to have a name independent of the class > name for any operator. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21685) Thin 3.0: executeColocated does not work with escaped table names
[ https://issues.apache.org/jira/browse/IGNITE-21685?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Pavel Tupitsyn updated IGNITE-21685: Description: Add the following test to *ItThinClientComputeTest*: {code:java} @Test void testExecuteColocatedEscapedTableName() { var session = client().sql().sessionBuilder().build(); session.execute(null, "CREATE TABLE \"TBL ABC\" (key INT PRIMARY KEY, val INT)"); var tableName = "TBL ABC"; client().compute().executeColocated(tableName, Tuple.create().set("key", 1), List.of(), NodeNameJob.class.getName()); } {code} It fails: {code} Caused by: java.lang.IllegalArgumentException: Fully qualified name is not expected [name=TBL ABC] at org.apache.ignite.lang.util.IgniteNameUtils.parseSimpleName(IgniteNameUtils.java:49) at org.apache.ignite.internal.table.distributed.TableManager.tableAsync(TableManager.java:1510) at org.apache.ignite.client.handler.requests.table.ClientTableGetRequest.process(ClientTableGetRequest.java:45) at org.apache.ignite.client.handler.ClientInboundMessageHandler.processOperation(ClientInboundMessageHandler.java:637) at org.apache.ignite.client.handler.ClientInboundMessageHandler.processOperation(ClientInboundMessageHandler.java:569) {code} > Thin 3.0: executeColocated does not work with escaped table names > - > > Key: IGNITE-21685 > URL: https://issues.apache.org/jira/browse/IGNITE-21685 > Project: Ignite > Issue Type: Bug > Components: compute, thin client >Affects Versions: 3.0.0-beta1 >Reporter: Pavel Tupitsyn >Assignee: Pavel Tupitsyn >Priority: Major > Labels: ignite-3 > Fix For: 3.0.0-beta2 > > > Add the following test to *ItThinClientComputeTest*: > {code:java} > @Test > void testExecuteColocatedEscapedTableName() { > var session = client().sql().sessionBuilder().build(); > session.execute(null, "CREATE TABLE \"TBL ABC\" (key INT PRIMARY KEY, > val INT)"); > var tableName = "TBL ABC"; > client().compute().executeColocated(tableName, > Tuple.create().set("key", 1), List.of(), NodeNameJob.class.getName()); > } > {code} > It fails: > {code} > Caused by: java.lang.IllegalArgumentException: Fully qualified name is not > expected [name=TBL ABC] > at > org.apache.ignite.lang.util.IgniteNameUtils.parseSimpleName(IgniteNameUtils.java:49) > at > org.apache.ignite.internal.table.distributed.TableManager.tableAsync(TableManager.java:1510) > at > org.apache.ignite.client.handler.requests.table.ClientTableGetRequest.process(ClientTableGetRequest.java:45) > at > org.apache.ignite.client.handler.ClientInboundMessageHandler.processOperation(ClientInboundMessageHandler.java:637) > at > org.apache.ignite.client.handler.ClientInboundMessageHandler.processOperation(ClientInboundMessageHandler.java:569) > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21685) Thin 3.0: executeColocated does not work with escaped table names
Pavel Tupitsyn created IGNITE-21685: --- Summary: Thin 3.0: executeColocated does not work with escaped table names Key: IGNITE-21685 URL: https://issues.apache.org/jira/browse/IGNITE-21685 Project: Ignite Issue Type: Bug Components: compute, thin client Affects Versions: 3.0.0-beta1 Reporter: Pavel Tupitsyn Assignee: Pavel Tupitsyn Fix For: 3.0.0-beta2 -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21684) Sql. Exception from a scan operation is not correctly propagated if OrderedPublisher is used.
[ https://issues.apache.org/jira/browse/IGNITE-21684?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Maksim Zhuravkov updated IGNITE-21684: -- Description: The root cause of an exception thrown from an sorted index scan operation is lost. Reproducer can be found in ItSchemaSyncSingleNodeTest::readWriteOperationAfterDroppingTargetTableIsRejected (change an index to a sorted one). {code:java} java.lang.AssertionError: Expected: a string containing "Table was dropped [table=6]" but: was null Expected :a string containing "Table was dropped [table=6]" Actual :null {code} Although a stack trace on a server includes that error: {code:java} Suppressed: java.util.concurrent.CompletionException: org.apache.ignite.internal.table.distributed.replicator.IncompatibleSchemaException: IGN-TX-12 TraceId:68590499-47c7-46a9-bd5a-d75f2090aebc Table was dropped [table=6] {code} was: Root cause of exception thrown from an index scan operation is lost, when OrderedPublisher is being used. Reproducer can be found in ItSchemaSyncSingleNodeTest::readWriteOperationAfterDroppingTargetTableIsRejected (change an index to a sorted one). {code:java} java.lang.AssertionError: Expected: a string containing "Table was dropped [table=6]" but: was null Expected :a string containing "Table was dropped [table=6]" Actual :null {code} Although a stack trace on a server includes that error: {code:java} Suppressed: java.util.concurrent.CompletionException: org.apache.ignite.internal.table.distributed.replicator.IncompatibleSchemaException: IGN-TX-12 TraceId:68590499-47c7-46a9-bd5a-d75f2090aebc Table was dropped [table=6] {code} > Sql. Exception from a scan operation is not correctly propagated if > OrderedPublisher is used. > - > > Key: IGNITE-21684 > URL: https://issues.apache.org/jira/browse/IGNITE-21684 > Project: Ignite > Issue Type: Bug > Components: sql >Reporter: Maksim Zhuravkov >Priority: Minor > Labels: ignite-3 > > The root cause of an exception thrown from an sorted index scan operation is > lost. > Reproducer can be found in > ItSchemaSyncSingleNodeTest::readWriteOperationAfterDroppingTargetTableIsRejected > (change an index to a sorted one). > {code:java} > java.lang.AssertionError: > Expected: a string containing "Table was dropped [table=6]" > but: was null > Expected :a string containing "Table was dropped [table=6]" > Actual :null > {code} > Although a stack trace on a server includes that error: > {code:java} > Suppressed: java.util.concurrent.CompletionException: > org.apache.ignite.internal.table.distributed.replicator.IncompatibleSchemaException: > IGN-TX-12 TraceId:68590499-47c7-46a9-bd5a-d75f2090aebc Table was dropped > [table=6] > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21683) Remove thread pools used for BTree destruction
[ https://issues.apache.org/jira/browse/IGNITE-21683?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Aleksandr Polovtcev updated IGNITE-21683: - Description: We have two separate executors that are used in {{GradualTaskExecutor}} for destroying Persistent and Volatile Page Memory based structures. They should probably be removed and replaced with a common pool. (was: We have two separate executors that are used in {{GradualTaskExecutor}} for destroying Persistent and Volatile Page Memory-based structures. They should probably be removed and replaced with a common pool.) > Remove thread pools used for BTree destruction > -- > > Key: IGNITE-21683 > URL: https://issues.apache.org/jira/browse/IGNITE-21683 > Project: Ignite > Issue Type: Improvement >Reporter: Aleksandr Polovtcev >Priority: Major > Labels: ignite-3 > > We have two separate executors that are used in {{GradualTaskExecutor}} for > destroying Persistent and Volatile Page Memory based structures. They should > probably be removed and replaced with a common pool. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21684) Sql. Exception from a scan operation is not correctly propagated if OrderedPublisher is used.
[ https://issues.apache.org/jira/browse/IGNITE-21684?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Maksim Zhuravkov updated IGNITE-21684: -- Description: The root cause of an exception thrown from an sorted index scan operation is lost. Reproducer can be found in ItSchemaSyncSingleNodeTest::readWriteOperationAfterDroppingTargetTableIsRejected (change a primary key index to a sorted one get such error). {code:java} java.lang.AssertionError: Expected: a string containing "Table was dropped [table=6]" but: was null Expected :a string containing "Table was dropped [table=6]" Actual :null {code} Although a stack trace on a server includes that error: {code:java} Suppressed: java.util.concurrent.CompletionException: org.apache.ignite.internal.table.distributed.replicator.IncompatibleSchemaException: IGN-TX-12 TraceId:68590499-47c7-46a9-bd5a-d75f2090aebc Table was dropped [table=6] {code} was: The root cause of an exception thrown from an sorted index scan operation is lost. Reproducer can be found in ItSchemaSyncSingleNodeTest::readWriteOperationAfterDroppingTargetTableIsRejected (change an index to a sorted one). {code:java} java.lang.AssertionError: Expected: a string containing "Table was dropped [table=6]" but: was null Expected :a string containing "Table was dropped [table=6]" Actual :null {code} Although a stack trace on a server includes that error: {code:java} Suppressed: java.util.concurrent.CompletionException: org.apache.ignite.internal.table.distributed.replicator.IncompatibleSchemaException: IGN-TX-12 TraceId:68590499-47c7-46a9-bd5a-d75f2090aebc Table was dropped [table=6] {code} > Sql. Exception from a scan operation is not correctly propagated if > OrderedPublisher is used. > - > > Key: IGNITE-21684 > URL: https://issues.apache.org/jira/browse/IGNITE-21684 > Project: Ignite > Issue Type: Bug > Components: sql >Reporter: Maksim Zhuravkov >Priority: Minor > Labels: ignite-3 > > The root cause of an exception thrown from an sorted index scan operation is > lost. > Reproducer can be found in > ItSchemaSyncSingleNodeTest::readWriteOperationAfterDroppingTargetTableIsRejected > (change a primary key index to a sorted one get such error). > {code:java} > java.lang.AssertionError: > Expected: a string containing "Table was dropped [table=6]" > but: was null > Expected :a string containing "Table was dropped [table=6]" > Actual :null > {code} > Although a stack trace on a server includes that error: > {code:java} > Suppressed: java.util.concurrent.CompletionException: > org.apache.ignite.internal.table.distributed.replicator.IncompatibleSchemaException: > IGN-TX-12 TraceId:68590499-47c7-46a9-bd5a-d75f2090aebc Table was dropped > [table=6] > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21683) Remove thread pools used for BTree destruction
[ https://issues.apache.org/jira/browse/IGNITE-21683?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Aleksandr Polovtcev updated IGNITE-21683: - Description: We have two separate executors that are used in {{GradualTaskExecutor}} for destroying Persistent and Volatile Page Memory-based structures. They should probably be removed and replaced with a common pool. (was: We have two separate executors that are used in a `GradualTaskExecutor` for destroying Persistent and Volatile Page Memory-based structures. They should probably be removed and replaced with a common pool.) > Remove thread pools used for BTree destruction > -- > > Key: IGNITE-21683 > URL: https://issues.apache.org/jira/browse/IGNITE-21683 > Project: Ignite > Issue Type: Improvement >Reporter: Aleksandr Polovtcev >Priority: Major > Labels: ignite-3 > > We have two separate executors that are used in {{GradualTaskExecutor}} for > destroying Persistent and Volatile Page Memory-based structures. They should > probably be removed and replaced with a common pool. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21684) Sql. Exception from a scan operation is not correctly propagated if OrderedPublisher is used.
[ https://issues.apache.org/jira/browse/IGNITE-21684?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Maksim Zhuravkov updated IGNITE-21684: -- Labels: ignite-3 (was: ) > Sql. Exception from a scan operation is not correctly propagated if > OrderedPublisher is used. > - > > Key: IGNITE-21684 > URL: https://issues.apache.org/jira/browse/IGNITE-21684 > Project: Ignite > Issue Type: Bug > Components: sql >Reporter: Maksim Zhuravkov >Priority: Minor > Labels: ignite-3 > > Root cause of exception thrown from an index scan operation is lost, when > OrderedPublisher is being used. > Reproducer can be found in > ItSchemaSyncSingleNodeTest::readWriteOperationAfterDroppingTargetTableIsRejected > (change an index to a sorted one). > {code:java} > java.lang.AssertionError: > Expected: a string containing "Table was dropped [table=6]" > but: was null > Expected :a string containing "Table was dropped [table=6]" > Actual :null > {code} > Although a stack trace on a server includes that error: > {code:java} > Suppressed: java.util.concurrent.CompletionException: > org.apache.ignite.internal.table.distributed.replicator.IncompatibleSchemaException: > IGN-TX-12 TraceId:68590499-47c7-46a9-bd5a-d75f2090aebc Table was dropped > [table=6] > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21684) Sql. Exception from a scan operation is not correctly propagated if OrderedPublisher is used.
Maksim Zhuravkov created IGNITE-21684: - Summary: Sql. Exception from a scan operation is not correctly propagated if OrderedPublisher is used. Key: IGNITE-21684 URL: https://issues.apache.org/jira/browse/IGNITE-21684 Project: Ignite Issue Type: Bug Components: sql Reporter: Maksim Zhuravkov Root cause of exception thrown from an index scan operation is lost, when OrderedPublisher is being used. Reproducer can be found in ItSchemaSyncSingleNodeTest::readWriteOperationAfterDroppingTargetTableIsRejected (change an index to a sorted one). {code:java} java.lang.AssertionError: Expected: a string containing "Table was dropped [table=6]" but: was null Expected :a string containing "Table was dropped [table=6]" Actual :null {code} Although a stack trace on a server includes that error: {code:java} Suppressed: java.util.concurrent.CompletionException: org.apache.ignite.internal.table.distributed.replicator.IncompatibleSchemaException: IGN-TX-12 TraceId:68590499-47c7-46a9-bd5a-d75f2090aebc Table was dropped [table=6] {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (IGNITE-21683) Remove thread pools used for BTree destruction
[ https://issues.apache.org/jira/browse/IGNITE-21683?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Aleksandr Polovtcev updated IGNITE-21683: - Description: We have two separate executors that are used in a `GradualTaskExecutor` for destroying Persistent and Volatile Page Memory-based structures. They should probably be removed and replaced with a common pool. > Remove thread pools used for BTree destruction > -- > > Key: IGNITE-21683 > URL: https://issues.apache.org/jira/browse/IGNITE-21683 > Project: Ignite > Issue Type: Improvement >Reporter: Aleksandr Polovtcev >Priority: Major > Labels: ignite-3 > > We have two separate executors that are used in a `GradualTaskExecutor` for > destroying Persistent and Volatile Page Memory-based structures. They should > probably be removed and replaced with a common pool. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (IGNITE-21683) Remove thread pools used for BTree destruction
Aleksandr Polovtcev created IGNITE-21683: Summary: Remove thread pools used for BTree destruction Key: IGNITE-21683 URL: https://issues.apache.org/jira/browse/IGNITE-21683 Project: Ignite Issue Type: Improvement Reporter: Aleksandr Polovtcev -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (IGNITE-21655) .NET: Fix method naming in Compute API
[ https://issues.apache.org/jira/browse/IGNITE-21655?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17823981#comment-17823981 ] Pavel Tupitsyn commented on IGNITE-21655: - Merged to main: cbc461d9827b0aae80266db3bfd4d05ee96669ae > .NET: Fix method naming in Compute API > -- > > Key: IGNITE-21655 > URL: https://issues.apache.org/jira/browse/IGNITE-21655 > Project: Ignite > Issue Type: Improvement > Components: compute, platforms, thin client >Affects Versions: 3.0.0-beta1 >Reporter: Pavel Tupitsyn >Assignee: Pavel Tupitsyn >Priority: Major > Labels: .NET, ignite-3 > Fix For: 3.0.0-beta2 > > Time Spent: 20m > Remaining Estimate: 0h > > Async methods (returning Task) should have *Async* suffix: > * Task> Submit > * Task> SubmitColocated > * Task> SubmitColocated -- This message was sent by Atlassian Jira (v8.20.10#820010)