[jira] [Commented] (IGNITE-14076) Quadratic putAll performance degradation in transactional cache

2021-03-24 Thread Stanilovsky Evgeny (Jira)


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

Stanilovsky Evgeny commented on IGNITE-14076:
-

i believe it improve code reading and clearing.

> Quadratic putAll performance degradation in transactional cache
> ---
>
> Key: IGNITE-14076
> URL: https://issues.apache.org/jira/browse/IGNITE-14076
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache
>Affects Versions: 2.10
>Reporter: Pavel Tupitsyn
>Assignee: Stanilovsky Evgeny
>Priority: Critical
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> {{putAll}} execution time grows almost exponentially while the number of keys 
> grows linearly in the following test:
> {code:java}
> public class PutAllTxTest extends GridCommonAbstractTest {
> @Test
> public void testPutAll() throws Exception {
> Ignition.start(getConfiguration("server1"));
> Ignition.start(getConfiguration("server2"));
> Ignite ignite = 
> Ignition.start(getConfiguration("client").setClientMode(true));
> IgniteCache cache = ignite.createCache(
> new CacheConfiguration("c")
> .setAtomicityMode(CacheAtomicityMode.TRANSACTIONAL));
> int count = 5;
> Map data = new TreeMap<>();
> for (int i = 0; i < count; i++)
> data.put(i, i);
> long begin = System.nanoTime();
> cache.putAll(data);
> long dur = System.nanoTime() - begin;
> System.out.println("> " + dur / 100);
> }
> }
> {code}
> ||Entries||Seconds||
> |1000|0.4|
> |5000|1.9|
> |1|3.8|
> |2|10.7|
> |3|23.5|
> |4|41|
> |5|64|
> |6|90|
> |10|254|
> This does not reproduce with 1 server node, and does not reproduce on 
> {{ATOMIC}} caches with any number of nodes.
> *Observations:*
> - Not a GC issue (it barely runs)
> - Not a memory issue (heap is under 1GB)
> - GridDhtTxPrepareFuture#localDhtPendingVersions -> 
> GridCacheMapEntry.localCandidates is the bottleneck. For 1K keys, 
> localCandidates gets called 123K times, 2K keys - 484K times, etc.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (IGNITE-14394) Baseline auto-adjustment does not happen when 2+ nodes join the cluster

2021-03-24 Thread Vyacheslav Koptilin (Jira)
Vyacheslav Koptilin created IGNITE-14394:


 Summary: Baseline auto-adjustment does not happen when 2+ nodes 
join the cluster
 Key: IGNITE-14394
 URL: https://issues.apache.org/jira/browse/IGNITE-14394
 Project: Ignite
  Issue Type: Bug
Reporter: Vyacheslav Koptilin
Assignee: Vyacheslav Koptilin


In the case of baseline topology autoadjustment is enabled and a few server 
nodes join the cluster the autoadjustment may not be triggered.

Steps to reproduce:
1. start ignite cluster and enable baseline autoadjustment
2. start 2+ server nodes (in order to reproduce the issue, the corresponding 
exchange should be merged)
3. wait for baseline autoadjustment 




--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (IGNITE-14076) Quadratic putAll performance degradation in transactional cache

2021-03-24 Thread Vladislav Pyatkov (Jira)


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

Vladislav Pyatkov commented on IGNITE-14076:


[~zstan] I have watched your patch and didn't understand what the purpose of 
change in GridNearOptimisticTxPrepareFuture.java.
 

> Quadratic putAll performance degradation in transactional cache
> ---
>
> Key: IGNITE-14076
> URL: https://issues.apache.org/jira/browse/IGNITE-14076
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache
>Affects Versions: 2.10
>Reporter: Pavel Tupitsyn
>Assignee: Stanilovsky Evgeny
>Priority: Critical
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> {{putAll}} execution time grows almost exponentially while the number of keys 
> grows linearly in the following test:
> {code:java}
> public class PutAllTxTest extends GridCommonAbstractTest {
> @Test
> public void testPutAll() throws Exception {
> Ignition.start(getConfiguration("server1"));
> Ignition.start(getConfiguration("server2"));
> Ignite ignite = 
> Ignition.start(getConfiguration("client").setClientMode(true));
> IgniteCache cache = ignite.createCache(
> new CacheConfiguration("c")
> .setAtomicityMode(CacheAtomicityMode.TRANSACTIONAL));
> int count = 5;
> Map data = new TreeMap<>();
> for (int i = 0; i < count; i++)
> data.put(i, i);
> long begin = System.nanoTime();
> cache.putAll(data);
> long dur = System.nanoTime() - begin;
> System.out.println("> " + dur / 100);
> }
> }
> {code}
> ||Entries||Seconds||
> |1000|0.4|
> |5000|1.9|
> |1|3.8|
> |2|10.7|
> |3|23.5|
> |4|41|
> |5|64|
> |6|90|
> |10|254|
> This does not reproduce with 1 server node, and does not reproduce on 
> {{ATOMIC}} caches with any number of nodes.
> *Observations:*
> - Not a GC issue (it barely runs)
> - Not a memory issue (heap is under 1GB)
> - GridDhtTxPrepareFuture#localDhtPendingVersions -> 
> GridCacheMapEntry.localCandidates is the bottleneck. For 1K keys, 
> localCandidates gets called 123K times, 2K keys - 484K times, etc.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Assigned] (IGNITE-14393) Describe components interactions with metastorage

2021-03-24 Thread Alexey Goncharuk (Jira)


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

Alexey Goncharuk reassigned IGNITE-14393:
-

Assignee: Alexey Goncharuk

> Describe components interactions with metastorage
> -
>
> Key: IGNITE-14393
> URL: https://issues.apache.org/jira/browse/IGNITE-14393
> Project: Ignite
>  Issue Type: Improvement
>  Components: documentation
>Affects Versions: 3.0.0-alpha1
>Reporter: Alexey Goncharuk
>Assignee: Alexey Goncharuk
>Priority: Major
>  Labels: iep-61, ignite-3
> Fix For: 3.0.0-alpha2
>
>
> We want to use metastorage as the golden source of the cluster state. Need to 
> describe how components will interact with each other based on metastorage 
> key writes and watches.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (IGNITE-14393) Describe components interactions with metastorage

