[jira] [Commented] (IGNITE-21637) Possible integer overflow in page eviction trackers

2024-03-06 Thread Ilya Shishkov (Jira)


[ 
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

2024-03-06 Thread Ignite TC Bot (Jira)


[ 
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

2024-03-06 Thread Pavel Pereslegin (Jira)


 [ 
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

2024-03-06 Thread Pavel Pereslegin (Jira)


 [ 
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

2024-03-06 Thread Pavel Pereslegin (Jira)


 [ 
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

2024-03-06 Thread Pavel Pereslegin (Jira)


 [ 
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

2024-03-06 Thread Pavel Pereslegin (Jira)
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

2024-03-06 Thread Pavel Tupitsyn (Jira)


 [ 
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

2024-03-06 Thread Maksim Zhuravkov (Jira)


 [ 
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

2024-03-06 Thread Maksim Zhuravkov (Jira)


[ 
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

2024-03-06 Thread Maksim Zhuravkov (Jira)


[ 
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.

2024-03-06 Thread Maksim Zhuravkov (Jira)


 [ 
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.

2024-03-06 Thread Maksim Zhuravkov (Jira)


 [ 
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.

2024-03-06 Thread Maksim Zhuravkov (Jira)


 [ 
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.

2024-03-06 Thread Maksim Zhuravkov (Jira)
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.

2024-03-06 Thread Maksim Zhuravkov (Jira)


 [ 
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

2024-03-06 Thread Oleg Valuyskiy (Jira)


 [ 
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

2024-03-06 Thread Aleksandr (Jira)


 [ 
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

2024-03-06 Thread Aleksandr (Jira)
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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`

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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`

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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`

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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`

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)
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

2024-03-06 Thread Viacheslav Blinov (Jira)
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)
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

2024-03-06 Thread Viacheslav Blinov (Jira)
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)
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

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)
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`

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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`

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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`

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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`

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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`

2024-03-06 Thread Viacheslav Blinov (Jira)
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`

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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`

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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`

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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`

2024-03-06 Thread Viacheslav Blinov (Jira)
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`

2024-03-06 Thread Viacheslav Blinov (Jira)


 [ 
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`

2024-03-06 Thread Viacheslav Blinov (Jira)
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`

2024-03-06 Thread Viacheslav Blinov (Jira)
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

2024-03-06 Thread Konstantin Orlov (Jira)


 [ 
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

2024-03-06 Thread Viacheslav Blinov (Jira)
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

2024-03-06 Thread Viacheslav Blinov (Jira)
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

2024-03-06 Thread Viacheslav Blinov (Jira)
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

2024-03-06 Thread Konstantin Orlov (Jira)


 [ 
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

2024-03-06 Thread Konstantin Orlov (Jira)
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.

2024-03-06 Thread Pavel Pereslegin (Jira)


[ 
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

2024-03-06 Thread Roman Puchkovskiy (Jira)


[ 
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.

2024-03-06 Thread Pavel Pereslegin (Jira)


 [ 
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

2024-03-06 Thread Pavel Tupitsyn (Jira)


 [ 
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

2024-03-06 Thread Pavel Tupitsyn (Jira)
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.

2024-03-06 Thread Maksim Zhuravkov (Jira)


 [ 
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

2024-03-06 Thread Aleksandr Polovtcev (Jira)


 [ 
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.

2024-03-06 Thread Maksim Zhuravkov (Jira)


 [ 
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

2024-03-06 Thread Aleksandr Polovtcev (Jira)


 [ 
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.

2024-03-06 Thread Maksim Zhuravkov (Jira)


 [ 
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.

2024-03-06 Thread Maksim Zhuravkov (Jira)
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

2024-03-06 Thread Aleksandr Polovtcev (Jira)


 [ 
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

2024-03-06 Thread Aleksandr Polovtcev (Jira)
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

2024-03-06 Thread Pavel Tupitsyn (Jira)


[ 
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)


  1   2   >