[jira] [Updated] (IGNITE-22130) Fix retry logic for transactions

2024-05-03 Thread Alexey Scherbakov (Jira)


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

Alexey Scherbakov updated IGNITE-22130:
---
Description: 
Recently (IGNITE-21540) retries was introduced for transactions, both explicit 
and implicit.

But the current implementation has flaws:
 # In embedded mode retries cause recursion (because the future is completed on 
the same thread), which can lead to stack overflow.
 # Retries are executed without delay in a loop, which might not give enough 
time for conflicting lock release, making retries almost useless.
 # Read operations are not retried but need to.
 # Data streamer operations are not retried but need to.

To fix 1 and 2 I suggest to submit a response for retryable operation (if retry 
is required) to another thread to avoid recursion and introduce retry delay for 
retriable operations, preferrably with exponential back-off.

Fix for 3 and 4 is obvious.

  was:
Recently (IGNITE-21540) retries was introduced for transactions, both explicit 
and implicit.

But the current implementation has flaws:
 # In embedded mode retries cause recursion (because the future is completed on 
the same thread), which can lead to stack overflow.
 # Retries are executed without delay in a loop, which might not give enough 
time for conflicting lock release, making retries almost useless.
 # Read operations are not retried but need to.

To fix 1 and 2 I suggest to submit a response for retryable operation (if retry 
is required) to another thread to avoid recursion and introduce retry delay for 
retriable operations, preferrably with exponential back-off.

Fix for 3 is obvious.


> Fix retry logic for transactions
> 
>
> Key: IGNITE-22130
> URL: https://issues.apache.org/jira/browse/IGNITE-22130
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Alexey Scherbakov
>Assignee: Alexey Scherbakov
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0
>
>
> Recently (IGNITE-21540) retries was introduced for transactions, both 
> explicit and implicit.
> But the current implementation has flaws:
>  # In embedded mode retries cause recursion (because the future is completed 
> on the same thread), which can lead to stack overflow.
>  # Retries are executed without delay in a loop, which might not give enough 
> time for conflicting lock release, making retries almost useless.
>  # Read operations are not retried but need to.
>  # Data streamer operations are not retried but need to.
> To fix 1 and 2 I suggest to submit a response for retryable operation (if 
> retry is required) to another thread to avoid recursion and introduce retry 
> delay for retriable operations, preferrably with exponential back-off.
> Fix for 3 and 4 is obvious.



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


[jira] [Assigned] (IGNITE-22130) Fix retry logic for transactions

2024-05-03 Thread Alexey Scherbakov (Jira)


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

Alexey Scherbakov reassigned IGNITE-22130:
--

Assignee: Alexey Scherbakov

> Fix retry logic for transactions
> 
>
> Key: IGNITE-22130
> URL: https://issues.apache.org/jira/browse/IGNITE-22130
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Alexey Scherbakov
>Assignee: Alexey Scherbakov
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0
>
>
> Recently (IGNITE-21540) retries was introduced for transactions, both 
> explicit and implicit.
> But the current implementation has flaws:
>  # In embedded mode retries cause recursion (because the future is completed 
> on the same thread), which can lead to stack overflow.
>  # Retries are executed without delay in a loop, which might not give enough 
> time for conflicting lock release, making retries almost useless.
>  # Read operations are not retried but need to.
> To fix 1 and 2 I suggest to submit a response for retryable operation (if 
> retry is required) to another thread to avoid recursion and introduce retry 
> delay for retriable operations, preferrably with exponential back-off.
> Fix for 3 is obvious.



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


[jira] [Assigned] (IGNITE-22161) Sql. Infinity error-loop for simple query

2024-05-03 Thread Andrey Mashenkov (Jira)


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

Andrey Mashenkov reassigned IGNITE-22161:
-

Assignee: Andrey Mashenkov

