[jira] [Updated] (IGNITE-18043) Replaceable deadlock prevention mechanism

2022-12-28 Thread Denis Chudov (Jira)


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

Denis Chudov updated IGNITE-18043:
--
Reviewer: Vladislav Pyatkov  (was: Sergey Uttsel)

> Replaceable deadlock prevention mechanism
> -
>
> Key: IGNITE-18043
> URL: https://issues.apache.org/jira/browse/IGNITE-18043
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Vladislav Pyatkov
>Assignee: Denis Chudov
>Priority: Major
>  Labels: ignite-3
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> *Motivation:*
> We have an embedded deadlock prevention strategy (presently, it is 
> _Wait-Die_). Although, [the original 
> paper|https://dl.acm.org/doi/pdf/10.1145/320251.320260] about deadlock 
> prevention contains another two strategies: _priorities_ and _Wound-Wait_. 
> Also, the mechanism should give a possibility to not use any strategy to 
> prevent deadlock.
> All told, above shows we need to separate the prevention strategy in dedicate 
> interface (which even has one implementation _Wait-Die_).  Another 
> implementation will be released by necessary.
> *Definition of Done:*
> A deadlock resolution strategy (_ResolutionStrategy_) has to be extracted to 
> interface, which parametrizes _LockManager_. Wait-Die strategy 
> (_WaitDieLockResolutionStrategy_) will be the only one implementation of 
> _ResolutionStrategy_.
> _HeapLockManager_ should be parametrized by _WaitDieLockResolutionStrategy_.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-18115) Populate DistributionZoneManager with MetaStorage listeners to logical topology events

2022-12-28 Thread Sergey Uttsel (Jira)


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

Sergey Uttsel commented on IGNITE-18115:


Also at this ticket we decide to rework exception handling in 
DistributionZoneManager and actions on DistributionZoneManager#start

> Populate DistributionZoneManager with MetaStorage listeners to logical 
> topology events
> --
>
> Key: IGNITE-18115
> URL: https://issues.apache.org/jira/browse/IGNITE-18115
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Alexander Lapin
>Assignee: Sergey Uttsel
>Priority: Major
>  Labels: ignite-3
>  Time Spent: 3h 50m
>  Remaining Estimate: 0h
>
> h3. Motivation
> As was mentioned in https://issues.apache.org/jira/browse/IGNITE-18087 In 
> order to calculate dataNodes for each distribution zone it's required to have 
> proper actor that will listen to:
>  * Logical topology events.
>  * Distribution zone reconfiguration events (adding, updating, removing).
>  * Distribution zone processing enabling/disabling.
> and properly react to such events. As you can see from IGNITE-18087 we have 
> two phase reaction on logical topology events. During the first phase we 
> update logicalTopology and logicalTopologyVersion in meta storage and don't 
> trigger dataNodes recalculation directly. Why? Because it's simpler - after 
> inserting logical topology inside meta storage we mutually linearize topology 
> events and distribution zone modification events with the help of meta 
> storage revision.
> Thus, given ticket is about reaction to meta storage logical topology events. 
> So it's required to register corresponding watch on start with a handler that 
> will recalculate dataNodes and update given ms key with the help of invoke. 
> Use revision based condition like we do it in rebalance in order to prevent 
> concurrent and stale updates.
> h3. Definition of Done
>  * DataNodes keys in meta storage are updated for each distribution zone 
> along with triggerRevision helper key as a result of logical topology key 
> updates in meta storage.
> h3. *Implementation Notes*
> Required logic is described above in Motivation section. Two new keys in meta 
> storage (but not configuration) are expected.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-18043) Replaceable deadlock prevention mechanism

2022-12-28 Thread Vladislav Pyatkov (Jira)


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

Vladislav Pyatkov commented on IGNITE-18043:


Merged 3ac9af1090976b5588944820caa33a9118b10432

> Replaceable deadlock prevention mechanism
> -
>
> Key: IGNITE-18043
> URL: https://issues.apache.org/jira/browse/IGNITE-18043
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Vladislav Pyatkov
>Assignee: Denis Chudov
>Priority: Major
>  Labels: ignite-3
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> *Motivation:*
> We have an embedded deadlock prevention strategy (presently, it is 
> _Wait-Die_). Although, [the original 
> paper|https://dl.acm.org/doi/pdf/10.1145/320251.320260] about deadlock 
> prevention contains another two strategies: _priorities_ and _Wound-Wait_. 
> Also, the mechanism should give a possibility to not use any strategy to 
> prevent deadlock.
> All told, above shows we need to separate the prevention strategy in dedicate 
> interface (which even has one implementation _Wait-Die_).  Another 
> implementation will be released by necessary.
> *Definition of Done:*
> A deadlock resolution strategy (_ResolutionStrategy_) has to be extracted to 
> interface, which parametrizes _LockManager_. Wait-Die strategy 
> (_WaitDieLockResolutionStrategy_) will be the only one implementation of 
> _ResolutionStrategy_.
> _HeapLockManager_ should be parametrized by _WaitDieLockResolutionStrategy_.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] (IGNITE-18458) Sql DML on non-existent table raise NPE

2022-12-28 Thread Ilhom Ulmasov (Jira)


[ https://issues.apache.org/jira/browse/IGNITE-18458 ]


Ilhom Ulmasov deleted comment on IGNITE-18458:


was (Author: JIRAUSER298475):
[~alexpl] could you, please, take a look on the ticket?

> Sql DML on non-existent table raise NPE
> ---
>
> Key: IGNITE-18458
> URL: https://issues.apache.org/jira/browse/IGNITE-18458
> Project: Ignite
>  Issue Type: Bug
>  Components: sql
>Affects Versions: 2.14
>Reporter: Ilhom Ulmasov
>Assignee: Ilhom Ulmasov
>Priority: Minor
>  Labels: calcite, ise
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> DML operation (INSERT, UPDATE, DELETE, MERGE) raise NullPointerException on 
> Calcite engine, if operation is made on non-existent table.
> Steps to reproduce.
>  * Connect to DB by using JDBC driver
>  * Execute any DML operation on non-existent table. For example 
> {code:java}
> INSERT INTO PERSONBLABLABLA(ID, NAME, AGE) VALUES(1, 'JOHN', 3){code}
>  * Exception message *Failed to validate query. 
> java.lang.NullPointerException* will be returned



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-18458) Sql DML on non-existent table raise NPE

2022-12-28 Thread Evgeny Stanilovsky (Jira)


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

Evgeny Stanilovsky updated IGNITE-18458:

Labels: calcite calcite3-required ise  (was: calcite ise)

> Sql DML on non-existent table raise NPE
> ---
>
> Key: IGNITE-18458
> URL: https://issues.apache.org/jira/browse/IGNITE-18458
> Project: Ignite
>  Issue Type: Bug
>  Components: sql
>Affects Versions: 2.14
>Reporter: Ilhom Ulmasov
>Assignee: Ilhom Ulmasov
>Priority: Minor
>  Labels: calcite, calcite3-required, ise
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> DML operation (INSERT, UPDATE, DELETE, MERGE) raise NullPointerException on 
> Calcite engine, if operation is made on non-existent table.
> Steps to reproduce.
>  * Connect to DB by using JDBC driver
>  * Execute any DML operation on non-existent table. For example 
> {code:java}
> INSERT INTO PERSONBLABLABLA(ID, NAME, AGE) VALUES(1, 'JOHN', 3){code}
>  * Exception message *Failed to validate query. 
> java.lang.NullPointerException* will be returned



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-18468) ItSecondaryIndexTest testNullCondition[1-3] tests unstable.

2022-12-28 Thread Yury Gerzhedovich (Jira)


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

Yury Gerzhedovich updated IGNITE-18468:
---
Priority: Blocker  (was: Major)

> ItSecondaryIndexTest testNullCondition[1-3] tests unstable.
> ---
>
> Key: IGNITE-18468
> URL: https://issues.apache.org/jira/browse/IGNITE-18468
> Project: Ignite
>  Issue Type: Bug
>  Components: general
>Reporter: Evgeny Stanilovsky
>Priority: Blocker
>  Labels: ignite-3
> Fix For: 3.0.0-beta1
>
> Attachments: image (11).png
>
>
> ItSecondaryIndexTest unstable tests testNullCondition[1-3]
> Can be reproduced locally 
> !image (11).png!
> Seems all tests that contains scenario like :
> create table ...
> create index ..
> insert into table values ...
> select some_preconditions <- touch index plan
> are exposed.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (IGNITE-18473) Prevent CdcKafkaReplicationAppsTest from stopping a build

2022-12-28 Thread Ilya Shishkov (Jira)


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

Ilya Shishkov reassigned IGNITE-18473:
--

Assignee: Ilya Shishkov

> Prevent CdcKafkaReplicationAppsTest from stopping a build
> -
>
> Key: IGNITE-18473
> URL: https://issues.apache.org/jira/browse/IGNITE-18473
> Project: Ignite
>  Issue Type: Test
>Reporter: Ilya Shishkov
>Assignee: Ilya Shishkov
>Priority: Minor
>  Labels: IEP-59, ise
>
> CdcKafkaReplicationAppsTest stops JVM with exit code 255 which causes full 
> build stop [1, 2].
> Build log contains such lines:
> {code}
> [21:08:45] :   [Step 3/3] [2022-12-27T21:08:45,376][INFO 
> ][cdc-shutdown-hook][] Stopping Change Data Capture service instance
> ...
> [21:08:46]E:   [Step 3/3] Process exited with code 255 (Step: Run Extension's 
> tests (Maven))
> {code}
> And such error is in log:
> {code}
> java.lang.InterruptedException
>   at java.lang.Object.wait(Native Method)
>   at java.lang.Thread.join(Thread.java:1257)
>   at java.lang.Thread.join(Thread.java:1331)
>   at 
> org.apache.ignite.startup.cmdline.CdcCommandLineStartup.main(CdcCommandLineStartup.java:95)
>   at 
> org.apache.ignite.cdc.kafka.CdcKafkaReplicationAppsTest.lambda$igniteToKafka$b1982e5$1(CdcKafkaReplicationAppsTest.java:126)
>   at org.apache.ignite.internal.util.lang.RunnableX.run(RunnableX.java:37)
>   at 
> org.apache.ignite.testframework.GridTestUtils.lambda$runAsync$3(GridTestUtils.java:1176)
>   at 
> org.apache.ignite.testframework.GridTestUtils.lambda$runAsync$4(GridTestUtils.java:1232)
>   at 
> org.apache.ignite.testframework.GridTestUtils$7.call(GridTestUtils.java:1573)
>   at 
> org.apache.ignite.testframework.GridTestThread.run(GridTestThread.java:88)
> Failed to run CDC: null
> {code}
> Links:
> # 
> https://ci.ignite.apache.org/buildConfiguration/IgniteExtensions_Tests_Cdc/6978239?hideProblemsFromDependencies=false&hideTestsFromDependencies=false&expandBuildProblemsSection=true
> # 
> https://ci2.ignite.apache.org/buildConfiguration/IgniteExtensions_Tests_Cdc/6970356?hideProblemsFromDependencies=false&hideTestsFromDependencies=false&expandBuildProblemsSection=true



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-18473) Prevent CdcKafkaReplicationAppsTest from stopping a build