2021-03-24 Thread Alexey Goncharuk (Jira)


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

Alexey Goncharuk updated IGNITE-14393:
--
Ignite Flags:   (was: Docs Required,Release Notes Required)

> Describe components interactions with metastorage
> -
>
> Key: IGNITE-14393
> URL: https://issues.apache.org/jira/browse/IGNITE-14393
> Project: Ignite
>  Issue Type: Improvement
>  Components: documentation
>Affects Versions: 3.0.0-alpha1
>Reporter: Alexey Goncharuk
>Priority: Major
>  Labels: iep-61, ignite-3
> Fix For: 3.0.0-alpha2
>
>
> We want to use metastorage as the golden source of the cluster state. Need to 
> describe how components will interact with each other based on metastorage 
> key writes and watches.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (IGNITE-14393) Describe components interactions with metastorage

2021-03-24 Thread Alexey Goncharuk (Jira)


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

Alexey Goncharuk updated IGNITE-14393:
--
Labels: iep-61 ignite-3  (was: )

> Describe components interactions with metastorage
> -
>
> Key: IGNITE-14393
> URL: https://issues.apache.org/jira/browse/IGNITE-14393
> Project: Ignite
>  Issue Type: Improvement
>  Components: documentation
>Affects Versions: 3.0.0-alpha1
>Reporter: Alexey Goncharuk
>Priority: Major
>  Labels: iep-61, ignite-3
> Fix For: 3.0.0-alpha2
>
>
> We want to use metastorage as the golden source of the cluster state. Need to 
> describe how components will interact with each other based on metastorage 
> key writes and watches.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (IGNITE-14393) Describe components interactions with metastorage

2021-03-24 Thread Alexey Goncharuk (Jira)
Alexey Goncharuk created IGNITE-14393:
-

 Summary: Describe components interactions with metastorage
 Key: IGNITE-14393
 URL: https://issues.apache.org/jira/browse/IGNITE-14393
 Project: Ignite
  Issue Type: Improvement
  Components: documentation
Affects Versions: 3.0.0-alpha1
Reporter: Alexey Goncharuk
 Fix For: 3.0.0-alpha2


We want to use metastorage as the golden source of the cluster state. Need to 
describe how components will interact with each other based on metastorage key 
writes and watches.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (IGNITE-14388) Add affinity key support.

2021-03-24 Thread Andrey Mashenkov (Jira)


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

Andrey Mashenkov updated IGNITE-14388:
--
Description: 
For now, we calculate key hash for a whole key chunk represented with byte[].
Let's calculate key hash for affinity columns only.

> Add affinity key support.
> -
>
> Key: IGNITE-14388
> URL: https://issues.apache.org/jira/browse/IGNITE-14388
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Andrey Mashenkov
>Priority: Major
>  Labels: iep-54, ignite-3
>
> For now, we calculate key hash for a whole key chunk represented with byte[].
> Let's calculate key hash for affinity columns only.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (IGNITE-14388) Add affinity key support.

2021-03-24 Thread Andrey Mashenkov (Jira)


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

Andrey Mashenkov updated IGNITE-14388:
--
Environment: (was: For now, we calculate key hash for a whole key chunk 
represented with byte[].
Let's calculate key hash for affinity columns only.)

> Add affinity key support.
> -
>
> Key: IGNITE-14388
> URL: https://issues.apache.org/jira/browse/IGNITE-14388
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Andrey Mashenkov
>Priority: Major
>  Labels: iep-54, ignite-3
>




--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Resolved] (IGNITE-14387) [Ignite Website] Update for events schedule

2021-03-24 Thread Mauricio Stekl (Jira)


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

Mauricio Stekl resolved IGNITE-14387.
-
Resolution: Fixed

[~romanova.ks.spb] I've added the event to the calendar. 

> [Ignite Website] Update for events schedule
> ---
>
> Key: IGNITE-14387
> URL: https://issues.apache.org/jira/browse/IGNITE-14387
> Project: Ignite
>  Issue Type: Task
>  Components: website
>Reporter: Kseniya Romanova
>Assignee: Mauricio Stekl
>Priority: Minor
>
> [~mstekl]  please add new event to [the schedule 
> :|https://ignite.apache.org/events.html]
> Distributed Java DBs Under the Hood: Components & Interactions Between Them 
> Chicago PostgreSQL Meetup Group, Val Kulichenko
> April 13, 2021
> During the session, we create a simple (although fully workable) distributed 
> cache in Java, almost from scratch. We use the cache to demonstrate basic 
> CRUD operations, as well as to demonstrate how scalability can be improved by 
> adding resources to the system.
> Read more = 
> https://www.meetup.com/Chicago-PostgreSQL-User-Group/events/277073375/
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Assigned] (IGNITE-14387) [Ignite Website] Update for events schedule

2021-03-24 Thread Mauricio Stekl (Jira)


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

Mauricio Stekl reassigned IGNITE-14387:
---

Assignee: Mauricio Stekl