> Sql. Infinity error-loop for simple query
> -
>
> Key: IGNITE-22161
> URL: https://issues.apache.org/jira/browse/IGNITE-22161
> Project: Ignite
>  Issue Type: Improvement
>  Components: sql
>Reporter: Iurii Gerzhedovich
>Assignee: Andrey Mashenkov
>Priority: Blocker
>  Labels: ignite-3
>
> An infinity error loop for the following query occurred:
> {code:java}
> CREATE TABLE cc_(key int, val varchar DEFAULT \"defaultValue\" primary 
> key){code}
> error:
> {code:java}
> [2024-05-02T17:04:41,397][ERROR][%isaat_n_1%JRaft-FSMCaller-Disruptormetastorage_stripe_0-0][FailureProcessor]
>  Critical system error detected. Will be handled accordingly to configured 
> handler [hnd=NoOpFailureHandler [], failureCtx=FailureContext 
> [type=CRITICAL_ERROR, err=java.util.concurrent.CompletionException: 
> java.lang.IllegalArgumentException: No enum constant 
> org.apache.ignite.internal.schema.DefaultValueGenerator.defaultValue]]
>  java.util.concurrent.CompletionException: 
> java.lang.IllegalArgumentException: No enum constant 
> org.apache.ignite.internal.schema.DefaultValueGenerator.defaultValue
>     at 
> java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:332)
>  ~[?:?]
>     at 
> java.base/java.util.concurrent.CompletableFuture.andTree(CompletableFuture.java:1527)
>  ~[?:?]
>     at 
> java.base/java.util.concurrent.CompletableFuture.allOf(CompletableFuture.java:2419)
>  ~[?:?]
>     at 
> org.apache.ignite.internal.metastorage.server.WatchProcessor.notifyWatches(WatchProcessor.java:258)
>  ~[main/:?]
>     at 
> org.apache.ignite.internal.metastorage.server.WatchProcessor.lambda$notifyWatches$3(WatchProcessor.java:181)
>  ~[main/:?]
>     at 
> java.base/java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:1150)
>  ~[?:?]
>     at 
> java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:482)
>  ~[?:?]
>     at 
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
>  ~[?:?]
>     at 
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
>  ~[?:?]
>     at java.base/java.lang.Thread.run(Thread.java:842) [?:?]
> Caused by: java.lang.IllegalArgumentException: No enum constant 
> org.apache.ignite.internal.schema.DefaultValueGenerator.defaultValue
>     at java.base/java.lang.Enum.valueOf(Enum.java:273) ~[?:?]
>     at 
> org.apache.ignite.internal.schema.DefaultValueGenerator.valueOf(DefaultValueGenerator.java:29)
>  ~[main/:?]
>     at 
> org.apache.ignite.internal.schema.catalog.CatalogToSchemaDescriptorConverter.convert(CatalogToSchemaDescriptorConverter.java:138)
>  ~[main/:?]
>     at 
> org.apache.ignite.internal.schema.catalog.CatalogToSchemaDescriptorConverter.convert(CatalogToSchemaDescriptorConverter.java:162)
>  ~[main/:?]
>     at 
> org.apache.ignite.internal.schema.SchemaUtils.prepareSchemaDescriptor(SchemaUtils.java:37)
>  ~[main/:?]
>     at 
> org.apache.ignite.internal.schema.SchemaManager.onTableCreatedOrAltered(SchemaManager.java:147)
>  ~[main/:?]
>     at 
> org.apache.ignite.internal.schema.SchemaManager.onTableCreated(SchemaManager.java:119)
>  ~[main/:?]
>     at 
> org.apache.ignite.internal.event.AbstractEventProducer.fireEvent(AbstractEventProducer.java:88)
>  ~[main/:?]
>     at 
> org.apache.ignite.internal.catalog.CatalogManagerImpl.access$000(CatalogManagerImpl.java:91)
>  ~[main/:?]
>     at 
> org.apache.ignite.internal.catalog.CatalogManagerImpl$OnUpdateHandlerImpl.handle(CatalogManagerImpl.java:562)
>  ~[main/:?]
>     at 
> org.apache.ignite.internal.catalog.CatalogManagerImpl$OnUpdateHandlerImpl.handle(CatalogManagerImpl.java:529)
>  ~[main/:?]
>     at 
> org.apache.ignite.internal.catalog.storage.UpdateLogImpl$UpdateListener.onUpdate(UpdateLogImpl.java:314)
>  ~[main/:?]
>     at 
> org.apache.ignite.internal.metastorage.server.Watch.onUpdate(Watch.java:67) 
> ~[main/:?]
>     at 
> org.apache.ignite.internal.metastorage.server.WatchProcessor.notifyWatches(WatchProcessor.java:233)
>  ~[main/:?]
>     ... 6 more {code}



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