2022-12-28 Thread Ilya Shishkov (Jira)


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

Ilya Shishkov updated IGNITE-18473:
---
Component/s: extensions

> Prevent CdcKafkaReplicationAppsTest from stopping a build
> -
>
> Key: IGNITE-18473
> URL: https://issues.apache.org/jira/browse/IGNITE-18473
> Project: Ignite
>  Issue Type: Test
>  Components: extensions
>Reporter: Ilya Shishkov
>Assignee: Ilya Shishkov
>Priority: Minor
>  Labels: IEP-59, ise
>
> CdcKafkaReplicationAppsTest stops JVM with exit code 255 which causes full 
> build stop [1, 2].
> Build log contains such lines:
> {code}
> [21:08:45] :   [Step 3/3] [2022-12-27T21:08:45,376][INFO 
> ][cdc-shutdown-hook][] Stopping Change Data Capture service instance
> ...
> [21:08:46]E:   [Step 3/3] Process exited with code 255 (Step: Run Extension's 
> tests (Maven))
> {code}
> And such error is in log:
> {code}
> java.lang.InterruptedException
>   at java.lang.Object.wait(Native Method)
>   at java.lang.Thread.join(Thread.java:1257)
>   at java.lang.Thread.join(Thread.java:1331)
>   at 
> org.apache.ignite.startup.cmdline.CdcCommandLineStartup.main(CdcCommandLineStartup.java:95)
>   at 
> org.apache.ignite.cdc.kafka.CdcKafkaReplicationAppsTest.lambda$igniteToKafka$b1982e5$1(CdcKafkaReplicationAppsTest.java:126)
>   at org.apache.ignite.internal.util.lang.RunnableX.run(RunnableX.java:37)
>   at 
> org.apache.ignite.testframework.GridTestUtils.lambda$runAsync$3(GridTestUtils.java:1176)
>   at 
> org.apache.ignite.testframework.GridTestUtils.lambda$runAsync$4(GridTestUtils.java:1232)
>   at 
> org.apache.ignite.testframework.GridTestUtils$7.call(GridTestUtils.java:1573)
>   at 
> org.apache.ignite.testframework.GridTestThread.run(GridTestThread.java:88)
> Failed to run CDC: null
> {code}
> Links:
> # 
> https://ci.ignite.apache.org/buildConfiguration/IgniteExtensions_Tests_Cdc/6978239?hideProblemsFromDependencies=false&hideTestsFromDependencies=false&expandBuildProblemsSection=true
> # 
> https://ci2.ignite.apache.org/buildConfiguration/IgniteExtensions_Tests_Cdc/6970356?hideProblemsFromDependencies=false&hideTestsFromDependencies=false&expandBuildProblemsSection=true



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-18458) Sql DML on non-existent table raise NPE

2022-12-28 Thread Ilhom Ulmasov (Jira)


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

Ilhom Ulmasov commented on IGNITE-18458:


[~alexpl] could you, please, take a look on the ticket?

> Sql DML on non-existent table raise NPE
> ---
>
> Key: IGNITE-18458
> URL: https://issues.apache.org/jira/browse/IGNITE-18458
> Project: Ignite
>  Issue Type: Bug
>  Components: sql
>Affects Versions: 2.14
>Reporter: Ilhom Ulmasov
>Assignee: Ilhom Ulmasov
>Priority: Minor
>  Labels: calcite, calcite3-required, ise
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> DML operation (INSERT, UPDATE, DELETE, MERGE) raise NullPointerException on 
> Calcite engine, if operation is made on non-existent table.
> Steps to reproduce.
>  * Connect to DB by using JDBC driver
>  * Execute any DML operation on non-existent table. For example 
> {code:java}
> INSERT INTO PERSONBLABLABLA(ID, NAME, AGE) VALUES(1, 'JOHN', 3){code}
>  * Exception message *Failed to validate query. 
> java.lang.NullPointerException* will be returned



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (IGNITE-18458) Sql DML on non-existent table raise NPE

2022-12-28 Thread Ilhom Ulmasov (Jira)


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

Ilhom Ulmasov edited comment on IGNITE-18458 at 12/28/22 10:04 AM:
---

[~alexpl] could you, please, take a look on the PR?


was (Author: JIRAUSER298475):
[~alexpl] could you, please, take a look on the ticket?

> Sql DML on non-existent table raise NPE
> ---
>
> Key: IGNITE-18458
> URL: https://issues.apache.org/jira/browse/IGNITE-18458
> Project: Ignite
>  Issue Type: Bug
>  Components: sql
>Affects Versions: 2.14
>Reporter: Ilhom Ulmasov
>Assignee: Ilhom Ulmasov
>Priority: Minor
>  Labels: calcite, calcite3-required, ise
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> DML operation (INSERT, UPDATE, DELETE, MERGE) raise NullPointerException on 
> Calcite engine, if operation is made on non-existent table.
> Steps to reproduce.
>  * Connect to DB by using JDBC driver
>  * Execute any DML operation on non-existent table. For example 
> {code:java}
> INSERT INTO PERSONBLABLABLA(ID, NAME, AGE) VALUES(1, 'JOHN', 3){code}
>  * Exception message *Failed to validate query. 
> java.lang.NullPointerException* will be returned



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (IGNITE-18458) Sql DML on non-existent table raise NPE

2022-12-28 Thread Ilhom Ulmasov (Jira)


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

Ilhom Ulmasov edited comment on IGNITE-18458 at 12/28/22 10:07 AM:
---

[~alex_pl] could you, please, take a look on the PR?


was (Author: JIRAUSER298475):
[~alexpl] could you, please, take a look on the PR?

> Sql DML on non-existent table raise NPE
> ---
>
> Key: IGNITE-18458
> URL: https://issues.apache.org/jira/browse/IGNITE-18458
> Project: Ignite
>  Issue Type: Bug
>  Components: sql
>Affects Versions: 2.14
>Reporter: Ilhom Ulmasov
>Assignee: Ilhom Ulmasov
>Priority: Minor
>  Labels: calcite, calcite3-required, ise
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> DML operation (INSERT, UPDATE, DELETE, MERGE) raise NullPointerException on 
> Calcite engine, if operation is made on non-existent table.
> Steps to reproduce.
>  * Connect to DB by using JDBC driver
>  * Execute any DML operation on non-existent table. For example 
> {code:java}
> INSERT INTO PERSONBLABLABLA(ID, NAME, AGE) VALUES(1, 'JOHN', 3){code}
>  * Exception message *Failed to validate query. 
> java.lang.NullPointerException* will be returned



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-18480) Choose a good default for RaftConfigurationSchema.rpcInstallSnapshotTimeout

2022-12-28 Thread Roman Puchkovskiy (Jira)
Roman Puchkovskiy created IGNITE-18480:
--

 Summary: Choose a good default for 
RaftConfigurationSchema.rpcInstallSnapshotTimeout
 Key: IGNITE-18480
 URL: https://issues.apache.org/jira/browse/IGNITE-18480
 Project: Ignite
  Issue Type: Improvement
Reporter: Roman Puchkovskiy


In JRaft, rpcInstallSnapshotTimeout default is 5 minutes. A careful 
consideration should be taken: should we increase it? As 5 minutes could be too 
little for large partitions.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-18467) Sql. RexLiteral cache work incorrect for dynamic parameters in case nested function

2022-12-28 Thread Evgeny Stanilovsky (Jira)


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

Evgeny Stanilovsky updated IGNITE-18467:

Ignite Flags:   (was: Docs Required,Release Notes Required)

> Sql. RexLiteral cache work incorrect for dynamic parameters in case nested 
> function 
> 
>
> Key: IGNITE-18467
> URL: https://issues.apache.org/jira/browse/IGNITE-18467
> Project: Ignite
>  Issue Type: Bug
>  Components: sql
>Reporter: Yury Gerzhedovich
>Assignee: Yury Gerzhedovich
>Priority: Major
>  Labels: ignite-3
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Type of dynamic parameters don't participate in forming cache key in case 
> nested function.
> It could be checked by the two queries in sequentially:
> assertQuery("SELECT UPPER(TYPEOF( ? 
> )").withParams(1).returns("INTEGER").check();
> assertQuery("SELECT UPPER(TYPEOF( ? 
> )").withParams(1d).returns("DOUBLE").check();



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (IGNITE-18470) Exception handling for DistributionZoneManager in DdlCommandHandler.

2022-12-28 Thread Sergey Uttsel (Jira)


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

Sergey Uttsel reassigned IGNITE-18470:
--

Assignee: Sergey Uttsel