> [Ignite Website] Update for events schedule
> ---
>
> Key: IGNITE-14387
> URL: https://issues.apache.org/jira/browse/IGNITE-14387
> Project: Ignite
>  Issue Type: Task
>  Components: website
>Reporter: Kseniya Romanova
>Assignee: Mauricio Stekl
>Priority: Minor
>
> [~mstekl]  please add new event to [the schedule 
> :|https://ignite.apache.org/events.html]
> Distributed Java DBs Under the Hood: Components & Interactions Between Them 
> Chicago PostgreSQL Meetup Group, Val Kulichenko
> April 13, 2021
> During the session, we create a simple (although fully workable) distributed 
> cache in Java, almost from scratch. We use the cache to demonstrate basic 
> CRUD operations, as well as to demonstrate how scalability can be improved by 
> adding resources to the system.
> Read more = 
> https://www.meetup.com/Chicago-PostgreSQL-User-Group/events/277073375/
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (IGNITE-14392) Remove the SQL Transactions page from Apache Ignite docs

2021-03-24 Thread Nikita Safonov (Jira)
Nikita Safonov created IGNITE-14392:
---

 Summary: Remove the SQL Transactions page from Apache Ignite docs
 Key: IGNITE-14392
 URL: https://issues.apache.org/jira/browse/IGNITE-14392
 Project: Ignite
  Issue Type: Improvement
  Components: documentation
Reporter: Nikita Safonov
Assignee: Nikita Safonov


The page: 
[https://ignite.apache.org/docs/latest/SQL/sql-transactions|https://www.gridgain.com/docs/latest/developers-guide/SQL/sql-transactions]
 * We should remove it from the menu (toc.yaml)

 * We should make sure it's not indexed by Google -> need to update robot.txt 

 * We should check references to this page from other pages. The references do 
exist.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (IGNITE-14391) Multi-node cache data preloading

2021-03-24 Thread Dmitriy Sorokin (Jira)


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

Dmitriy Sorokin updated IGNITE-14391:
-
Description: 
Need to add the test parameter {{preloaders}} and use it as {{num_nodes}} 
parameter on creation {{IgniteApplicationService}} instance used for data 
preloading.
The keys of preloading data entries should be distributed between client nodes 
as equal sized ranges.

  was:
Need to add the test parameter {{client_node_count}} and use it as 
{{num_nodes}} parameter on creation {{IgniteApplicationService}} instance used 
for data preloading.
The keys of preloading data entries should be distributed between client nodes 
as equal sized ranges.


> Multi-node cache data preloading
> 
>
> Key: IGNITE-14391
> URL: https://issues.apache.org/jira/browse/IGNITE-14391
> Project: Ignite
>  Issue Type: Sub-task
>Reporter: Dmitriy Sorokin
>Assignee: Dmitriy Sorokin
>Priority: Major
>
> Need to add the test parameter {{preloaders}} and use it as {{num_nodes}} 
> parameter on creation {{IgniteApplicationService}} instance used for data 
> preloading.
> The keys of preloading data entries should be distributed between client 
> nodes as equal sized ranges.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (IGNITE-14391) Multi-node cache data preloading

2021-03-24 Thread Dmitriy Sorokin (Jira)
Dmitriy Sorokin created IGNITE-14391:


 Summary: Multi-node cache data preloading
 Key: IGNITE-14391
 URL: https://issues.apache.org/jira/browse/IGNITE-14391
 Project: Ignite
  Issue Type: Sub-task
Reporter: Dmitriy Sorokin
Assignee: Dmitriy Sorokin


Need to add the test parameter {{client_node_count}} and use it as 
{{num_nodes}} parameter on creation {{IgniteApplicationService}} instance used 
for data preloading.
The keys of preloading data entries should be distributed between client nodes 
as equal sized ranges.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (IGNITE-14390) Add rebalance statistic to test result data

2021-03-24 Thread Dmitriy Sorokin (Jira)
Dmitriy Sorokin created IGNITE-14390:


 Summary: Add rebalance statistic to test result data
 Key: IGNITE-14390
 URL: https://issues.apache.org/jira/browse/IGNITE-14390
 Project: Ignite
  Issue Type: Sub-task
Reporter: Dmitriy Sorokin
Assignee: Dmitriy Sorokin


Need to add to test result data the rebalance statistic data derived from node 
rebalance metrics:

start_time [min, max]
end_time [min, max]
duration [min, max, sum]
received_bytes [min, max, sum]



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (IGNITE-14389) Implement simple in-memory meta storage

2021-03-24 Thread Andrey N. Gura (Jira)


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

Andrey N. Gura updated IGNITE-14389:

Labels: iep-61 ignite-3  (was: ignite-3)

> Implement simple in-memory meta storage
> ---
>
> Key: IGNITE-14389
> URL: https://issues.apache.org/jira/browse/IGNITE-14389
> Project: Ignite
>  Issue Type: New Feature
>Reporter: Andrey N. Gura
>Assignee: Andrey N. Gura
>Priority: Major
>  Labels: iep-61, ignite-3
> Fix For: 3.0.0-alpha2
>
>
> Simple in-memory meta storage should be implemented in order to: 
>  - Unblock development of dependent components.
>  - Provide ability to develop integration tests.
>  - Verify concepts and approaches defined by interface.
> In-memory meta storage should satisfy to the following requirements:
> - It should implement interface (not literally of course) defined in 
> IGNITE-14198 issue.
> - It should use simple in-memory data structures as storage.
> - It should be single-threaded for read-write requests (except of watch).
> - Ranges reads could be processed in another thread but it is not mandatory 
> in first iteration.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (IGNITE-14269) Design conditional multi update functionality for meta storage client

2021-03-24 Thread Andrey N. Gura (Jira)


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

Andrey N. Gura updated IGNITE-14269:

Labels: iep-61 ignite-3  (was: ignite-3)

> Design conditional multi update functionality for meta storage client
> -
>
> Key: IGNITE-14269
> URL: https://issues.apache.org/jira/browse/IGNITE-14269
> Project: Ignite
>  Issue Type: New Feature
>Reporter: Andrey N. Gura
>Assignee: Andrey N. Gura
>Priority: Major
>  Labels: iep-61, ignite-3
> Fix For: 3.0.0-alpha2
>
>
> Define entities required for implementation of conditional multi updates (aka 
> "transactions") for meta storage.
> Requirements:
> - Design should provide possibility to define conditional updates in 
> if-then-else manner with nested branches.
> - Update always starts with condition.
> - Any nested branch must start with condition. 
> - Update can't precede to condition.
> - Every branch can yield exactly one custom result (limited by number of 
> simple types) and any number of entries. Corresponding expression always must 
> be at the end of branch.
> - Condition for entry revision allows the following comparisons: equal, 
> !equal, less, greater.
> - Condition for entry value allows the following operations (byte-wise): 
> equal, !equal.
> - Update allows the following operations: put, remove, no-op.
> - Condition can not use previously defined condition instance again because 
> it will lead to graph cycle and infinite update execution.
> Assumptions:
> - It seems that conditions and updates entities can be conveniently linked 
> using chaining.
> Simple example (pseudocode):
> {code}
> CompletableFuture> = invoke(valCond(EQUAL, 
> perstEnabled, true)._then(
>  valCond(EQUAL, walEnabled, true)._then(
>  update(walEnabled, true)).
>  _else(
>  update(walEnabled, false))
> )._else(NoopUpdate))
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (IGNITE-14389) Implement simple in-memory meta storage

2021-03-24 Thread Andrey N. Gura (Jira)


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

Andrey N. Gura updated IGNITE-14389:

Labels: ignite-3  (was: )

> Implement simple in-memory meta storage
> ---
>
> Key: IGNITE-14389
> URL: https://issues.apache.org/jira/browse/IGNITE-14389
> Project: Ignite
>  Issue Type: New Feature
>Reporter: Andrey N. Gura
>Assignee: Andrey N. Gura
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-alpha2
>
>
> Simple in-memory meta storage should be implemented in order to: 
>  - Unblock development of dependent components.
>  - Provide ability to develop integration tests.
>  - Verify concepts and approaches defined by interface.
> In-memory meta storage should satisfy to the following requirements:
> - It should implement interface (not literally of course) defined in 
> IGNITE-14198 issue.
> - It should use simple in-memory data structures as storage.
> - It should be single-threaded for read-write requests (except of watch).
> - Ranges reads could be processed in another thread but it is not mandatory 
> in first iteration.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (IGNITE-14269) Design conditional multi update functionality for meta storage client

2021-03-24 Thread Andrey N. Gura (Jira)


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

Andrey N. Gura updated IGNITE-14269:

Labels: ignite-3  (was: )

> Design conditional multi update functionality for meta storage client
> -
>
> Key: IGNITE-14269
> URL: https://issues.apache.org/jira/browse/IGNITE-14269
> Project: Ignite
>  Issue Type: New Feature
>Reporter: Andrey N. Gura
>Assignee: Andrey N. Gura
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-alpha2
>
>
> Define entities required for implementation of conditional multi updates (aka 
> "transactions") for meta storage.
> Requirements:
> - Design should provide possibility to define conditional updates in 
> if-then-else manner with nested branches.
> - Update always starts with condition.
> - Any nested branch must start with condition. 
> - Update can't precede to condition.
> - Every branch can yield exactly one custom result (limited by number of 
> simple types) and any number of entries. Corresponding expression always must 
> be at the end of branch.
> - Condition for entry revision allows the following comparisons: equal, 
> !equal, less, greater.
> - Condition for entry value allows the following operations (byte-wise): 
> equal, !equal.
> - Update allows the following operations: put, remove, no-op.
> - Condition can not use previously defined condition instance again because 
> it will lead to graph cycle and infinite update execution.
> Assumptions:
> - It seems that conditions and updates entities can be conveniently linked 
> using chaining.
> Simple example (pseudocode):
> {code}
> CompletableFuture> = invoke(valCond(EQUAL, 
> perstEnabled, true)._then(
>  valCond(EQUAL, walEnabled, true)._then(
>  update(walEnabled, true)).
>  _else(
>  update(walEnabled, false))
> )._else(NoopUpdate))
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (IGNITE-14389) Implement simple in-memory meta storage

2021-03-24 Thread Andrey N. Gura (Jira)
Andrey N. Gura created IGNITE-14389:
---

 Summary: Implement simple in-memory meta storage
 Key: IGNITE-14389
 URL: https://issues.apache.org/jira/browse/IGNITE-14389
 Project: Ignite
  Issue Type: New Feature
Reporter: Andrey N. Gura
Assignee: Andrey N. Gura
 Fix For: 3.0.0-alpha2


Simple in-memory meta storage should be implemented in order to: 
 - Unblock development of dependent components.
 - Provide ability to develop integration tests.
 - Verify concepts and approaches defined by interface.

In-memory meta storage should satisfy to the following requirements:

- It should implement interface (not literally of course) defined in 
IGNITE-14198 issue.
- It should use simple in-memory data structures as storage.
- It should be single-threaded for read-write requests (except of watch).
- Ranges reads could be processed in another thread but it is not mandatory in 
first iteration.





--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (IGNITE-14388) Add affinity key support.

2021-03-24 Thread Andrey Mashenkov (Jira)
Andrey Mashenkov created IGNITE-14388:
-

 Summary: Add affinity key support.
 Key: IGNITE-14388
 URL: https://issues.apache.org/jira/browse/IGNITE-14388
 Project: Ignite
  Issue Type: Improvement
 Environment: For now, we calculate key hash for a whole key chunk 
represented with byte[].
Let's calculate key hash for affinity columns only.
Reporter: Andrey Mashenkov






--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (IGNITE-14076) Quadratic putAll performance degradation in transactional cache

2021-03-24 Thread Vyacheslav Koptilin (Jira)


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

Vyacheslav Koptilin updated IGNITE-14076:
-
Reviewer: Vladislav Pyatkov  (was: Slava Koptilin)

> Quadratic putAll performance degradation in transactional cache
> ---
>
> Key: IGNITE-14076
> URL: https://issues.apache.org/jira/browse/IGNITE-14076
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache
>Affects Versions: 2.10
>Reporter: Pavel Tupitsyn
>Assignee: Stanilovsky Evgeny
>Priority: Critical
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> {{putAll}} execution time grows almost exponentially while the number of keys 
> grows linearly in the following test:
> {code:java}
> public class PutAllTxTest extends GridCommonAbstractTest {
> @Test
> public void testPutAll() throws Exception {
> Ignition.start(getConfiguration("server1"));
> Ignition.start(getConfiguration("server2"));
> Ignite ignite = 
> Ignition.start(getConfiguration("client").setClientMode(true));
> IgniteCache cache = ignite.createCache(
> new CacheConfiguration("c")
> .setAtomicityMode(CacheAtomicityMode.TRANSACTIONAL));
> int count = 5;
> Map data = new TreeMap<>();
> for (int i = 0; i < count; i++)
> data.put(i, i);
> long begin = System.nanoTime();
> cache.putAll(data);
> long dur = System.nanoTime() - begin;
> System.out.println("> " + dur / 100);
> }
> }
> {code}
> ||Entries||Seconds||
> |1000|0.4|
> |5000|1.9|
> |1|3.8|
> |2|10.7|
> |3|23.5|
> |4|41|
> |5|64|
> |6|90|
> |10|254|
> This does not reproduce with 1 server node, and does not reproduce on 
> {{ATOMIC}} caches with any number of nodes.
> *Observations:*
> - Not a GC issue (it barely runs)
> - Not a memory issue (heap is under 1GB)
> - GridDhtTxPrepareFuture#localDhtPendingVersions -> 
> GridCacheMapEntry.localCandidates is the bottleneck. For 1K keys, 
> localCandidates gets called 123K times, 2K keys - 484K times, etc.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (IGNITE-13056) SchemaManager refactoring

2021-03-24 Thread Konstantin Orlov (Jira)


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

Konstantin Orlov commented on IGNITE-13056:
---

Hi, [~timonin.maksim]. Now the patch looks good to me. Thanks for your effort!

[~tledkov-gridgain], could you please also take a look and merge if you are OK 
with these changes?

> SchemaManager refactoring
> -
>
> Key: IGNITE-13056
> URL: https://issues.apache.org/jira/browse/IGNITE-13056
> Project: Ignite
>  Issue Type: New Feature
>  Components: sql
>Affects Versions: 2.8
>Reporter: Nikolay Izhikov
>Assignee: Maksim Timonin
>Priority: Major
>  Labels: IEP-49, calcite
>  Time Spent: 10h 20m
>  Remaining Estimate: 0h
>
> Since Ignite wants to leverage from several SQL engines we need to make work 
> with index independent from the used SQL engine.
> We also should consider moving all machinery related to an index to the core 
> module to make it available from any module that wants to use it.
> Requirements so far:
> * Ability to track indexes in several engines



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (IGNITE-14387) [Ignite Website] Update for events schedule

2021-03-24 Thread Kseniya Romanova (Jira)
Kseniya Romanova created IGNITE-14387:
-

 Summary: [Ignite Website] Update for events schedule
 Key: IGNITE-14387
 URL: https://issues.apache.org/jira/browse/IGNITE-14387
 Project: Ignite
  Issue Type: Task
  Components: website
Reporter: Kseniya Romanova


[~mstekl]  please add new event to [the schedule 
:|https://ignite.apache.org/events.html]

Distributed Java DBs Under the Hood: Components & Interactions Between Them 
Chicago PostgreSQL Meetup Group, Val Kulichenko
April 13, 2021
During the session, we create a simple (although fully workable) distributed 
cache in Java, almost from scratch. We use the cache to demonstrate basic CRUD 
operations, as well as to demonstrate how scalability can be improved by adding 
resources to the system.

Read more = 
https://www.meetup.com/Chicago-PostgreSQL-User-Group/events/277073375/

 

 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (IGNITE-13670) Skip writing null-map and varlen table when possible

2021-03-24 Thread Alexey Goncharuk (Jira)


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

Alexey Goncharuk updated IGNITE-13670:
--
Summary: Skip writing null-map and varlen table when possible  (was: 
Upgrade nullmap to null-defaults map)

> Skip writing null-map and varlen table when possible
> 
>
> Key: IGNITE-13670
> URL: https://issues.apache.org/jira/browse/IGNITE-13670
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Alexey Goncharuk
>Priority: Major
>  Labels: iep-54, ignite-3
>
> The nullmap is currently always written to the tuple layout for all columns 
> (even if there are no nullable columns). This data structure can be further 
> used to encode default values for non-nullable columns (either a 
> user-specified value or 0 for primitives).
> The bits will still be left unused for non-null non-primitive types (UUID, 
> String, byte[], etc).
> Also, need to add support for skipping writing nullmaps (use the flags bit).



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (IGNITE-14386) Failure handler triggered on doneFut.get() in Checkpointer.syncUpdatedStores@db-checkpoint-thread

2021-03-24 Thread Ilya Kasnacheev (Jira)
Ilya Kasnacheev created IGNITE-14386:


 Summary: Failure handler triggered on doneFut.get() in 
Checkpointer.syncUpdatedStores@db-checkpoint-thread
 Key: IGNITE-14386
 URL: https://issues.apache.org/jira/browse/IGNITE-14386
 Project: Ignite
  Issue Type: Bug
  Components: persistence
Affects Versions: 2.10
Reporter: Ilya Kasnacheev
Assignee: Ilya Kasnacheev


{code}
Thread [name="binary-metadata-writer-#71", id=97, state=RUNNABLE, blockCnt=0, 
waitCnt=8612]
at java.base@11.0.6/sun.nio.ch.FileDispatcherImpl.force0(Native Method)
at java.base@11.0.6/sun.nio.ch.FileDispatcherImpl.force(Unknown Source)
at 
java.base@11.0.6/sun.nio.ch.SimpleAsynchronousFileChannelImpl.force(Unknown 
Source)
at 
app//o.a.i.i.processors.cache.persistence.file.AsyncFileIO.force(AsyncFileIO.java:216)
at 
app//o.a.i.i.processors.cache.persistence.file.AsyncFileIO.force(AsyncFileIO.java:211)
at 
app//o.a.i.i.processors.cache.binary.BinaryMetadataFileStore.writeMetadata(BinaryMetadataFileStore.java:143)
at 
app//o.a.i.i.processors.cache.binary.BinaryMetadataFileStore$WriteOperationTask.execute(BinaryMetadataFileStore.java:653)
at 
app//o.a.i.i.processors.cache.binary.BinaryMetadataFileStore$BinaryMetadataAsyncWriter.body0(BinaryMetadataFileStore.java:463)
at 
app//o.a.i.i.processors.cache.binary.BinaryMetadataFileStore$BinaryMetadataAsyncWriter.body(BinaryMetadataFileStore.java:435)
at app//o.a.i.i.util.worker.GridWorker.run(GridWorker.java:119)
at java.base@11.0.6/java.lang.Thread.run(Unknown Source)

Thread [name="db-checkpoint-thread-#116", id=148, state=WAITING, blockCnt=3, 
waitCnt=13147]
at java.base@11.0.6/jdk.internal.misc.Unsafe.park(Native Method)
at java.base@11.0.6/java.util.concurrent.locks.LockSupport.park(Unknown 
Source)
at 
app//o.a.i.i.util.future.GridFutureAdapter.get0(GridFutureAdapter.java:186)
at 
app//o.a.i.i.util.future.GridFutureAdapter.get(GridFutureAdapter.java:149)
at 
app//o.a.i.i.processors.cache.persistence.checkpoint.Checkpointer.syncUpdatedStores(Checkpointer.java:631)
at 
app//o.a.i.i.processors.cache.persistence.checkpoint.Checkpointer.writePages(Checkpointer.java:550)
at 
app//o.a.i.i.processors.cache.persistence.checkpoint.Checkpointer.doCheckpoint(Checkpointer.java:428)
at 
app//o.a.i.i.processors.cache.persistence.checkpoint.Checkpointer.body(Checkpointer.java:264)
at app//o.a.i.i.util.worker.GridWorker.run(GridWorker.java:119)
at java.base@11.0.6/java.lang.Thread.run(Unknown Source)

Thread [name="checkpoint-runner-IO-#131", id=163, state=RUNNABLE, blockCnt=35, 
waitCnt=5157152]
at java.base@11.0.6/sun.nio.ch.FileDispatcherImpl.force0(Native Method)
at java.base@11.0.6/sun.nio.ch.FileDispatcherImpl.force(Unknown Source)
at 
java.base@11.0.6/sun.nio.ch.SimpleAsynchronousFileChannelImpl.force(Unknown 
Source)
at 
app//o.a.i.i.processors.cache.persistence.file.AsyncFileIO.force(AsyncFileIO.java:216)
at 
app//o.a.i.i.processors.cache.persistence.file.AsyncFileIO.force(AsyncFileIO.java:211)
at 
app//o.a.i.i.processors.cache.persistence.file.FilePageStore.sync(FilePageStore.java:715)
at 
app//o.a.i.i.processors.cache.persistence.checkpoint.Checkpointer.lambda$syncUpdatedStores$0(Checkpointer.java:608)
at 
app//o.a.i.i.processors.cache.persistence.checkpoint.Checkpointer$$Lambda$760/0x7f877929a500.run(Unknown
 Source)
at 
java.base@11.0.6/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown 
Source)
at 
java.base@11.0.6/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown 
Source)
at java.base@11.0.6/java.lang.Thread.run(Unknown Source)