[jira] [Updated] (IGNITE-22164) Sql. Merge throws exception if columns defined in different from table definition order.

2024-05-03 Thread Evgeny Stanilovsky (Jira)


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

Evgeny Stanilovsky updated IGNITE-22164:

Description: 
Reproducer:
{noformat}
sql("create table limitedChar (pk int primary key, f1 CHAR(2), f2 
CHAR(2))");
sql("create table test1 (pk int primary key, f1 CHAR(2), f2 CHAR(2))");

String mergeSql2 = "MERGE INTO limitedChar dst USING test1 src ON 
dst.pk = src.pk "
+ "WHEN MATCHED THEN UPDATE SET f1 = '12' "
+ "WHEN NOT MATCHED THEN INSERT (pk, f2, f1) VALUES (src.pk, 
src.f2, src.f1)";
sql(mergeSql2);
{noformat}

Caused by: java.lang.ClassCastException: class 
org.apache.ignite.internal.sql.engine.rel.logical.IgniteLogicalTableScan cannot 
be cast to class org.apache.calcite.rel.logical.LogicalProject

  was:
Reproducer:
{noformat}
sql("create table limitedChar (pk int primary key, f1 CHAR(2), f2 
CHAR(2))");
sql("create table test1 (pk int primary key, f1 CHAR(2), f2 CHAR(2))");

String mergeSql2 = "MERGE INTO limitedChar dst USING test1 src ON 
dst.pk = src.pk "
+ "WHEN MATCHED THEN UPDATE SET f1 = '12' "
+ "WHEN NOT MATCHED THEN INSERT (pk, f2, f1) VALUES (src.pk, 
src.f2, src.f1)";
sql(mergeSql2);
{noformat}


> Sql. Merge throws exception if columns defined in different from table 
> definition order.
> 
>
> Key: IGNITE-22164
> URL: https://issues.apache.org/jira/browse/IGNITE-22164
> Project: Ignite
>  Issue Type: Bug
>  Components: sql
>Affects Versions: 3.0.0-beta1
>Reporter: Evgeny Stanilovsky
>Priority: Major
>  Labels: ignite-3
>
> Reproducer:
> {noformat}
> sql("create table limitedChar (pk int primary key, f1 CHAR(2), f2 
> CHAR(2))");
> sql("create table test1 (pk int primary key, f1 CHAR(2), f2 
> CHAR(2))");
> String mergeSql2 = "MERGE INTO limitedChar dst USING test1 src ON 
> dst.pk = src.pk "
> + "WHEN MATCHED THEN UPDATE SET f1 = '12' "
> + "WHEN NOT MATCHED THEN INSERT (pk, f2, f1) VALUES (src.pk, 
> src.f2, src.f1)";
> sql(mergeSql2);
> {noformat}
> Caused by: java.lang.ClassCastException: class 
> org.apache.ignite.internal.sql.engine.rel.logical.IgniteLogicalTableScan 
> cannot be cast to class org.apache.calcite.rel.logical.LogicalProject



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


[jira] [Assigned] (IGNITE-21167) Sql. Change exception message raised while calling transactions with disabled autoCommit from jdbc