> Exception handling for DistributionZoneManager in DdlCommandHandler.
> 
>
> Key: IGNITE-18470
> URL: https://issues.apache.org/jira/browse/IGNITE-18470
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Sergey Uttsel
>Assignee: Sergey Uttsel
>Priority: Major
>  Labels: ignite-3
>
> h3. Motivation
> Currently DdlCommandHandler handles DistributionZoneAlreadyExistsException 
> and DistributionZoneNotFoundException incorrectly because it wrapped into 
> ConfigurationChangeException. Seems that they are wrapped because they are 
> checked exceptions. There are no tests for it.
> Also methods of DistributionZoneManager throw other exceptions.
> DistributionZoneManager#createZone:
> # return future which is completed with ConfigurationChangeException (caused 
> by DistributionZoneAlreadyExistsException and 
> DistributionZoneNotFoundException)
> # throws NullPointerException if the parameter of method is null.
> # NodeStoppingException If the node is stopping.
> DistributionZoneManager#dropZone:
> # return future which is completed with ConfigurationChangeException (caused 
> by DistributionZoneNotFoundException)
> # throws NullPointerException if the parameter of method is null.
> # NodeStoppingException If the node is stopping.
> DistributionZoneManager#alterZone also throws these exception, but it is not 
> used in DdlCommandHandler now.
> h3. Definition of Done
> DdlCommandHandler handles all exception produced by methods of 
> DistributionZoneManager.
> h3. Implementation notes
> # createZone, alterZone, dropZone must don't wrap NodeStoppingException.
> # Need to check if we can unwrap DistributionZoneAlreadyExistsException and 
> DistributionZoneNotFoundException from ConfigurationChangeException.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-18414) SQL. Cannot use BigInteger class as parameters for query

2022-12-28 Thread Evgeny Stanilovsky (Jira)


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

Evgeny Stanilovsky updated IGNITE-18414:

Description: 
imple broken scenario looks as
{code:java}
assertQuery("SELECT typeof( ? 
)").withParams(BigInteger.valueOf(1)).returns(toSqlType(NUMBER)).check();{code}
In the case we have the following error:
{code:java}
org.opentest4j.AssertionFailedError: Collections are not equal (position 0):
Expected: [NUMBER]
Actual:   [RecordType()] {code}

Let's use NUMERIC SQL type for BigInteger.

I check a bit more and found strange in some cases:
1. assertQuery("SELECT UPPER(TYPEOF(? + ?))").withParams(1, 1d) : INTEGER
2. assertQuery("SELECT UPPER(TYPEOF(? + ?))").withParams(1d, 1) : DOUBLE ??? is 
it ok
3. assertQuery("SELECT UPPER(TYPEOF(?::FLOAT + ?))").withParams(1, 1) : FLOAT
4. assertQuery("SELECT UPPER(TYPEOF(? + ?::DOUBLE))").withParams(1, 1d) : 
DOUBLE ??? change from 1 only by cast - changes return, is it ok  
5. assertQuery("SELECT UPPER(TYPEOF(?::FLOAT + ?))").withParams(1, 1d) : FLOAT 
??? i expect double here.

  was:
imple broken scenario looks as
{code:java}
assertQuery("SELECT typeof( ? 
)").withParams(BigInteger.valueOf(1)).returns(toSqlType(NUMBER)).check();{code}
In the case we have the following error:
{code:java}
org.opentest4j.AssertionFailedError: Collections are not equal (position 0):
Expected: [NUMBER]
Actual:   [RecordType()] {code}

Let's use NUMERIC SQL type for BigInteger.


> SQL. Cannot use BigInteger class as parameters for query
> 
>
> Key: IGNITE-18414
> URL: https://issues.apache.org/jira/browse/IGNITE-18414
> Project: Ignite
>  Issue Type: Bug
>  Components: sql
>Reporter: Yury Gerzhedovich
>Priority: Major
>  Labels: ignite-3
>
> imple broken scenario looks as
> {code:java}
> assertQuery("SELECT typeof( ? 
> )").withParams(BigInteger.valueOf(1)).returns(toSqlType(NUMBER)).check();{code}
> In the case we have the following error:
> {code:java}
> org.opentest4j.AssertionFailedError: Collections are not equal (position 0):
> Expected: [NUMBER]
> Actual:   [RecordType()] {code}
> Let's use NUMERIC SQL type for BigInteger.
> I check a bit more and found strange in some cases:
> 1. assertQuery("SELECT UPPER(TYPEOF(? + ?))").withParams(1, 1d) : INTEGER
> 2. assertQuery("SELECT UPPER(TYPEOF(? + ?))").withParams(1d, 1) : DOUBLE ??? 
> is it ok
> 3. assertQuery("SELECT UPPER(TYPEOF(?::FLOAT + ?))").withParams(1, 1) : FLOAT
> 4. assertQuery("SELECT UPPER(TYPEOF(? + ?::DOUBLE))").withParams(1, 1d) : 
> DOUBLE ??? change from 1 only by cast - changes return, is it ok  
> 5. assertQuery("SELECT UPPER(TYPEOF(?::FLOAT + ?))").withParams(1, 1d) : 
> FLOAT ??? i expect double here.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-18481) Add a mechanism to provide integration tests with all storage engines

2022-12-28 Thread Roman Puchkovskiy (Jira)
Roman Puchkovskiy created IGNITE-18481:
--

 Summary: Add a mechanism to provide integration tests with all 
storage engines
 Key: IGNITE-18481
 URL: https://issues.apache.org/jira/browse/IGNITE-18481
 Project: Ignite
  Issue Type: Improvement
Reporter: Roman Puchkovskiy


Currently, if we want to test something for all storage engines that we 
support, we hard-code the list of engines. This has a risk that, if we add a 
new storage engine, we forget to add it to the list of tested engines, so it 
remains untested.

Here are some ideas:
 # Use service loaders to find the storage engines. This has a drawback of 
implicitness, that is, if the mechanism fails to find an engine, we might miss 
that unfortunate event, and some engine might become untested.
 # Use a centrally-maintained hard-coded list of all storage engines. The 
drawback is that we might forget to add a new engine.
 # Combination of both. Add some automagic facilities that will find the 
storage engines using service loaders (and supply them to tests), but also 
maintain a hand-crafted list of all production storage engines, and add a test 
that makes sure that the 2 mechanisms yield same results. This approach allows 
us to use automagic, but also have explicitness of hard-coding.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-18482) Calcite. Incorrect issue link in test_not_distinct_from.test_ignore

2022-12-28 Thread Evgeny Stanilovsky (Jira)
Evgeny Stanilovsky created IGNITE-18482:
---

 Summary: Calcite. Incorrect issue link in 
test_not_distinct_from.test_ignore
 Key: IGNITE-18482
 URL: https://issues.apache.org/jira/browse/IGNITE-18482
 Project: Ignite
  Issue Type: Bug
  Components: sql
Affects Versions: 2.14
Reporter: Evgeny Stanilovsky