Thread [name="client-connector-#1849", id=3130, state=WAITING, blockCnt=11, 
waitCnt=77047]
at java.base@11.0.6/jdk.internal.misc.Unsafe.park(Native Method)
at java.base@11.0.6/java.util.concurrent.locks.LockSupport.park(Unknown 
Source)
at 
app//o.a.i.i.util.future.GridFutureAdapter.get0(GridFutureAdapter.java:186)
at 
app//o.a.i.i.util.future.GridFutureAdapter.get(GridFutureAdapter.java:149)
at 
app//o.a.i.i.processors.cache.binary.BinaryMetadataFileStore$BinaryMetadataAsyncWriter.waitForWriteCompletion(BinaryMetadataFileStore.java:586)
at 
app//o.a.i.i.processors.cache.binary.BinaryMetadataFileStore.waitForWriteCompletion(BinaryMetadataFileStore.java:294)
at 
app//o.a.i.i.processors.cache.binary.CacheObjectBinaryProcessorImpl.metadata0(CacheObjectBinaryProcessorImpl.java:733)
at 
app//o.a.i.i.processors.cache.binary.CacheObjectBinaryProcessorImpl.metadata(CacheObjectBinaryProcessorImpl.java:646)
at 

[jira] [Issue Comment Deleted] (IGNITE-12033) Callbacks from striped pool due to async/await may hang cluster