2024-05-03 Thread Pavel Pereslegin (Jira)


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

Pavel Pereslegin reassigned IGNITE-21167:
-

Assignee: Pavel Pereslegin

> Sql. Change exception message raised while calling transactions with disabled 
> autoCommit from jdbc
> --
>
> Key: IGNITE-21167
> URL: https://issues.apache.org/jira/browse/IGNITE-21167
> Project: Ignite
>  Issue Type: Bug
>  Components: sql
>Affects Versions: 3.0.0-beta1
>Reporter: Evgeny Stanilovsky
>Assignee: Pavel Pereslegin
>Priority: Major
>  Labels: ignite-3
>
> After ignite-20661 was implemented, statements like:
> {code:java}
> "START TRANSACTION; SELECT 1; COMMIT;"
> {code}
> will throw non friendly exception like :
> "Transaction control statement cannot be executed within an external 
> transaction"
> Need to be changed.
> Discussed in [1]
> [1] https://github.com/apache/ignite-3/pull/2906#discussion_r1420178983



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


[jira] [Assigned] (IGNITE-22149) Thin 3.0: Implement Table partition API

2024-05-03 Thread Mikhail Pochatkin (Jira)


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

Mikhail Pochatkin reassigned IGNITE-22149:
--

Assignee: Mikhail Pochatkin

> Thin 3.0: Implement Table partition API
> ---
>
> Key: IGNITE-22149
> URL: https://issues.apache.org/jira/browse/IGNITE-22149
> Project: Ignite
>  Issue Type: Improvement
>  Components: platforms, thin client
>Reporter: Mikhail Pochatkin
>Assignee: Mikhail Pochatkin
>Priority: Major
>  Labels: ignite-3
>
> Need to implement *org.apache.ignite.table.partition.PartitionManager* 
> interface in Thin Client. 
>  
>  



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


[jira] [Updated] (IGNITE-22165) Dump cancelation test

2024-05-03 Thread Vladimir Steshin (Jira)


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

Vladimir Steshin updated IGNITE-22165:
--
Labels: ise  (was: )

> Dump cancelation test
> -
>
> Key: IGNITE-22165
> URL: https://issues.apache.org/jira/browse/IGNITE-22165
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Vladimir Steshin
>Assignee: Vladimir Steshin
>Priority: Major
>  Labels: ise
>
> We have snapshot cancelation tests. The should be extended with a dump 
> cancelation. 



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


[jira] [Updated] (IGNITE-22165) Dump cancelation test

2024-05-03 Thread Vladimir Steshin (Jira)


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

Vladimir Steshin updated IGNITE-22165:
--
Ignite Flags:   (was: Docs Required,Release Notes Required)

> Dump cancelation test
> -
>
> Key: IGNITE-22165
> URL: https://issues.apache.org/jira/browse/IGNITE-22165
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Vladimir Steshin
>Assignee: Vladimir Steshin
>Priority: Major
>  Labels: ise
>
> We have snapshot cancelation tests. The should be extended with a dump 
> cancelation. 



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


[jira] [Updated] (IGNITE-22165) Dump cancelation test

2024-05-03 Thread Vladimir Steshin (Jira)


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

Vladimir Steshin updated IGNITE-22165:
--
Fix Version/s: 2.17

> Dump cancelation test
> -
>
> Key: IGNITE-22165
> URL: https://issues.apache.org/jira/browse/IGNITE-22165
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Vladimir Steshin
>Assignee: Vladimir Steshin
>Priority: Major
>  Labels: ise
> Fix For: 2.17
>
>
> We have snapshot cancelation tests. The should be extended with a dump 
> cancelation. 



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


[jira] [Created] (IGNITE-22165) Dump cancelation test