Test [1] has incorrect *Ignore* link. If it`s talking about SEQUENCE syntax, 
than proper link would be [2] 
[1] src/test/sql/join/test_not_distinct_from.test_ignore
[2] https://issues.apache.org/jira/browse/IGNITE-18444

[~ivandasch] [~alex_pl] can you take a look on it plz? 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-18247) .NET: Thin 3.0: LINQ: Operators and functions

2022-12-28 Thread Alexandr Shapkin (Jira)


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

Alexandr Shapkin commented on IGNITE-18247:
---

[~ptupitsyn] looks good to me. 

> .NET: Thin 3.0: LINQ: Operators and functions
> -
>
> Key: IGNITE-18247
> URL: https://issues.apache.org/jira/browse/IGNITE-18247
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms, thin client
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: .NET, LINQ, ignite-3
> Fix For: 3.0.0-beta2
>
>
> Implement support for operators and functions in LINQ:
> * Logic and arithmetic: ! + - * / = != %
> * String functions: ToLower, ToUpper, Trim, Contains, etc (see 
> *MethodVisitor*)
> * Date functions (see *MethodVisitor*)
> * Math (Abs, Exp, Log, Pow, etc - see *MethodVisitor*)
> * Regex



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-18459) [ducktests] Run extra setup script on all docker nodes

2022-12-28 Thread Ivan Daschinsky (Jira)


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

Ivan Daschinsky updated IGNITE-18459:
-
Ignite Flags:   (was: Docs Required,Release Notes Required)

> [ducktests] Run extra setup script on all docker nodes
> --
>
> Key: IGNITE-18459
> URL: https://issues.apache.org/jira/browse/IGNITE-18459
> Project: Ignite
>  Issue Type: Test
>Reporter: Sergey Korotkov
>Assignee: Sergey Korotkov
>Priority: Minor
>  Labels: ducktests
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> It's needed say if some extra python packages need to be installed on all 
> nodes.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-18459) [ducktests] Run extra setup script on all docker nodes

2022-12-28 Thread Ivan Daschinsky (Jira)


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

Ivan Daschinsky updated IGNITE-18459:
-
Fix Version/s: 2.15

> [ducktests] Run extra setup script on all docker nodes
> --
>
> Key: IGNITE-18459
> URL: https://issues.apache.org/jira/browse/IGNITE-18459
> Project: Ignite
>  Issue Type: Test
>Reporter: Sergey Korotkov
>Assignee: Sergey Korotkov
>Priority: Minor
>  Labels: ducktests
> Fix For: 2.15
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> It's needed say if some extra python packages need to be installed on all 
> nodes.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-18460) [ducktests] Bump python packages and LATEST ignite versions

2022-12-28 Thread Ivan Daschinsky (Jira)


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

Ivan Daschinsky updated IGNITE-18460:
-
Ignite Flags:   (was: Docs Required,Release Notes Required)

> [ducktests] Bump python packages and LATEST ignite versions
> ---
>
> Key: IGNITE-18460
> URL: https://issues.apache.org/jira/browse/IGNITE-18460
> Project: Ignite
>  Issue Type: Test
>Reporter: Sergey Korotkov
>Assignee: Sergey Korotkov
>Priority: Minor
>  Labels: ducktests
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Update version of pytest and ducktape packages.
> Update LATEST ignite version upto 2.14.0



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-18460) [ducktests] Bump python packages and LATEST ignite versions

2022-12-28 Thread Ivan Daschinsky (Jira)


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

Ivan Daschinsky updated IGNITE-18460:
-
Fix Version/s: 2.15

> [ducktests] Bump python packages and LATEST ignite versions
> ---
>
> Key: IGNITE-18460
> URL: https://issues.apache.org/jira/browse/IGNITE-18460
> Project: Ignite
>  Issue Type: Test
>Reporter: Sergey Korotkov
>Assignee: Sergey Korotkov
>Priority: Minor
>  Labels: ducktests
> Fix For: 2.15
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Update version of pytest and ducktape packages.
> Update LATEST ignite version upto 2.14.0



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (IGNITE-18451) Node stop may hang if a Raft service is not started yet

2022-12-28 Thread Roman Puchkovskiy (Jira)


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

Roman Puchkovskiy reassigned IGNITE-18451:
--

Assignee: Roman Puchkovskiy

> Node stop may hang if a Raft service is not started yet
> ---
>
> Key: IGNITE-18451
> URL: https://issues.apache.org/jira/browse/IGNITE-18451
> Project: Ignite
>  Issue Type: Bug
>Reporter: Roman Puchkovskiy
>Assignee: Roman Puchkovskiy
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>
> # Start and init a cluster of 3 nodes
>  # Via node 0, create a table with 3 replicas
>  # Do some stuff
>  # Stop the cluster
> The cluster cannot be stoppled, stop of node 2 seems to hang forever. There 
> is a thread:
> "%itrst_tsimwkpn_2%JRaft-FSMCaller-Disruptor-_stripe_3-0" #253053 daemon 
> prio=5 os_prio=0 cpu=0,59ms elapsed=1169,99s tid=0x7fb4867e3000 
> nid=0xa1668 waiting on condition  [0x7fb4832f]
>    java.lang.Thread.State: WAITING (parking)
>     at jdk.internal.misc.Unsafe.park(java.base@11.0.6/Native Method)
>     - parking to wait for  <0x000707d9a508> (a 
> java.util.concurrent.CompletableFuture$Signaller)
>     at 
> java.util.concurrent.locks.LockSupport.park(java.base@11.0.6/LockSupport.java:194)
>     at 
> java.util.concurrent.CompletableFuture$Signaller.block(java.base@11.0.6/CompletableFuture.java:1796)
>     at 
> java.util.concurrent.ForkJoinPool.managedBlock(java.base@11.0.6/ForkJoinPool.java:3128)
>     at 
> java.util.concurrent.CompletableFuture.waitingGet(java.base@11.0.6/CompletableFuture.java:1823)
>     at 
> java.util.concurrent.CompletableFuture.join(java.base@11.0.6/CompletableFuture.java:2043)
>     at org.apache.ignite.internal.table.TableImpl.pkId(TableImpl.java:126)
>     at 
> org.apache.ignite.internal.table.TableImpl.awaitIndexes(TableImpl.java:347)
>     at 
> org.apache.ignite.internal.table.TableImpl.lambda$indexStorageAdapters$0(TableImpl.java:237)
>     at 
> org.apache.ignite.internal.table.TableImpl$$Lambda$1842/0x000800a2fc40.get(Unknown
>  Source)
>     at 
> org.apache.ignite.internal.table.distributed.raft.PartitionListener.addToIndexes(PartitionListener.java:435)
>     at 
> org.apache.ignite.internal.table.distributed.raft.PartitionListener.lambda$handleUpdateAllCommand$5(PartitionListener.java:234)
>     at 
> org.apache.ignite.internal.table.distributed.raft.PartitionListener$$Lambda$2551/0x000800ceb440.execute(Unknown
>  Source)
>     at 
> org.apache.ignite.internal.storage.rocksdb.RocksDbMvPartitionStorage.runConsistently(RocksDbMvPartitionStorage.java:249)
>     at 
> org.apache.ignite.internal.table.distributed.raft.snapshot.outgoing.SnapshotAwarePartitionDataStorage.runConsistently(SnapshotAwarePartitionDataStorage.java:59)
>     at 
> org.apache.ignite.internal.table.distributed.raft.PartitionListener.handleUpdateAllCommand(PartitionListener.java:219)
>     at 
> org.apache.ignite.internal.table.distributed.raft.PartitionListener.lambda$onWrite$1(PartitionListener.java:153)
>     at 
> org.apache.ignite.internal.table.distributed.raft.PartitionListener$$Lambda$1944/0x000800a7a440.accept(Unknown
>  Source)
>     at java.util.Iterator.forEachRemaining(java.base@11.0.6/Iterator.java:133)
>     at 
> org.apache.ignite.internal.table.distributed.raft.PartitionListener.onWrite(PartitionListener.java:123)
>     at 
> org.apache.ignite.internal.raft.server.impl.JraftServerImpl$DelegatingStateMachine.onApply(JraftServerImpl.java:563)
>     at 
> org.apache.ignite.raft.jraft.core.FSMCallerImpl.doApplyTasks(FSMCallerImpl.java:565)
>     at 
> org.apache.ignite.raft.jraft.core.FSMCallerImpl.doCommitted(FSMCallerImpl.java:530)
>     at 
> org.apache.ignite.raft.jraft.core.FSMCallerImpl.runApplyTask(FSMCallerImpl.java:449)
>     at 
> org.apache.ignite.raft.jraft.core.FSMCallerImpl$ApplyTaskHandler.onEvent(FSMCallerImpl.java:137)
>     at 
> org.apache.ignite.raft.jraft.core.FSMCallerImpl$ApplyTaskHandler.onEvent(FSMCallerImpl.java:131)
>     at 
> org.apache.ignite.raft.jraft.disruptor.StripedDisruptor$StripeEntryHandler.onEvent(StripedDisruptor.java:217)
>     at 
> org.apache.ignite.raft.jraft.disruptor.StripedDisruptor$StripeEntryHandler.onEvent(StripedDisruptor.java:181)
>     at 
> com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:137)
>     at java.lang.Thread.run(java.base@11.0.6/Thread.java:834)
> Probably the node stop was initiated before the indices were created for the 
> table, then index manager was stopped, so the indices never get created. But 
> only index creation completes the future that is being avaited by the shown 
> thread.
> This might have something to do with IGNITE-18203.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (IGNITE-18026) Rework HLC propagation in parts related to Raft

2022-12-28 Thread Denis Chudov (Jira)


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

Denis Chudov reassigned IGNITE-18026:
-

Assignee: Denis Chudov

> Rework HLC propagation in parts related to Raft
> ---
>
> Key: IGNITE-18026
> URL: https://issues.apache.org/jira/browse/IGNITE-18026
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Denis Chudov
>Assignee: Denis Chudov
>Priority: Major
>  Labels: ignite-3
>
> *Motivation:*
> As for now, HLC propagates via replica messages and Raft appendEntries 
> messages. The latter required changes in jraft code which was done under 
> IGNITE-17221 . Replica safe time (see IGNITE-17263 ) also uses HLC timestamps 
> coming from leader, but these timestamps should be applied only on commiting 
> index, so the whole mechanism consists of two steps: creating safe time 
> candidate on processing of appendEntries request, and appying it on index 
> commit. 
> All of this have grown up into significant amount of invasive code in jraft 
> which is not related to Raft protocol itself. It can be reworked by moving 
> the logic related to HLC and safe time propagation to ignite state machine 
> listener working on top of Raft.
> *Definition of done:*
> There is no code related to HLC and safe time left in ignite-raft module.
> *Implementation notes:*
> Raft write commands can be enriched with HybridTimestamps. Idle HLC 
> adjustment could be done using SafeTimeSyncCommand (it should be renamed in 
> this case). Safe time candidates will no longer be needed.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-17724) .NET: TestPrimaryNodeLeaveClearsPlatformCache is flaky

2022-12-28 Thread Ignite TC Bot (Jira)


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

Ignite TC Bot commented on IGNITE-17724:


{panel:title=Branch: [pull/10457/head] Base: [master] : No blockers 
found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel}
{panel:title=Branch: [pull/10457/head] Base: [master] : No new tests 
found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#F7D6C1}{panel}
[TeamCity *--> Run :: All* 
Results|https://ci.ignite.apache.org/viewLog.html?buildId=6979906&buildTypeId=IgniteTests24Java8_RunAll]

> .NET: TestPrimaryNodeLeaveClearsPlatformCache is flaky
> --
>
> Key: IGNITE-17724
> URL: https://issues.apache.org/jira/browse/IGNITE-17724
> Project: Ignite
>  Issue Type: Bug
>  Components: platforms
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: .NET
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Apache.Ignite.Core.Tests.Cache.Platform.PlatformCacheTopologyChangeTest.TestPrimaryNodeLeaveClearsPlatformCache
>  is flaky.
> https://ci.ignite.apache.org/test/-4466167631530075752?currentProjectId=IgniteTests24Java8&branch=%3Cdefault%3E



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-17016) Rest api get call

2022-12-28 Thread Denis Dijak (Jira)


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

Denis Dijak commented on IGNITE-17016:
--

[~slava.koptilin] any news regarding this issue? 

> Rest api get call 
> --
>
> Key: IGNITE-17016
> URL: https://issues.apache.org/jira/browse/IGNITE-17016
> Project: Ignite
>  Issue Type: Bug
>  Components: rest
>Affects Versions: 2.12, 2.13
>Reporter: Denis Dijak
>Assignee: Vyacheslav Koptilin
>Priority: Critical
>  Labels: rest, rest_api
> Attachments: ignite-rest-test.zip
>
>
> It seems that the call to CacheStore load method from REST API (get command) 
> is broken from v2.12 onwards. I've attached a simple test program, and 
> calling 
> [http://127.0.0.1:8080/ignite?cacheName=RestApiTest&cmd=get&key=6|http://localhost:8080/ignite?cacheName=RestApiTest&cmd=get&key=6]
> dosen't seems to call the load method at all. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-18470) Exception handling for DistributionZoneManager in DdlCommandHandler.

2022-12-28 Thread Sergey Uttsel (Jira)


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

Sergey Uttsel updated IGNITE-18470:
---
Description: 
h3. Motivation

We have broken exception handling in DistributionZoneManager. Some exceptions 
are thrown from methods, other exceptions fail future. Need to refactor it.

Currently DdlCommandHandler handles DistributionZoneAlreadyExistsException and 
DistributionZoneNotFoundException incorrectly because it wrapped into 
ConfigurationChangeException. Seems that they are wrapped because they are 
checked exceptions. There are no tests for it. Also methods of 
DistributionZoneManager throw other exceptions.

h3. Definition of Done
# Exception handling in DistributionZoneManager is reworked.
# DdlCommandHandler handles all exception produced by methods of 
DistributionZoneManager.

h3. Implementation notes
# createZone, alterZone, dropZone must don't wrap NodeStoppingException.
# Need to check if we can unwrap DistributionZoneAlreadyExistsException and 
DistributionZoneNotFoundException from ConfigurationChangeException.

  was:
h3. Motivation
Currently DdlCommandHandler handles DistributionZoneAlreadyExistsException and 
DistributionZoneNotFoundException incorrectly because it wrapped into 
ConfigurationChangeException. Seems that they are wrapped because they are 
checked exceptions. There are no tests for it.

Also methods of DistributionZoneManager throw other exceptions.

DistributionZoneManager#createZone:
# return future which is completed with ConfigurationChangeException (caused by 
DistributionZoneAlreadyExistsException and DistributionZoneNotFoundException)
# throws NullPointerException if the parameter of method is null.
# NodeStoppingException If the node is stopping.

DistributionZoneManager#dropZone:
# return future which is completed with ConfigurationChangeException (caused by 
DistributionZoneNotFoundException)
# throws NullPointerException if the parameter of method is null.
# NodeStoppingException If the node is stopping.

DistributionZoneManager#alterZone also throws these exception, but it is not 
used in DdlCommandHandler now.

h3. Definition of Done
DdlCommandHandler handles all exception produced by methods of 
DistributionZoneManager.

h3. Implementation notes
# createZone, alterZone, dropZone must don't wrap NodeStoppingException.
# Need to check if we can unwrap DistributionZoneAlreadyExistsException and 
DistributionZoneNotFoundException from ConfigurationChangeException.


> Exception handling for DistributionZoneManager in DdlCommandHandler.
> 
>
> Key: IGNITE-18470
> URL: https://issues.apache.org/jira/browse/IGNITE-18470
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Sergey Uttsel
>Assignee: Sergey Uttsel
>Priority: Major
>  Labels: ignite-3
>
> h3. Motivation
> We have broken exception handling in DistributionZoneManager. Some exceptions 
> are thrown from methods, other exceptions fail future. Need to refactor it.
> Currently DdlCommandHandler handles DistributionZoneAlreadyExistsException 
> and DistributionZoneNotFoundException incorrectly because it wrapped into 
> ConfigurationChangeException. Seems that they are wrapped because they are 
> checked exceptions. There are no tests for it. Also methods of 
> DistributionZoneManager throw other exceptions.
> h3. Definition of Done
> # Exception handling in DistributionZoneManager is reworked.
> # DdlCommandHandler handles all exception produced by methods of 
> DistributionZoneManager.
> h3. Implementation notes
> # createZone, alterZone, dropZone must don't wrap NodeStoppingException.
> # Need to check if we can unwrap DistributionZoneAlreadyExistsException and 
> DistributionZoneNotFoundException from ConfigurationChangeException.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-18247) .NET: Thin 3.0: LINQ: Operators and functions

2022-12-28 Thread Pavel Tupitsyn (Jira)


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

Pavel Tupitsyn commented on IGNITE-18247:
-

Merged to main: 14c30f23791c50856f9eb74b30d909c393de88c8

> .NET: Thin 3.0: LINQ: Operators and functions
> -
>
> Key: IGNITE-18247
> URL: https://issues.apache.org/jira/browse/IGNITE-18247
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms, thin client
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: .NET, LINQ, ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Implement support for operators and functions in LINQ:
> * Logic and arithmetic: ! + - * / = != %
> * String functions: ToLower, ToUpper, Trim, Contains, etc (see 
> *MethodVisitor*)
> * Date functions (see *MethodVisitor*)
> * Math (Abs, Exp, Log, Pow, etc - see *MethodVisitor*)
> * Regex



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-18435) .NET: Thin 3.0: Add support for Enum mapping

2022-12-28 Thread Pavel Tupitsyn (Jira)


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

Pavel Tupitsyn commented on IGNITE-18435:
-

Merged to main: 64f8248fe52a50e09eace2eea7b7308a7c8f6eaf

> .NET: Thin 3.0: Add support for Enum mapping
> 
>
> Key: IGNITE-18435
> URL: https://issues.apache.org/jira/browse/IGNITE-18435
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms, thin client
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: .NET, LINQ, ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> Add support for Enum typed fields to *KeyValueView*, *RecordView*, and *LINQ*.
> Target column type must be integer (int8, int16, int32, int64) and correspond 
> to the underlying enum type.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-18427) .NET: Platform cache is not updated when ReadFromBackup is true

2022-12-28 Thread Ignite TC Bot (Jira)


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

Ignite TC Bot commented on IGNITE-18427:


{panel:title=Branch: [pull/10465/head] Base: [master] : Possible Blockers 
(4)|borderStyle=dashed|borderColor=#ccc|titleBGColor=#F7D6C1}
{color:#d04437}Cache 6{color} [[tests 0 TIMEOUT , Exit Code , Failure on metric 
|https://ci.ignite.apache.org/viewLog.html?buildId=6982377]]

{color:#d04437}Disk Page Compressions 1{color} [[tests 
1|https://ci.ignite.apache.org/viewLog.html?buildId=6982472]]
* IgnitePdsCompressionTestSuite: 
IgniteClusterActivateDeactivateTestWithPersistence.testDeactivateClusterWithPersistentCache
 - Test has low fail rate in base branch 0,0% and is not flaky

{color:#d04437}Queries 1 (lazy=true){color} [[tests 
1|https://ci.ignite.apache.org/viewLog.html?buildId=6982443]]
* IgniteBinaryCacheQueryLazyTestSuite: 
DynamicIndexServerCoordinatorBasicSelfTest.testCreateIndexWithParallelismPartitionedTransactional
 - Test has low fail rate in base branch 0,0% and is not flaky

{color:#d04437}Platform .NET (Core Linux){color} [[tests 0 TIMEOUT , Exit Code 
, TC_SERVICE_MESSAGE 
|https://ci.ignite.apache.org/viewLog.html?buildId=6982440]]

{panel}
{panel:title=Branch: [pull/10465/head] Base: [master] : New Tests 
(3)|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}
{color:#8b}Platform .NET (Core Linux){color} [[tests 
3|https://ci.ignite.apache.org/viewLog.html?buildId=6982440]]
* {color:#013220}DotNetCore: 
PlatformCachePartialClientConnectionTest.TestPutFromOneClientGetFromAnother - 
PASSED{color}
* {color:#013220}DotNetCore: 
PlatformCacheTest.TestPlatformCachingReplicated(False) - PASSED{color}
* {color:#013220}DotNetCore: 
PlatformCacheTest.TestPlatformCachingReplicated(True) - PASSED{color}

{panel}
[TeamCity *--> Run :: All* 
Results|https://ci.ignite.apache.org/viewLog.html?buildId=6982474&buildTypeId=IgniteTests24Java8_RunAll]

> .NET: Platform cache is not updated when ReadFromBackup is true
> ---
>
> Key: IGNITE-18427
> URL: https://issues.apache.org/jira/browse/IGNITE-18427
> Project: Ignite
>  Issue Type: Bug
>  Components: platforms
>Affects Versions: 2.14
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: .NET, ise
> Fix For: 2.15
>
> Attachments: IgniteReproducer.csproj, Test.cs
>
>
> See attached reproducer. Client 2 has stale value when *ReadFromBackup = 
> true*.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-18483) Calcite engine. Upgrade calcite libs to the version 1.32

2022-12-28 Thread Mike W (Jira)
Mike W created IGNITE-18483:
---

 Summary: Calcite engine. Upgrade calcite libs to the version 1.32
 Key: IGNITE-18483
 URL: https://issues.apache.org/jira/browse/IGNITE-18483
 Project: Ignite
  Issue Type: Improvement
  Components: sql
Reporter: Mike W


The list of the waited fixes:
- CALCITE-4652- need to complete fix the IGNITE-14681 and remove code 
duplication from calcite-core.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-18483) Calcite engine. Upgrade calcite libs to the version 1.32

2022-12-28 Thread Mike W (Jira)


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

Mike W updated IGNITE-18483:

Release Note:   (was: was changed under differ issue. current ver: 1.29.)
 Description: 
Current version 1.30 

Critical Vulnerability was discovered in versions less than 1.32, 

https://nvd.nist.gov/vuln/detail/CVE-2022-39135

  was:
The list of the waited fixes:
- CALCITE-4652- need to complete fix the IGNITE-14681 and remove code 
duplication from calcite-core.


> Calcite engine. Upgrade calcite libs to the version 1.32
> 
>
> Key: IGNITE-18483
> URL: https://issues.apache.org/jira/browse/IGNITE-18483
> Project: Ignite
>  Issue Type: Improvement
>  Components: sql
>Reporter: Mike W
>Priority: Major
>
> Current version 1.30 
> Critical Vulnerability was discovered in versions less than 1.32, 
> https://nvd.nist.gov/vuln/detail/CVE-2022-39135



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-18463) Unable to cancel a snapshot if one snapshot path is configured for several nodes

2022-12-28 Thread Ignite TC Bot (Jira)


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

Ignite TC Bot commented on IGNITE-18463:


{panel:title=Branch: [pull/10462/head] Base: [master] : No blockers 
found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel}
{panel:title=Branch: [pull/10462/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=6976688&buildTypeId=IgniteTests24Java8_RunAll]

> Unable to cancel a snapshot if one snapshot path is configured for several 
> nodes
> 
>
> Key: IGNITE-18463
> URL: https://issues.apache.org/jira/browse/IGNITE-18463
> Project: Ignite
>  Issue Type: Bug
>Reporter: Nikita Amelchev
>Assignee: Nikita Amelchev
>Priority: Major
>  Labels: ise
> Fix For: 2.15
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Reproducer: testClusterSnapshotInProgressCancelled with multiple server nodes.
> IgniteUtils.delete() fails due to concurrent files delete:
> {noformat}
> [2022-12-27T11:09:51,559][ERROR][mgmt-#423%snapshot.IgniteClusterSnapshotSelfTest1%][AbstractSnapshotFutureTask]
>  SnapshotFutureTask cancellation failed
>  java.util.concurrent.ExecutionException: 
> java.nio.file.DirectoryIteratorException: java.nio.file.NoSuchFileException: 
> /work/ignite-public/work/snapshots/testSnapshot/db/binary_meta/snapshot_IgniteClusterSnapshotSelfTest1
>   at 
> java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357) 
> ~[?:1.8.0_352]
>   at 
> java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1908) 
> ~[?:1.8.0_352]
>   at 
> org.apache.ignite.internal.processors.cache.persistence.snapshot.SnapshotFutureTask.cancel(SnapshotFutureTask.java:659)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.processors.cache.persistence.snapshot.IgniteSnapshotManager.cancelLocalSnapshotTask0(IgniteSnapshotManager.java:1330)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.processors.cache.persistence.snapshot.IgniteSnapshotManager.cancelLocalSnapshotTask(IgniteSnapshotManager.java:1314)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.processors.cache.persistence.snapshot.IgniteSnapshotManager$CancelSnapshotCallable.call(IgniteSnapshotManager.java:3809)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.processors.cache.persistence.snapshot.IgniteSnapshotManager$CancelSnapshotCallable.call(IgniteSnapshotManager.java:3780)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1849)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.processors.job.GridJobWorker$1.call(GridJobWorker.java:628)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:7381)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:622)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:547)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:125) 
> ~[classes/:?]
>   at 
> org.apache.ignite.internal.processors.job.GridJobProcessor.processJobExecuteRequest(GridJobProcessor.java:1366)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.processors.job.GridJobProcessor$JobExecutionListener.onMessage(GridJobProcessor.java:)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1907)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:1528)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager.access$5300(GridIoManager.java:243)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.managers.communication.GridIoManager$9.execute(GridIoManager.java:1421)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.managers.communication.TraceRunnable.run(TraceRunnable.java:55)
>  ~[classes/:?]
>   at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>  ~[?:1.8.0_352]
>   at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>  ~[?:1.8.0_352]
>   at java.lang.Thread.run(Thread.java:750) ~[?:1.8.0_352]
> Caused by: java.nio.file.DirectoryIteratorException: 
> java.nio.file.NoSuchFileException: 
> /work/ignite-public/work/snapshots/testSnapshot/db/binary_meta/snapshot_IgniteClusterSnapshotSe

[jira] [Updated] (IGNITE-18483) Calcite engine. Upgrade calcite libs to version 1.32

2022-12-28 Thread Mike W (Jira)


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

Mike W updated IGNITE-18483:

Summary: Calcite engine. Upgrade calcite libs to version 1.32  (was: 
Calcite engine. Upgrade calcite libs to the version 1.32)

> Calcite engine. Upgrade calcite libs to version 1.32
> 
>
> Key: IGNITE-18483
> URL: https://issues.apache.org/jira/browse/IGNITE-18483
> Project: Ignite
>  Issue Type: Improvement
>  Components: sql
>Reporter: Mike W
>Priority: Major
>
> Current version 1.30 
> Critical Vulnerability was discovered in versions less than 1.32, 
> https://nvd.nist.gov/vuln/detail/CVE-2022-39135



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-18483) Calcite engine. Upgrade calcite libs to version 1.32

2022-12-28 Thread Mike W (Jira)


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

Mike W updated IGNITE-18483:

Description: 
Current version (as of 1.14) is 1.30 

Critical Vulnerability was discovered in versions less than 1.32, 

[https://nvd.nist.gov/vuln/detail/CVE-2022-39135]

  was:
Current version 1.30 

Critical Vulnerability was discovered in versions less than 1.32, 

https://nvd.nist.gov/vuln/detail/CVE-2022-39135


> Calcite engine. Upgrade calcite libs to version 1.32
> 
>
> Key: IGNITE-18483
> URL: https://issues.apache.org/jira/browse/IGNITE-18483
> Project: Ignite
>  Issue Type: Improvement
>  Components: sql
>Reporter: Mike W
>Priority: Major
>
> Current version (as of 1.14) is 1.30 
> Critical Vulnerability was discovered in versions less than 1.32, 
> [https://nvd.nist.gov/vuln/detail/CVE-2022-39135]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (IGNITE-18483) Calcite engine. Upgrade calcite libs to version 1.32

2022-12-28 Thread Mike W (Jira)


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

Mike W resolved IGNITE-18483.
-
Release Note: https://issues.apache.org/jira/browse/IGNITE-17722
  Resolution: Duplicate

https://issues.apache.org/jira/browse/IGNITE-17722

> Calcite engine. Upgrade calcite libs to version 1.32
> 
>
> Key: IGNITE-18483
> URL: https://issues.apache.org/jira/browse/IGNITE-18483
> Project: Ignite
>  Issue Type: Improvement
>  Components: sql
>Reporter: Mike W
>Priority: Major
>
> Current version (as of 1.14) is 1.30 
> Critical Vulnerability was discovered in versions less than 1.32, 
> [https://nvd.nist.gov/vuln/detail/CVE-2022-39135]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-18484) Mismatched transaction id

2022-12-28 Thread Alexander Belyak (Jira)
Alexander Belyak created IGNITE-18484:
-

 Summary: Mismatched transaction id
 Key: IGNITE-18484
 URL: https://issues.apache.org/jira/browse/IGNITE-18484
 Project: Ignite
  Issue Type: Bug
  Components: general
Affects Versions: 3.0.0-beta1
Reporter: Alexander Belyak


During the TPC-H test runs I got a problem:

1) Create&Load TPC-H database

2) Execute "select count(*) from LINEITEM;" throw JDBC connection

3) Get exception:

 
{noformat}
[Code: 0, SQL State: 5]  Exception while executing query [query=select 
count(*) from LINEITEM]. Error message:IGN-CMN-65535 
TraceId:294a2e0a-29e8-448c-abdb-7944b335deb3 IGN-TX-5 
TraceId:b582a4be-2ef1-455f-8e70-80a21e8bcc2e Failed to acquire a lock due to a 
conflict [txId=000ea0e8-bbc4--1cb0-c18823b1fa69, 
conflictingWaiter=WaiterImpl [txId=000e9f97-4be0--1cb0-c18823b1fa69, 
intendedLockMode=null, lockMode=IX, ex=null, isDone=true]]{noformat}
and in the server logs:

 

 
{noformat}
Dec 29, 2022 6:32:29 AM org.apache.ignite.internal.logger.IgniteLogger 
logInternal
WARNING: Failed to process replica request 
[request=ReadWriteScanRetrieveBatchReplicaRequestImpl [batchSize=512, 
columnsToInclude=null, exactKey=null, flags=0, 
groupId=a804d8a4-ae2d-4fc2-bd6f-e40318297fa7_part_0, indexToUse=null, 
lowerBound=null, scanId=603, term=1, timestamp=HybridTimestamp 
[physical=1672288349125, logical=0], 
transactionId=000ea0e8-bbc4--1cb0-c18823b1fa69, upperBound=null]]
java.util.concurrent.CompletionException: 
org.apache.ignite.internal.tx.LockException: IGN-TX-5 
TraceId:b582a4be-2ef1-455f-8e70-80a21e8bcc2e Failed to acquire a lock due to a 
conflict [txId=000ea0e8-bbc4--1cb0-c18823b1fa69, 
conflictingWaiter=WaiterImpl [txId=000e9f97-4be0--1cb0-c18823b1fa69, 
intendedLockMode=null, lockMode=IX, ex=null, isDone=true]]
    at 
java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:331)
    at 
java.base/java.util.concurrent.CompletableFuture.uniApplyNow(CompletableFuture.java:670)
    at 
java.base/java.util.concurrent.CompletableFuture.uniApplyStage(CompletableFuture.java:658)
    at 
java.base/java.util.concurrent.CompletableFuture.thenApply(CompletableFuture.java:2094)
    at 
org.apache.ignite.internal.tx.impl.HeapLockManager.acquire(HeapLockManager.java:103)
    at 
org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.processScanRetrieveBatchAction(PartitionReplicaListener.java:604)
    at 
org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.lambda$invoke$0(PartitionReplicaListener.java:264)
    at 
java.base/java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:1072)
    at 
java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506)
    at 
java.base/java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:2073)
    at 
org.apache.ignite.internal.raft.RaftGroupServiceImpl.lambda$sendWithRetry$38(RaftGroupServiceImpl.java:539)
    at 
java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:859)
    at 
java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:837)
    at 
java.base/java.util.concurrent.CompletableFuture$Completion.exec(CompletableFuture.java:479)
    at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
    at 
java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
    at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
    at 
java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
    at 
java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)
Caused by: org.apache.ignite.internal.tx.LockException: IGN-TX-5 
TraceId:b582a4be-2ef1-455f-8e70-80a21e8bcc2e Failed to acquire a lock due to a 
conflict [txId=000ea0e8-bbc4--1cb0-c18823b1fa69, 
conflictingWaiter=WaiterImpl [txId=000e9f97-4be0--1cb0-c18823b1fa69, 
intendedLockMode=null, lockMode=IX, ex=null, isDone=true]]
    at 
org.apache.ignite.internal.tx.impl.HeapLockManager$LockState.lockException(HeapLockManager.java:303)
    at 
org.apache.ignite.internal.tx.impl.HeapLockManager$LockState.isWaiterReadyToNotify(HeapLockManager.java:281)
    at 
org.apache.ignite.internal.tx.impl.HeapLockManager$LockState.tryAcquire(HeapLockManager.java:230)
    at 
org.apache.ignite.internal.tx.impl.HeapLockManager.acquire(HeapLockManager.java:95)
    ... 14 moreDec 29, 2022 6:33:05 AM 
org.apache.ignite.internal.logger.IgniteLogger logInternal
INFO: Skipping checkpoint (no pages were modified) 
[checkpointBeforeWriteLockTime=0ms, checkpointWriteLockWait=0ms, 
checkpointListenersExecuteTime=0ms, checkpointWriteLockHoldTime=0ms, 
reason='timeout']{noformat}
After server restart

on client side:

 

 
{nofo

[jira] [Updated] (IGNITE-18468) ItSecondaryIndexTest testNullCondition[1-3] tests unstable.

2022-12-28 Thread Evgeny Stanilovsky (Jira)


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

Evgeny Stanilovsky updated IGNITE-18468:

Epic Link: IGNITE-17304

> ItSecondaryIndexTest testNullCondition[1-3] tests unstable.
> ---
>
> Key: IGNITE-18468
> URL: https://issues.apache.org/jira/browse/IGNITE-18468
> Project: Ignite
>  Issue Type: Bug
>  Components: general
>Reporter: Evgeny Stanilovsky
>Priority: Blocker
>  Labels: ignite-3
> Fix For: 3.0.0-beta1
>
> Attachments: image (11).png
>
>
> ItSecondaryIndexTest unstable tests testNullCondition[1-3]
> Can be reproduced locally 
> !image (11).png!
> Seems all tests that contains scenario like :
> create table ...
> create index ..
> insert into table values ...
> select some_preconditions <- touch index plan
> are exposed.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-18470) Exception handling for DistributionZoneManager

2022-12-28 Thread Sergey Uttsel (Jira)


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

Sergey Uttsel updated IGNITE-18470:
---
Summary: Exception handling for DistributionZoneManager  (was: Exception 
handling for DistributionZoneManager in DdlCommandHandler.)

> Exception handling for DistributionZoneManager
> --
>
> Key: IGNITE-18470
> URL: https://issues.apache.org/jira/browse/IGNITE-18470
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Sergey Uttsel
>Assignee: Sergey Uttsel
>Priority: Major
>  Labels: ignite-3
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> h3. Motivation
> We have broken exception handling in DistributionZoneManager. Some exceptions 
> are thrown from methods, other exceptions fail future. Need to refactor it.
> Currently DdlCommandHandler handles DistributionZoneAlreadyExistsException 
> and DistributionZoneNotFoundException incorrectly because it wrapped into 
> ConfigurationChangeException. Seems that they are wrapped because they are 
> checked exceptions. There are no tests for it. Also methods of 
> DistributionZoneManager throw other exceptions.
> h3. Definition of Done
> # Exception handling in DistributionZoneManager is reworked.
> # DdlCommandHandler handles all exception produced by methods of 
> DistributionZoneManager.
> h3. Implementation notes
> # createZone, alterZone, dropZone must don't wrap NodeStoppingException.
> # Need to check if we can unwrap DistributionZoneAlreadyExistsException and 
> DistributionZoneNotFoundException from ConfigurationChangeException.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (IGNITE-18485) ItTableRaftSnapshotsTest.entriesKeepAppendedAfterSnapshotInstallation() sometimes hangs

2022-12-28 Thread Roman Puchkovskiy (Jira)
Roman Puchkovskiy created IGNITE-18485:
--

 Summary: 
ItTableRaftSnapshotsTest.entriesKeepAppendedAfterSnapshotInstallation() 
sometimes hangs
 Key: IGNITE-18485
 URL: https://issues.apache.org/jira/browse/IGNITE-18485
 Project: Ignite
  Issue Type: Bug
Reporter: Roman Puchkovskiy
Assignee: Roman Puchkovskiy
 Fix For: 3.0.0-beta2


According to the logs, local index never gets created on node 2, so an insert 
hangs waiting for the index to be created, so we never see the inserted row 
when we send a SELECT query to node 2.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (IGNITE-18451) Node stop may hang if an index is not created yet

2022-12-28 Thread Roman Puchkovskiy (Jira)


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

Roman Puchkovskiy updated IGNITE-18451:
---
Summary: Node stop may hang if an index is not created yet  (was: Node stop 
may hang if a Raft service is not started yet)

> Node stop may hang if an index is not created yet
> -
>
> Key: IGNITE-18451
> URL: https://issues.apache.org/jira/browse/IGNITE-18451
> Project: Ignite
>  Issue Type: Bug
>Reporter: Roman Puchkovskiy
>Assignee: Roman Puchkovskiy
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>
> # Start and init a cluster of 3 nodes
>  # Via node 0, create a table with 3 replicas
>  # Do some stuff
>  # Stop the cluster
> The cluster cannot be stoppled, stop of node 2 seems to hang forever. There 
> is a thread:
> "%itrst_tsimwkpn_2%JRaft-FSMCaller-Disruptor-_stripe_3-0" #253053 daemon 
> prio=5 os_prio=0 cpu=0,59ms elapsed=1169,99s tid=0x7fb4867e3000 
> nid=0xa1668 waiting on condition  [0x7fb4832f]
>    java.lang.Thread.State: WAITING (parking)
>     at jdk.internal.misc.Unsafe.park(java.base@11.0.6/Native Method)
>     - parking to wait for  <0x000707d9a508> (a 
> java.util.concurrent.CompletableFuture$Signaller)
>     at 
> java.util.concurrent.locks.LockSupport.park(java.base@11.0.6/LockSupport.java:194)
>     at 
> java.util.concurrent.CompletableFuture$Signaller.block(java.base@11.0.6/CompletableFuture.java:1796)
>     at 
> java.util.concurrent.ForkJoinPool.managedBlock(java.base@11.0.6/ForkJoinPool.java:3128)
>     at 
> java.util.concurrent.CompletableFuture.waitingGet(java.base@11.0.6/CompletableFuture.java:1823)
>     at 
> java.util.concurrent.CompletableFuture.join(java.base@11.0.6/CompletableFuture.java:2043)
>     at org.apache.ignite.internal.table.TableImpl.pkId(TableImpl.java:126)
>     at 
> org.apache.ignite.internal.table.TableImpl.awaitIndexes(TableImpl.java:347)
>     at 
> org.apache.ignite.internal.table.TableImpl.lambda$indexStorageAdapters$0(TableImpl.java:237)
>     at 
> org.apache.ignite.internal.table.TableImpl$$Lambda$1842/0x000800a2fc40.get(Unknown
>  Source)
>     at 
> org.apache.ignite.internal.table.distributed.raft.PartitionListener.addToIndexes(PartitionListener.java:435)
>     at 
> org.apache.ignite.internal.table.distributed.raft.PartitionListener.lambda$handleUpdateAllCommand$5(PartitionListener.java:234)
>     at 
> org.apache.ignite.internal.table.distributed.raft.PartitionListener$$Lambda$2551/0x000800ceb440.execute(Unknown
>  Source)
>     at 
> org.apache.ignite.internal.storage.rocksdb.RocksDbMvPartitionStorage.runConsistently(RocksDbMvPartitionStorage.java:249)
>     at 
> org.apache.ignite.internal.table.distributed.raft.snapshot.outgoing.SnapshotAwarePartitionDataStorage.runConsistently(SnapshotAwarePartitionDataStorage.java:59)
>     at 
> org.apache.ignite.internal.table.distributed.raft.PartitionListener.handleUpdateAllCommand(PartitionListener.java:219)
>     at 
> org.apache.ignite.internal.table.distributed.raft.PartitionListener.lambda$onWrite$1(PartitionListener.java:153)
>     at 
> org.apache.ignite.internal.table.distributed.raft.PartitionListener$$Lambda$1944/0x000800a7a440.accept(Unknown
>  Source)
>     at java.util.Iterator.forEachRemaining(java.base@11.0.6/Iterator.java:133)
>     at 
> org.apache.ignite.internal.table.distributed.raft.PartitionListener.onWrite(PartitionListener.java:123)
>     at 
> org.apache.ignite.internal.raft.server.impl.JraftServerImpl$DelegatingStateMachine.onApply(JraftServerImpl.java:563)
>     at 
> org.apache.ignite.raft.jraft.core.FSMCallerImpl.doApplyTasks(FSMCallerImpl.java:565)
>     at 
> org.apache.ignite.raft.jraft.core.FSMCallerImpl.doCommitted(FSMCallerImpl.java:530)
>     at 
> org.apache.ignite.raft.jraft.core.FSMCallerImpl.runApplyTask(FSMCallerImpl.java:449)
>     at 
> org.apache.ignite.raft.jraft.core.FSMCallerImpl$ApplyTaskHandler.onEvent(FSMCallerImpl.java:137)
>     at 
> org.apache.ignite.raft.jraft.core.FSMCallerImpl$ApplyTaskHandler.onEvent(FSMCallerImpl.java:131)
>     at 
> org.apache.ignite.raft.jraft.disruptor.StripedDisruptor$StripeEntryHandler.onEvent(StripedDisruptor.java:217)
>     at 
> org.apache.ignite.raft.jraft.disruptor.StripedDisruptor$StripeEntryHandler.onEvent(StripedDisruptor.java:181)
>     at 
> com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:137)
>     at java.lang.Thread.run(java.base@11.0.6/Thread.java:834)
> Probably the node stop was initiated before the indices were created for the 
> table, then index manager was stopped, so the indices never get created. But 
> only index creation completes the future that is being avaited by the shown 
> thread.
> This might have something to do with IGNITE-18203.



--
This message was sen

[jira] (IGNITE-18427) .NET: Platform cache is not updated when ReadFromBackup is true

2022-12-28 Thread Pavel Tupitsyn (Jira)


[ https://issues.apache.org/jira/browse/IGNITE-18427 ]


Pavel Tupitsyn deleted comment on IGNITE-18427:
-

was (Author: ignitetcbot):
{panel:title=Branch: [pull/10465/head] Base: [master] : Possible Blockers 
(4)|borderStyle=dashed|borderColor=#ccc|titleBGColor=#F7D6C1}
{color:#d04437}Cache 6{color} [[tests 0 TIMEOUT , Exit Code , Failure on metric 
|https://ci.ignite.apache.org/viewLog.html?buildId=6982377]]

{color:#d04437}Disk Page Compressions 1{color} [[tests 
1|https://ci.ignite.apache.org/viewLog.html?buildId=6982472]]
* IgnitePdsCompressionTestSuite: 
IgniteClusterActivateDeactivateTestWithPersistence.testDeactivateClusterWithPersistentCache
 - Test has low fail rate in base branch 0,0% and is not flaky

{color:#d04437}Queries 1 (lazy=true){color} [[tests 
1|https://ci.ignite.apache.org/viewLog.html?buildId=6982443]]
* IgniteBinaryCacheQueryLazyTestSuite: 
DynamicIndexServerCoordinatorBasicSelfTest.testCreateIndexWithParallelismPartitionedTransactional
 - Test has low fail rate in base branch 0,0% and is not flaky

{color:#d04437}Platform .NET (Core Linux){color} [[tests 0 TIMEOUT , Exit Code 
, TC_SERVICE_MESSAGE 
|https://ci.ignite.apache.org/viewLog.html?buildId=6982440]]

{panel}
{panel:title=Branch: [pull/10465/head] Base: [master] : New Tests 
(3)|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}
{color:#8b}Platform .NET (Core Linux){color} [[tests 
3|https://ci.ignite.apache.org/viewLog.html?buildId=6982440]]
* {color:#013220}DotNetCore: 
PlatformCachePartialClientConnectionTest.TestPutFromOneClientGetFromAnother - 
PASSED{color}
* {color:#013220}DotNetCore: 
PlatformCacheTest.TestPlatformCachingReplicated(False) - PASSED{color}
* {color:#013220}DotNetCore: 
PlatformCacheTest.TestPlatformCachingReplicated(True) - PASSED{color}

{panel}
[TeamCity *--> Run :: All* 
Results|https://ci.ignite.apache.org/viewLog.html?buildId=6982474&buildTypeId=IgniteTests24Java8_RunAll]

> .NET: Platform cache is not updated when ReadFromBackup is true
> ---
>
> Key: IGNITE-18427
> URL: https://issues.apache.org/jira/browse/IGNITE-18427
> Project: Ignite
>  Issue Type: Bug
>  Components: platforms
>Affects Versions: 2.14
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: .NET, ise
> Fix For: 2.15
>
> Attachments: IgniteReproducer.csproj, Test.cs
>
>
> See attached reproducer. Client 2 has stale value when *ReadFromBackup = 
> true*.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-18427) .NET: Platform cache is not updated when ReadFromBackup is true

2022-12-28 Thread Ignite TC Bot (Jira)


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

Ignite TC Bot commented on IGNITE-18427:


{panel:title=Branch: [pull/10465/head] Base: [master] : Possible Blockers 
(1)|borderStyle=dashed|borderColor=#ccc|titleBGColor=#F7D6C1}
{color:#d04437}Disk Page Compressions 1{color} [[tests 
1|https://ci.ignite.apache.org/viewLog.html?buildId=6983577]]
* IgnitePdsCompressionTestSuite: 
IgniteClusterSnapshotStreamerTest.testStreamerFailsLongAgoDefaultClient[Encryption=false]
 - Test has low fail rate in base branch 0,0% and is not flaky

{panel}
{panel:title=Branch: [pull/10465/head] Base: [master] : New Tests 
(6)|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}
{color:#8b}Platform .NET (Core Linux){color} [[tests 
3|https://ci.ignite.apache.org/viewLog.html?buildId=6983575]]
* {color:#013220}DotNetCore: 
PlatformCachePartialClientConnectionTest.TestPutFromOneClientGetFromAnother - 
PASSED{color}
* {color:#013220}DotNetCore: 
PlatformCacheTest.TestPlatformCachingReplicated(False) - PASSED{color}
* {color:#013220}DotNetCore: 
PlatformCacheTest.TestPlatformCachingReplicated(True) - PASSED{color}

{color:#8b}Platform .NET (Windows){color} [[tests 
3|https://ci.ignite.apache.org/viewLog.html?buildId=6983581]]
* {color:#013220}exe: 
PlatformCachePartialClientConnectionTest.TestPutFromOneClientGetFromAnother - 
PASSED{color}
* {color:#013220}exe: PlatformCacheTest.TestPlatformCachingReplicated(False) - 
PASSED{color}
* {color:#013220}exe: PlatformCacheTest.TestPlatformCachingReplicated(True) - 
PASSED{color}

{panel}
[TeamCity *--> Run :: All* 
Results|https://ci.ignite.apache.org/viewLog.html?buildId=6982474&buildTypeId=IgniteTests24Java8_RunAll]

> .NET: Platform cache is not updated when ReadFromBackup is true
> ---
>
> Key: IGNITE-18427
> URL: https://issues.apache.org/jira/browse/IGNITE-18427
> Project: Ignite
>  Issue Type: Bug
>  Components: platforms
>Affects Versions: 2.14
>Reporter: Pavel Tupitsyn
>Assignee: Pavel Tupitsyn
>Priority: Major
>  Labels: .NET, ise
> Fix For: 2.15
>
> Attachments: IgniteReproducer.csproj, Test.cs
>
>
> See attached reproducer. Client 2 has stale value when *ReadFromBackup = 
> true*.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (IGNITE-18163) Old-style join on different column types fails with ClassCastException

2022-12-28 Thread Evgeny Stanilovsky (Jira)


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

Evgeny Stanilovsky reassigned IGNITE-18163:
---

Assignee: Evgeny Stanilovsky

> Old-style join on different column types fails with ClassCastException
> --
>
> Key: IGNITE-18163
> URL: https://issues.apache.org/jira/browse/IGNITE-18163
> Project: Ignite
>  Issue Type: Improvement
>  Components: sql
>Affects Versions: 3.0.0-beta1
>Reporter: Pavel Tupitsyn
>Assignee: Evgeny Stanilovsky
>Priority: Major
>  Labels: calcite3-required, ignite-3
> Fix For: 3.0.0-beta2
>
>
> Query:
> {code}
> select _T0.KEY, _T1.VAL from PUBLIC.TBL1 as _T0, PUBLIC.TBL_INT32 as _T1 
> where _T0.KEY IS NOT DISTINCT FROM _T1.KEY
> {code}
> Result:
> {code}
> org.apache.ignite.lang.IgniteException: IGN-CMN-65535 
> TraceId:ef4217b1-04ef-4f08-b1c3-76effc3fc262 class java.lang.Long cannot be 
> cast to class java.lang.Integer (java.lang.Long and java.lang.Integer are in 
> module java.base of loader 'bootstrap')
>   at org.apache.ignite.lang.IgniteException.wrap(IgniteException.java:289)
>   at 
> org.apache.ignite.internal.sql.engine.AsyncSqlCursorImpl.lambda$requestNextAsync$0(AsyncSqlCursorImpl.java:77)
>   at 
> java.base/java.util.concurrent.CompletableFuture.uniHandle(CompletableFuture.java:930)
>   at 
> java.base/java.util.concurrent.CompletableFuture$UniHandle.tryFire(CompletableFuture.java:907)
>   at 
> java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506)
>   at 
> java.base/java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2088)
>   at 
> org.apache.ignite.internal.sql.engine.exec.rel.AsyncRootNode.lambda$closeAsync$0(AsyncRootNode.java:193)
>   at 
> java.base/java.util.concurrent.LinkedBlockingQueue.forEachFrom(LinkedBlockingQueue.java:1010)
>   at 
> java.base/java.util.concurrent.LinkedBlockingQueue.forEach(LinkedBlockingQueue.java:979)
>   at 
> org.apache.ignite.internal.sql.engine.exec.rel.AsyncRootNode.closeAsync(AsyncRootNode.java:193)
>   at 
> org.apache.ignite.internal.sql.engine.exec.rel.AsyncRootNode.onError(AsyncRootNode.java:148)
>   at 
> org.apache.ignite.internal.sql.engine.exec.rel.AbstractNode.onError(AbstractNode.java:155)
>   at 
> org.apache.ignite.internal.sql.engine.exec.rel.AbstractNode.onError(AbstractNode.java:155)
>   at 
> org.apache.ignite.internal.sql.engine.exec.rel.AbstractNode.onError(AbstractNode.java:155)
>   at 
> org.apache.ignite.internal.sql.engine.exec.rel.AbstractNode.onError(AbstractNode.java:155)
>   at 
> org.apache.ignite.internal.sql.engine.exec.rel.MergeJoinNode$1.onError(MergeJoinNode.java:124)
>   at 
> org.apache.ignite.internal.sql.engine.exec.rel.AbstractNode.onError(AbstractNode.java:155)
>   at 
> org.apache.ignite.internal.sql.engine.exec.ExchangeServiceImpl.onMessage(ExchangeServiceImpl.java:205)
>   at 
> org.apache.ignite.internal.sql.engine.exec.ExchangeServiceImpl.lambda$start$2(ExchangeServiceImpl.java:81)
>   at 
> org.apache.ignite.internal.sql.engine.message.MessageServiceImpl.onMessageInternal(MessageServiceImpl.java:164)
>   at 
> org.apache.ignite.internal.sql.engine.message.MessageServiceImpl.lambda$onMessage$3(MessageServiceImpl.java:133)
>   at 
> org.apache.ignite.internal.sql.engine.exec.QueryTaskExecutorImpl.lambda$execute$0(QueryTaskExecutorImpl.java:80)
>   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.Long cannot be cast 
> to class java.lang.Integer (java.lang.Long and java.lang.Integer are in 
> module java.base of loader 'bootstrap')
>   at java.base/java.lang.Integer.compareTo(Integer.java:59)
>   at 
> org.apache.calcite.rel.RelFieldCollation.compare(RelFieldCollation.java:43)
>   at 
> org.apache.ignite.internal.sql.engine.exec.exp.ExpressionFactoryImpl.compare(ExpressionFactoryImpl.java:235)
>   at 
> org.apache.ignite.internal.sql.engine.exec.exp.ExpressionFactoryImpl$2.compare(ExpressionFactoryImpl.java:217)
>   at 
> org.apache.ignite.internal.sql.engine.exec.rel.MergeJoinNode$InnerJoin.join(MergeJoinNode.java:318)
>   at 
> org.apache.ignite.internal.sql.engine.exec.rel.MergeJoinNode.pushLeft(MergeJoinNode.java:162)
>   at 
> org.apache.ignite.internal.sql.engine.exec.rel.MergeJoinNode$1.push(MergeJoinNode.java:112)
>   at 
> org.apache.ignite.internal.sql.engine.exec.rel.Inbox.pushOrdered(Inbox.java:259)
>   at