2021-03-24 Thread Pavel Tupitsyn (Jira)


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

Pavel Tupitsyn updated IGNITE-12033:

Comment: was deleted

(was: {panel:title=Branch: [pull/8870/head] Base: [master] : Possible Blockers 
(2)|borderStyle=dashed|borderColor=#ccc|titleBGColor=#F7D6C1}
{color:#d04437}Cache 7{color} [[tests 
1|https://ci.ignite.apache.org/viewLog.html?buildId=5930552]]
* IgniteCacheTestSuite7: 
TxRollbackAsyncWithPersistenceTest.testMixedAsyncRollbackTypes - Test has low 
fail rate in base branch 0,0% and is not flaky

{color:#d04437}PDS 4{color} [[tests 0 TIMEOUT , Exit Code 
|https://ci.ignite.apache.org/viewLog.html?buildId=5930564]]

{panel}
{panel:title=Branch: [pull/8870/head] Base: [master] : New Tests 
(10)|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}
{color:#8b}Cache 1{color} [[tests 
4|https://ci.ignite.apache.org/viewLog.html?buildId=5930546]]
* {color:#013220}IgniteBinaryCacheTestSuite: 
CacheAsyncContinuationExecutorTest.testRemoteOperationContinuesOnDefaultExecutor
 - PASSED{color}
* {color:#013220}IgniteBinaryCacheTestSuite: 
CacheAsyncContinuationSynchronousExecutorTest.testLocalOperationExecutesSynchronously
 - PASSED{color}
* {color:#013220}IgniteBinaryCacheTestSuite: 
CacheAsyncContinuationExecutorTest.testLocalOperationExecutesSynchronously - 
PASSED{color}
* {color:#013220}IgniteBinaryCacheTestSuite: 
CacheAsyncContinuationSynchronousExecutorTest.testRemoteOperationContinuesOnDefaultExecutor
 - PASSED{color}

{color:#8b}Platform .NET (Core Linux){color} [[tests 
6|https://ci.ignite.apache.org/viewLog.html?buildId=5930608]]
* {color:#013220}dll: ComputeTestAsyncAwait.TestComputeExecuteAsyncContinuation 
- PASSED{color}
* {color:#013220}dll: ComputeTestAsyncAwait.TestComputeRunAsyncContinuation - 
PASSED{color}
* {color:#013220}dll: 
CacheTestAsyncAwait.TestSynchronousExecutorRunsContinuationsOnStripedPool - 
PASSED{color}
* {color:#013220}dll: 
CacheTestAsyncAwait.TestInvalidExecutorConfigurationFailsOnStart - PASSED{color}
* {color:#013220}dll: 
CacheTestAsyncAwait.TestLocalOperationExecutesSynchronously - PASSED{color}
* {color:#013220}dll: 
CacheTestAsyncAwait.TestAsyncAwaitContinuationIsExecutedWithConfiguredExecutor 
- PASSED{color}

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

> Callbacks from striped pool due to async/await may hang cluster
> ---
>
> Key: IGNITE-12033
> URL: https://issues.apache.org/jira/browse/IGNITE-12033
> Project: Ignite
>  Issue Type: Bug
>  Components: cache, platforms
>Affects Versions: 2.7.5
>Reporter: Ilya Kasnacheev
>Assignee: Pavel Tupitsyn
>Priority: Critical
>  Labels: iep-70
> Fix For: 2.11
>
>  Time Spent: 50m
>  Remaining Estimate: 0h
>
> Discussed on dev-list:
> http://apache-ignite-developers.2346864.n4.nabble.com/Re-EXTERNAL-Re-Replace-or-Put-after-PutAsync-causes-Ignite-to-hang-td42921.html
> *Must use the public pool for callbacks as the most obvious step.*
> 
> http://apache-ignite-users.70518.x6.nabble.com/Replace-or-Put-after-PutAsync-causes-Ignite-to-hang-td27871.html#a28051
> There's a reproducer project. Long story short, .Net can invoke cache 
> operations with future callbacks, which will be invoked from striped pool. If 
> such callbacks are to use cache operations, those will be possibly sheduled 
> to the same stripe and cause a deadlock.
> The code is very simple:
> {code}
> Console.WriteLine("PutAsync");
> await cache.PutAsync(1, "Test");
> Console.WriteLine("Replace");
> cache.Replace(1, "Testing"); // Hangs here
> Console.WriteLine("Wait");
> await Task.Delay(Timeout.Infinite); 
> {code}
> async/await should absolutely not allow any client code to be run from 
> stripes.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (IGNITE-12033) Callbacks from striped pool due to async/await may hang cluster

2021-03-24 Thread Ignite TC Bot (Jira)


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

Ignite TC Bot commented on IGNITE-12033:


{panel:title=Branch: [pull/8870/head] Base: [master] : No blockers 
found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel}
{panel:title=Branch: [pull/8870/head] Base: [master] : New Tests 
(10)|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}
{color:#8b}Cache 1{color} [[tests 
4|https://ci.ignite.apache.org/viewLog.html?buildId=5930546]]
* {color:#013220}IgniteBinaryCacheTestSuite: 
CacheAsyncContinuationExecutorTest.testRemoteOperationContinuesOnDefaultExecutor
 - PASSED{color}
* {color:#013220}IgniteBinaryCacheTestSuite: 
CacheAsyncContinuationSynchronousExecutorTest.testLocalOperationExecutesSynchronously
 - PASSED{color}
* {color:#013220}IgniteBinaryCacheTestSuite: 
CacheAsyncContinuationExecutorTest.testLocalOperationExecutesSynchronously - 
PASSED{color}
* {color:#013220}IgniteBinaryCacheTestSuite: 
CacheAsyncContinuationSynchronousExecutorTest.testRemoteOperationContinuesOnDefaultExecutor
 - PASSED{color}

{color:#8b}Platform .NET (Core Linux){color} [[tests 
6|https://ci.ignite.apache.org/viewLog.html?buildId=5930608]]
* {color:#013220}dll: ComputeTestAsyncAwait.TestComputeExecuteAsyncContinuation 
- PASSED{color}
* {color:#013220}dll: ComputeTestAsyncAwait.TestComputeRunAsyncContinuation - 
PASSED{color}
* {color:#013220}dll: 
CacheTestAsyncAwait.TestSynchronousExecutorRunsContinuationsOnStripedPool - 
PASSED{color}
* {color:#013220}dll: 
CacheTestAsyncAwait.TestInvalidExecutorConfigurationFailsOnStart - PASSED{color}
* {color:#013220}dll: 
CacheTestAsyncAwait.TestLocalOperationExecutesSynchronously - PASSED{color}
* {color:#013220}dll: 
CacheTestAsyncAwait.TestAsyncAwaitContinuationIsExecutedWithConfiguredExecutor 
- PASSED{color}

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

> Callbacks from striped pool due to async/await may hang cluster
> ---
>
> Key: IGNITE-12033
> URL: https://issues.apache.org/jira/browse/IGNITE-12033
> Project: Ignite
>  Issue Type: Bug
>  Components: cache, platforms
>Affects Versions: 2.7.5
>Reporter: Ilya Kasnacheev
>Assignee: Pavel Tupitsyn
>Priority: Critical
>  Labels: iep-70
> Fix For: 2.11
>
>  Time Spent: 50m
>  Remaining Estimate: 0h
>
> Discussed on dev-list:
> http://apache-ignite-developers.2346864.n4.nabble.com/Re-EXTERNAL-Re-Replace-or-Put-after-PutAsync-causes-Ignite-to-hang-td42921.html
> *Must use the public pool for callbacks as the most obvious step.*
> 
> http://apache-ignite-users.70518.x6.nabble.com/Replace-or-Put-after-PutAsync-causes-Ignite-to-hang-td27871.html#a28051
> There's a reproducer project. Long story short, .Net can invoke cache 
> operations with future callbacks, which will be invoked from striped pool. If 
> such callbacks are to use cache operations, those will be possibly sheduled 
> to the same stripe and cause a deadlock.
> The code is very simple:
> {code}
> Console.WriteLine("PutAsync");
> await cache.PutAsync(1, "Test");
> Console.WriteLine("Replace");
> cache.Replace(1, "Testing"); // Hangs here
> Console.WriteLine("Wait");
> await Task.Delay(Timeout.Infinite); 
> {code}
> async/await should absolutely not allow any client code to be run from 
> stripes.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (IGNITE-14372) Fix REST json configuration update requests

2021-03-24 Thread Sergey Chugunov (Jira)


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

Sergey Chugunov commented on IGNITE-14372:
--

[~ibessonov],

Patch looks good to me, checks have passed on the PR. I think it is ready for 
merge to main branch.

> Fix REST json configuration update requests
> ---
>
> Key: IGNITE-14372
> URL: https://issues.apache.org/jira/browse/IGNITE-14372
> Project: Ignite
>  Issue Type: Sub-task
>Reporter: Ivan Bessonov
>Priority: Major
>  Time Spent: 4.5h
>  Remaining Estimate: 0h
>




--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (IGNITE-14385) Add start/end time of checkpoint, rebalance, PME to performance statistics.

2021-03-24 Thread Sergei Ryzhov (Jira)
Sergei Ryzhov created IGNITE-14385:
--

 Summary: Add start/end time of checkpoint, rebalance, PME to 
performance statistics.
 Key: IGNITE-14385
 URL: https://issues.apache.org/jira/browse/IGNITE-14385
 Project: Ignite
  Issue Type: Sub-task
Reporter: Sergei Ryzhov
Assignee: Sergei Ryzhov


Add start/end time of checkpoint, rebalance, PME to performance statistics.
Add these labels to the performance statistics graphs.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (IGNITE-14345) There is a spelling error in the debug information

2021-03-24 Thread xin.ch...@intotech.com.cn (Jira)


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

xin.ch...@intotech.com.cn updated IGNITE-14345:
---
Priority: Trivial  (was: Minor)

> There is a spelling error in the debug information
> --
>
> Key: IGNITE-14345
> URL: https://issues.apache.org/jira/browse/IGNITE-14345
> Project: Ignite
>  Issue Type: Improvement
>Reporter: xin.ch...@intotech.com.cn
>Priority: Trivial
> Attachments: Snipaste_2021-03-19_10-13-23.png
>
>
>  
> This code is in the 
> org.apache.ignite.spi.discovery.tcp.ServerImpl.spiStart(String).I think it 
> should be TCP, not TPC.
> !Snipaste_2021-03-19_10-13-23.png|width=677,height=203!



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (IGNITE-14377) Enchance log of node ping failure.

2021-03-24 Thread Anton Vinogradov (Jira)


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

Anton Vinogradov updated IGNITE-14377:
--
Fix Version/s: 2.11

> Enchance log of node ping failure.
> --
>
> Key: IGNITE-14377
> URL: https://issues.apache.org/jira/browse/IGNITE-14377
> Project: Ignite
>  Issue Type: Sub-task
>Reporter: Vladimir Steshin
>Assignee: Vladimir Steshin
>Priority: Minor
> Fix For: 2.11
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Log of unsuccessful ping during the joining is insufficient. No failure 
> reason is logged.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (IGNITE-14377) Enchance log of node ping failure.

2021-03-24 Thread Anton Vinogradov (Jira)


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

Anton Vinogradov commented on IGNITE-14377:
---

Merged into master.

Thanks for your contribution.

> Enchance log of node ping failure.
> --
>
> Key: IGNITE-14377
> URL: https://issues.apache.org/jira/browse/IGNITE-14377
> Project: Ignite
>  Issue Type: Sub-task
>Reporter: Vladimir Steshin
>Assignee: Vladimir Steshin
>Priority: Minor
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Log of unsuccessful ping during the joining is insufficient. No failure 
> reason is logged.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (IGNITE-14378) Remove delay from node ping.

2021-03-24 Thread Anton Vinogradov (Jira)


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

Anton Vinogradov updated IGNITE-14378:
--
Fix Version/s: 2.11

> Remove delay from node ping.
> 
>
> Key: IGNITE-14378
> URL: https://issues.apache.org/jira/browse/IGNITE-14378
> Project: Ignite
>  Issue Type: Bug
>Reporter: Vladimir Steshin
>Assignee: Vladimir Steshin
>Priority: Minor
> Fix For: 2.11
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Remove U.sleep(200) from the node ping.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (IGNITE-14384) Remove diagnostics at the stop of the node in case of CorruptedTreeException

2021-03-24 Thread Kirill Tkalenko (Jira)
Kirill Tkalenko created IGNITE-14384:


 Summary: Remove diagnostics at the stop of the node in case of 
CorruptedTreeException
 Key: IGNITE-14384
 URL: https://issues.apache.org/jira/browse/IGNITE-14384
 Project: Ignite
  Issue Type: Improvement
  Components: persistence
Reporter: Kirill Tkalenko
Assignee: Kirill Tkalenko
 Fix For: 2.11


When an error *CorruptedTreeException*, diagnostics are launched, which may 
take a long time and do not allow the node to be stopped until it completes. 

Instead of waiting for a long time to complete the diagnostics, a command will 
be output that will allow to do it offline.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (IGNITE-14383) No need to update metastorage if cache statistics disabled.

2021-03-24 Thread Stanilovsky Evgeny (Jira)
Stanilovsky Evgeny created IGNITE-14383:
---

 Summary: No need to update metastorage if cache statistics 
disabled.
 Key: IGNITE-14383
 URL: https://issues.apache.org/jira/browse/IGNITE-14383
 Project: Ignite
  Issue Type: Improvement
  Components: cache
Affects Versions: 2.10
Reporter: Stanilovsky Evgeny
Assignee: Stanilovsky Evgeny


Id cache statistics disabled there is no need to update metastorage and send 
numerous DistributedMetaStorageUpdateMessage as a result.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (IGNITE-14382) Network module API structuring

2021-03-24 Thread Sergey Chugunov (Jira)
Sergey Chugunov created IGNITE-14382:


 Summary: Network module API structuring
 Key: IGNITE-14382
 URL: https://issues.apache.org/jira/browse/IGNITE-14382
 Project: Ignite
  Issue Type: Sub-task
  Components: networking
Reporter: Sergey Chugunov
 Fix For: 3.0.0-alpha2


First version of the network module introduced a NetworkCluster interface 
providing access to all functionality of the module: sending and receiving 
messages in p2p fashion, topology API (current set of online nodes, node join 
and left events) and some lifecycle-related methods.

Further development has shown that it makes sense to gather these pieces of 
functionality under separate interfaces that should be accessible from 
NetworkCluster or similar single entry point.

Suggestions for naming of these interfaces: *Topology* and *Messaging*. Keeping 
lifecycle callbacks and methods under the same interface seems natural at the 
moment.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)