2024-05-03 Thread Vladimir Steshin (Jira)
Vladimir Steshin created IGNITE-22165:
-

 Summary: Dump cancelation test
 Key: IGNITE-22165
 URL: https://issues.apache.org/jira/browse/IGNITE-22165
 Project: Ignite
  Issue Type: Improvement
Reporter: Vladimir Steshin
Assignee: Vladimir Steshin


We have snapshot cancelation tests. The should be extended with a dump 
cancelation. 



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


[jira] [Created] (IGNITE-22164) Sql. Merge throws exception if columns defined in different from table definition order.

2024-05-03 Thread Evgeny Stanilovsky (Jira)
Evgeny Stanilovsky created IGNITE-22164:
---

 Summary: Sql. Merge throws exception if columns defined in 
different from table definition order.
 Key: IGNITE-22164
 URL: https://issues.apache.org/jira/browse/IGNITE-22164
 Project: Ignite
  Issue Type: Bug
  Components: sql
Affects Versions: 3.0.0-beta1
Reporter: Evgeny Stanilovsky


Reproducer:
{noformat}
sql("create table limitedChar (pk int primary key, f1 CHAR(2), f2 
CHAR(2))");
sql("create table test1 (pk int primary key, f1 CHAR(2), f2 CHAR(2))");

String mergeSql2 = "MERGE INTO limitedChar dst USING test1 src ON 
dst.pk = src.pk "
+ "WHEN MATCHED THEN UPDATE SET f1 = '12' "
+ "WHEN NOT MATCHED THEN INSERT (pk, f2, f1) VALUES (src.pk, 
src.f2, src.f1)";
sql(mergeSql2);
{noformat}



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


[jira] [Updated] (IGNITE-21258) Handle primary replica events in the striped pool

2024-05-03 Thread Vladislav Pyatkov (Jira)


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

Vladislav Pyatkov updated IGNITE-21258:
---
Description: 
h3. Motivation
We seek to decrease the load on the metastorage thread because when the MC 
thread is holding, it blocks the handling of other events.
{code}
placementDriver.listen(PrimaryReplicaEvent.PRIMARY_REPLICA_ELECTED, 
this::onPrimaryReplicaElected);
placementDriver.listen(PrimaryReplicaEvent.PRIMARY_REPLICA_EXPIRED, 
this::onPrimaryReplicaExpired);
{code}
Currently, both primary replica events are handled on the MC thread, though the 
striped executer is a well-suited place to do it.

h3. Definition of done
Move handling of the primary replica events (PRIMARY_REPLICA_ELECTED, 
PRIMARY_REPLICA_EXPIRED) in the striped pool.

  was:
h3. Motivation
We seek to decrease the load on the metastorage thread because when the MC 
thread is holding, it blocks the handling of other events.
{code}
placementDriver.listen(PrimaryReplicaEvent.PRIMARY_REPLICA_ELECTED, 
this::onPrimaryReplicaElected);
placementDriver.listen(PrimaryReplicaEvent.PRIMARY_REPLICA_EXPIRED, 
this::onPrimaryReplicaExpired);
{code}
Currently, both primary replica events are handled on the MC thread, though the 
striped executer is a well-suited place to do it.

h3. Defenition of done
Move handling of the primary replica events (PRIMARY_REPLICA_ELECTED, 
PRIMARY_REPLICA_EXPIRED) in the striped pool.


> Handle primary replica events in the striped pool
> -
>
> Key: IGNITE-21258
> URL: https://issues.apache.org/jira/browse/IGNITE-21258
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Vladislav Pyatkov
>Priority: Major
>  Labels: ignite-3
>
> h3. Motivation
> We seek to decrease the load on the metastorage thread because when the MC 
> thread is holding, it blocks the handling of other events.
> {code}
> placementDriver.listen(PrimaryReplicaEvent.PRIMARY_REPLICA_ELECTED, 
> this::onPrimaryReplicaElected);
> placementDriver.listen(PrimaryReplicaEvent.PRIMARY_REPLICA_EXPIRED, 
> this::onPrimaryReplicaExpired);
> {code}
> Currently, both primary replica events are handled on the MC thread, though 
> the striped executer is a well-suited place to do it.
> h3. Definition of done
> Move handling of the primary replica events (PRIMARY_REPLICA_ELECTED, 
> PRIMARY_REPLICA_EXPIRED) in the striped pool.



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


[jira] [Commented] (IGNITE-22128) Balancing partitions across stripes

2024-05-03 Thread Vladislav Pyatkov (Jira)


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

Vladislav Pyatkov commented on IGNITE-22128:


Merged 654a11a4a00919ce2b3ff4ca0e59e83377124dea

> Balancing partitions across stripes
> ---
>
> Key: IGNITE-22128
> URL: https://issues.apache.org/jira/browse/IGNITE-22128
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Vladislav Pyatkov
>Assignee: Vladislav Pyatkov
>Priority: Major
>  Labels: ignite-3
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> h3. Motivation
> Right now, we use a hash to balance partitions.
> {code:java}
> public int getStripe(NodeId nodeId) {
>   return Math.abs(nodeId.hashCode() % stripes);
> }
> {code}
> This approach might lead to a skew.
> h3. Definition of done
> Partition is distributed statically by the honest round-robin algorithm.



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


[jira] [Assigned] (IGNITE-22163) Fix potential NPE in IndexManager

2024-05-03 Thread Mirza Aliev (Jira)


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

Mirza Aliev reassigned IGNITE-22163:


Assignee: Mirza Aliev

> Fix potential NPE in IndexManager 
> --
>
> Key: IGNITE-22163
> URL: https://issues.apache.org/jira/browse/IGNITE-22163
> Project: Ignite
>  Issue Type: Bug
>Reporter: Mirza Aliev
>Assignee: Mirza Aliev
>Priority: Major
>  Labels: ignite-3
>
> {{org.apache.ignite.internal.index.IndexManager#getMvTableStorage}} could 
> produce NPE 
> if {{tableAsync}} is not ready 
> {code:java}
> CompletableFuture getMvTableStorage(long causalityToken, 
> int tableId) {
> return tableManager.tableAsync(causalityToken, 
> tableId).thenApply(table -> table.internalTable().storage());
> }
> {code}
> Need to fix this 



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


[jira] [Updated] (IGNITE-22000) Sql. Get rid of unnecessary conversion of DDL commands

2024-05-03 Thread Pavel Pereslegin (Jira)


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

Pavel Pereslegin updated IGNITE-22000:
--
Summary: Sql. Get rid of unnecessary conversion of DDL commands  (was: Sql. 
Get rid of DdlSqlToCommandConverter)

> Sql. Get rid of unnecessary conversion of DDL commands
> --
>
> Key: IGNITE-22000
> URL: https://issues.apache.org/jira/browse/IGNITE-22000
> Project: Ignite
>  Issue Type: Improvement
>  Components: sql
>Reporter: Pavel Pereslegin
>Assignee: Pavel Pereslegin
>Priority: Major
>  Labels: ignite-3, refactoring
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Every DDL command goes through two levels of conversion now.
> From {{AST}} into {{DdlCommand}} using {{DdlSqlToCommandConverter}}.
> And from {{DdlCommand}} into {{CatalogCommand}} (using 
> {{DdlToCatalogCommandConverter}}).
> It looks like we should do only single conversion {{AST}} => 
> {{CatalogCommand}}.



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


[jira] [Resolved] (IGNITE-22063) aimem partition deletion doesn't delete GC queue

2024-05-03 Thread Kirill Tkalenko (Jira)


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

Kirill Tkalenko resolved IGNITE-22063.
--
Resolution: Invalid

We are already destroying the gc queue.

> aimem partition deletion doesn't delete GC queue
> 
>
> Key: IGNITE-22063
> URL: https://issues.apache.org/jira/browse/IGNITE-22063
> Project: Ignite
>  Issue Type: Bug
>Reporter: Ivan Bessonov
>Assignee: Kirill Tkalenko
>Priority: Major
>  Labels: ignite-3
>
> {{org.apache.ignite.internal.storage.pagememory.mv.VolatilePageMemoryMvPartitionStorage#destroyStructures}}



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


[jira] [Updated] (IGNITE-22063) aimem partition deletion doesn't delete GC queue

2024-05-03 Thread Kirill Tkalenko (Jira)


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

Kirill Tkalenko updated IGNITE-22063:
-
Fix Version/s: 3.0.0-beta2

> aimem partition deletion doesn't delete GC queue
> 
>
> Key: IGNITE-22063
> URL: https://issues.apache.org/jira/browse/IGNITE-22063
> Project: Ignite
>  Issue Type: Bug
>Reporter: Ivan Bessonov
>Assignee: Kirill Tkalenko
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>
> {{org.apache.ignite.internal.storage.pagememory.mv.VolatilePageMemoryMvPartitionStorage#destroyStructures}}



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


[jira] [Created] (IGNITE-22163) Fix potential NPE in IndexManager

2024-05-03 Thread Mirza Aliev (Jira)
Mirza Aliev created IGNITE-22163:


 Summary: Fix potential NPE in IndexManager 
 Key: IGNITE-22163
 URL: https://issues.apache.org/jira/browse/IGNITE-22163
 Project: Ignite
  Issue Type: Bug
Reporter: Mirza Aliev


{{org.apache.ignite.internal.index.IndexManager#getMvTableStorage}} could 
produce NPE 
if {{tableAsync}} is not ready 

{code:java}
CompletableFuture getMvTableStorage(long causalityToken, 
int tableId) {
return tableManager.tableAsync(causalityToken, tableId).thenApply(table 
-> table.internalTable().storage());
}
{code}

Need to fix this 




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


[jira] [Assigned] (IGNITE-22063) aimem partition deletion doesn't delete GC queue

2024-05-03 Thread Kirill Tkalenko (Jira)


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

Kirill Tkalenko reassigned IGNITE-22063:


Assignee: Kirill Tkalenko

> aimem partition deletion doesn't delete GC queue
> 
>
> Key: IGNITE-22063
> URL: https://issues.apache.org/jira/browse/IGNITE-22063
> Project: Ignite
>  Issue Type: Bug
>Reporter: Ivan Bessonov
>Assignee: Kirill Tkalenko
>Priority: Major
>  Labels: ignite-3
>
> {{org.apache.ignite.internal.storage.pagememory.mv.VolatilePageMemoryMvPartitionStorage#destroyStructures}}



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


[jira] [Assigned] (IGNITE-21299) Rest API for disaster recovery commands

2024-05-03 Thread Kirill Tkalenko (Jira)


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

Kirill Tkalenko reassigned IGNITE-21299:


Assignee: (was: Kirill Tkalenko)

> Rest API for disaster recovery commands
> ---
>
> Key: IGNITE-21299
> URL: https://issues.apache.org/jira/browse/IGNITE-21299
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Ivan Bessonov
>Priority: Major
>  Labels: ignite-3
>
> Please refer to https://issues.apache.org/jira/browse/IGNITE-21298 for a list



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


[jira] [Assigned] (IGNITE-21299) Rest API for disaster recovery commands

2024-05-03 Thread Kirill Tkalenko (Jira)


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

Kirill Tkalenko reassigned IGNITE-21299:


Assignee: Kirill Tkalenko

> Rest API for disaster recovery commands
> ---
>
> Key: IGNITE-21299
> URL: https://issues.apache.org/jira/browse/IGNITE-21299
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Ivan Bessonov
>Assignee: Kirill Tkalenko
>Priority: Major
>  Labels: ignite-3
>
> Please refer to https://issues.apache.org/jira/browse/IGNITE-21298 for a list



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