[jira] [Commented] (IGNITE-12209) Transaction system view

2019-10-01 Thread Ignite TC Bot (Jira)


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

Ignite TC Bot commented on IGNITE-12209:


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

> Transaction system view
> ---
>
> Key: IGNITE-12209
> URL: https://issues.apache.org/jira/browse/IGNITE-12209
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7.6
>Reporter: Nikolay Izhikov
>Assignee: Nikolay Izhikov
>Priority: Major
>  Labels: IEP-35
> Fix For: 2.8
>
>  Time Spent: 1h 50m
>  Remaining Estimate: 0h
>
> IGNITE-12145 finished
> We should add transactions to the system views.



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


[jira] [Commented] (IGNITE-12209) Transaction system view

2019-09-30 Thread Alexei Scherbakov (Jira)


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

Alexei Scherbakov commented on IGNITE-12209:


[~nizhikov]
Looks good.

> Transaction system view
> ---
>
> Key: IGNITE-12209
> URL: https://issues.apache.org/jira/browse/IGNITE-12209
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7.6
>Reporter: Nikolay Izhikov
>Assignee: Nikolay Izhikov
>Priority: Major
>  Labels: IEP-35
> Fix For: 2.8
>
>  Time Spent: 1h 50m
>  Remaining Estimate: 0h
>
> IGNITE-12145 finished
> We should add transactions to the system views.



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


[jira] [Commented] (IGNITE-12209) Transaction system view

2019-09-30 Thread Nikolay Izhikov (Jira)


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

Nikolay Izhikov commented on IGNITE-12209:
--

> Or we talking only about IgniteTxState#cacheIds?

I've added try catch for a cacheIds. 
Please, take a look.


> Transaction system view
> ---
>
> Key: IGNITE-12209
> URL: https://issues.apache.org/jira/browse/IGNITE-12209
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7.6
>Reporter: Nikolay Izhikov
>Assignee: Nikolay Izhikov
>Priority: Major
>  Labels: IEP-35
> Fix For: 2.8
>
>  Time Spent: 1h 50m
>  Remaining Estimate: 0h
>
> IGNITE-12145 finished
> We should add transactions to the system views.



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


[jira] [Commented] (IGNITE-12209) Transaction system view

2019-09-30 Thread Nikolay Izhikov (Jira)


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

Nikolay Izhikov commented on IGNITE-12209:
--

> I would add try ... catch block to avoid issues.

We should wrap every execution of every method to try catch  blocks if we 
follow this kind of logic.

> Writing a code on assumption what this will not happen is bad.
> In fact, both can fail if something will change if future in underlying 
> implementation.

What, exactly, "will not happen"?

execution of {{size()}} can't fail because of Collection contract.
If it throws an exception it a bug that will lead to specific system view error.

> Transaction system view
> ---
>
> Key: IGNITE-12209
> URL: https://issues.apache.org/jira/browse/IGNITE-12209
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7.6
>Reporter: Nikolay Izhikov
>Assignee: Nikolay Izhikov
>Priority: Major
>  Labels: IEP-35
> Fix For: 2.8
>
>  Time Spent: 1h 50m
>  Remaining Estimate: 0h
>
> IGNITE-12145 finished
> We should add transactions to the system views.



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


[jira] [Commented] (IGNITE-12209) Transaction system view

2019-09-30 Thread Alexei Scherbakov (Jira)


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

Alexei Scherbakov commented on IGNITE-12209:


allEntries has multiple implementations. What one are you talking about ? Are 
you sure all implementations are safe ?

In fact, both can fail if something will change if future in underlying 
implementation.
Writing a code on assumption what this will not happen is bad.

I would add try ... catch block to avoid issues.




> Transaction system view
> ---
>
> Key: IGNITE-12209
> URL: https://issues.apache.org/jira/browse/IGNITE-12209
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7.6
>Reporter: Nikolay Izhikov
>Assignee: Nikolay Izhikov
>Priority: Major
>  Labels: IEP-35
> Fix For: 2.8
>
>  Time Spent: 1h 50m
>  Remaining Estimate: 0h
>
> IGNITE-12145 finished
> We should add transactions to the system views.



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


[jira] [Commented] (IGNITE-12209) Transaction system view

2019-09-30 Thread Nikolay Izhikov (Jira)


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

Nikolay Izhikov commented on IGNITE-12209:
--

> AFAIK call of the size can't fail.
> There are absolutely no guarantee this would always work.

Did you mean the execution of size can fail?
Or we talking only about {{IgniteTxState#cacheIds}}?

What kind of guarantees do you want to see?

> Transaction system view
> ---
>
> Key: IGNITE-12209
> URL: https://issues.apache.org/jira/browse/IGNITE-12209
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7.6
>Reporter: Nikolay Izhikov
>Assignee: Nikolay Izhikov
>Priority: Major
>  Labels: IEP-35
> Fix For: 2.8
>
>  Time Spent: 1h 50m
>  Remaining Estimate: 0h
>
> IGNITE-12145 finished
> We should add transactions to the system views.



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


[jira] [Commented] (IGNITE-12209) Transaction system view

2019-09-30 Thread Alexei Scherbakov (Jira)


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

Alexei Scherbakov commented on IGNITE-12209:


[~nizhikov]

There are absolutely no guarantee this would always work. 
Having catch block is 100% safe.


> Transaction system view
> ---
>
> Key: IGNITE-12209
> URL: https://issues.apache.org/jira/browse/IGNITE-12209
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7.6
>Reporter: Nikolay Izhikov
>Assignee: Nikolay Izhikov
>Priority: Major
>  Labels: IEP-35
> Fix For: 2.8
>
>  Time Spent: 1h 50m
>  Remaining Estimate: 0h
>
> IGNITE-12145 finished
> We should add transactions to the system views.



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


[jira] [Commented] (IGNITE-12209) Transaction system view

2019-09-30 Thread Nikolay Izhikov (Jira)


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

Nikolay Izhikov commented on IGNITE-12209:
--

[~ascherbakov]

> org.apache.ignite.internal.processors.cache.transactions.IgniteTxState#allEntries

AFAIK call of the {{size}} can't fail.
I've added {{null}} check, because some implementation can return null.

> org.apache.ignite.internal.processors.cache.transactions.IgniteTxState#cacheIds

As I can see, {{cacheIds}} is add only collection.
I've added {{null}} check.

I think we can cache current size of the cache id and simply iterate over 
{{cacheIds}} values.

Please, take a look at the current implementation

> Transaction system view
> ---
>
> Key: IGNITE-12209
> URL: https://issues.apache.org/jira/browse/IGNITE-12209
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7.6
>Reporter: Nikolay Izhikov
>Assignee: Nikolay Izhikov
>Priority: Major
>  Labels: IEP-35
> Fix For: 2.8
>
>  Time Spent: 1h 50m
>  Remaining Estimate: 0h
>
> IGNITE-12145 finished
> We should add transactions to the system views.



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


[jira] [Commented] (IGNITE-12209) Transaction system view

2019-09-30 Thread Alexei Scherbakov (Jira)


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

Alexei Scherbakov commented on IGNITE-12209:


[~nizhikov]

Note what 
org.apache.ignite.internal.processors.cache.transactions.IgniteTxState#allEntries
 and 
org.apache.ignite.internal.processors.cache.transactions.IgniteTxState#cacheIds 
are unsynchronized and can be concurrently updated if a transaction enlists 
keys in the moment of view producing.

So current implementation is unsafe but probably will work somehow. 
I suggest to enclose methods in try .. catch(Throwable) to implement fallback 
in case something goes wrong.


> Transaction system view
> ---
>
> Key: IGNITE-12209
> URL: https://issues.apache.org/jira/browse/IGNITE-12209
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7.6
>Reporter: Nikolay Izhikov
>Assignee: Nikolay Izhikov
>Priority: Major
>  Labels: IEP-35
> Fix For: 2.8
>
>  Time Spent: 1h 50m
>  Remaining Estimate: 0h
>
> IGNITE-12145 finished
> We should add transactions to the system views.



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


[jira] [Commented] (IGNITE-12209) Transaction system view

2019-09-30 Thread Denis Garus (Jira)


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

Denis Garus commented on IGNITE-12209:
--

LGFM

> Transaction system view
> ---
>
> Key: IGNITE-12209
> URL: https://issues.apache.org/jira/browse/IGNITE-12209
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7.6
>Reporter: Nikolay Izhikov
>Assignee: Nikolay Izhikov
>Priority: Major
>  Labels: IEP-35
> Fix For: 2.8
>
>  Time Spent: 1h 50m
>  Remaining Estimate: 0h
>
> IGNITE-12145 finished
> We should add transactions to the system views.



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


[jira] [Commented] (IGNITE-12209) Transaction system view

2019-09-28 Thread Nikolay Izhikov (Jira)


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

Nikolay Izhikov commented on IGNITE-12209:
--

[~ascherbakov]

> Enlisted cache ids are held in 
> org.apache.ignite.internal.processors.cache.transactions.IgniteTxState#cacheIds.
>  No need to traverse entries.

Thanks for the advice. CacheIds field added to the TransactionView.
Please, review.

> Transaction system view
> ---
>
> Key: IGNITE-12209
> URL: https://issues.apache.org/jira/browse/IGNITE-12209
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7.6
>Reporter: Nikolay Izhikov
>Assignee: Nikolay Izhikov
>Priority: Major
>  Labels: IEP-35
> Fix For: 2.8
>
>  Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> IGNITE-12145 finished
> We should add transactions to the system views.



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


[jira] [Commented] (IGNITE-12209) Transaction system view

2019-09-28 Thread Nikolay Izhikov (Jira)


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

Nikolay Izhikov commented on IGNITE-12209:
--

[~ascherbakov]

> I do not understand why we couldn't have local views and do distributed 
> queries agains them.

1. This ticket is not the right place for such kind of discussion. We should 
discuss it on the dev-list
2. Maybe I don't get your idea. Now I read it one more time and it makes sense.

> Transaction system view
> ---
>
> Key: IGNITE-12209
> URL: https://issues.apache.org/jira/browse/IGNITE-12209
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7.6
>Reporter: Nikolay Izhikov
>Assignee: Nikolay Izhikov
>Priority: Major
>  Labels: IEP-35
> Fix For: 2.8
>
>  Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> IGNITE-12145 finished
> We should add transactions to the system views.



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


[jira] [Commented] (IGNITE-12209) Transaction system view

2019-09-28 Thread Alexei Scherbakov (Jira)


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

Alexei Scherbakov commented on IGNITE-12209:


[~nizhikov]

I do not understand why we couldn't have local views and do distributed queries 
agains them.
SQL is great for such analytic tasks.

Enlisted cache ids are held in 
org.apache.ignite.internal.processors.cache.transactions.IgniteTxState#cacheIds.
 No need to traverse entries.

> Transaction system view
> ---
>
> Key: IGNITE-12209
> URL: https://issues.apache.org/jira/browse/IGNITE-12209
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7.6
>Reporter: Nikolay Izhikov
>Assignee: Nikolay Izhikov
>Priority: Major
>  Labels: IEP-35
> Fix For: 2.8
>
>  Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> IGNITE-12145 finished
> We should add transactions to the system views.



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


[jira] [Commented] (IGNITE-12209) Transaction system view

2019-09-27 Thread Nikolay Izhikov (Jira)


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

Nikolay Izhikov commented on IGNITE-12209:
--

> must be added to output.

columns except "cache ids/names" added. Please, take a look.

> Transaction system view
> ---
>
> Key: IGNITE-12209
> URL: https://issues.apache.org/jira/browse/IGNITE-12209
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7.6
>Reporter: Nikolay Izhikov
>Assignee: Nikolay Izhikov
>Priority: Major
>  Labels: IEP-35
> Fix For: 2.8
>
>  Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> IGNITE-12145 finished
> We should add transactions to the system views.



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


[jira] [Commented] (IGNITE-12209) Transaction system view

2019-09-27 Thread Nikolay Izhikov (Jira)


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

Nikolay Izhikov commented on IGNITE-12209:
--

[~ascherbakov]

As of {{cache ids/names}}, I think we should export transaction keys as a 
separate system view because of performance.
Building cache ids by iterating on transaction entries for each row seems 
inefficient.

What do you think?

> Transaction system view
> ---
>
> Key: IGNITE-12209
> URL: https://issues.apache.org/jira/browse/IGNITE-12209
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7.6
>Reporter: Nikolay Izhikov
>Assignee: Nikolay Izhikov
>Priority: Major
>  Labels: IEP-35
> Fix For: 2.8
>
>  Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> IGNITE-12145 finished
> We should add transactions to the system views.



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


[jira] [Commented] (IGNITE-12209) Transaction system view

2019-09-27 Thread Nikolay Izhikov (Jira)


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

Nikolay Izhikov commented on IGNITE-12209:
--

> Do you think it's possible to implement grid global system views in future ?

I think technically it's possible.

But I think we shouldn't do it.
>From my point of view system views and metrics should stay local only.

But, we should get a tracing framework that, I think, will be provided by 
[~agura], shortly.
We will be able to trace all transactions and their mutual influence.



> Transaction system view
> ---
>
> Key: IGNITE-12209
> URL: https://issues.apache.org/jira/browse/IGNITE-12209
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7.6
>Reporter: Nikolay Izhikov
>Assignee: Nikolay Izhikov
>Priority: Major
>  Labels: IEP-35
> Fix For: 2.8
>
>  Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> IGNITE-12145 finished
> We should add transactions to the system views.



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


[jira] [Commented] (IGNITE-12209) Transaction system view

2019-09-27 Thread Alexei Scherbakov (Jira)


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

Alexei Scherbakov commented on IGNITE-12209:


[~nizhikov]

This is sad. 
Such feature would allow to produce interesting views on transaction snapshots. 
I don't know implementation details but in theory it should work out of the box 
using current SQL engine and distributed joins.
Do you think it's possible to implement grid global system views in future ?

> Transaction system view
> ---
>
> Key: IGNITE-12209
> URL: https://issues.apache.org/jira/browse/IGNITE-12209
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7.6
>Reporter: Nikolay Izhikov
>Assignee: Nikolay Izhikov
>Priority: Major
>  Labels: IEP-35
> Fix For: 2.8
>
>  Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> IGNITE-12145 finished
> We should add transactions to the system views.



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


[jira] [Commented] (IGNITE-12209) Transaction system view

2019-09-27 Thread Nikolay Izhikov (Jira)


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

Nikolay Izhikov commented on IGNITE-12209:
--

Hello, [~ascherbakov]

Thanks for the review.
WIll add properties, shortly.

> Would it be possible to construct whole distributed transaction using SQL 
> joins (joining by parent and local node) ?

For now, We export only local data in metrics and system view.
So, the answer is no, I think.


> Transaction system view
> ---
>
> Key: IGNITE-12209
> URL: https://issues.apache.org/jira/browse/IGNITE-12209
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7.6
>Reporter: Nikolay Izhikov
>Assignee: Nikolay Izhikov
>Priority: Major
>  Labels: IEP-35
> Fix For: 2.8
>
>  Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> IGNITE-12145 finished
> We should add transactions to the system views.



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


[jira] [Commented] (IGNITE-12209) Transaction system view

2019-09-27 Thread Alexei Scherbakov (Jira)


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

Alexei Scherbakov commented on IGNITE-12209:


[~nizhikov]

I think 

* parent node id (tx.originatingNodeId), 
* near node id (tx.otherNodeId),
* mapped topVer, 
* duration, 
* number of currently enlisted keys, 
* cache ids/names 

must be added to output.

Note what tx.nodeId is not originating but local node for tx. You should change 
javadoc.

Would it be possible to construct whole distributed transaction using SQL joins 
(joining by parent and local node) ?








> Transaction system view
> ---
>
> Key: IGNITE-12209
> URL: https://issues.apache.org/jira/browse/IGNITE-12209
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7.6
>Reporter: Nikolay Izhikov
>Assignee: Nikolay Izhikov
>Priority: Major
>  Labels: IEP-35
> Fix For: 2.8
>
>  Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> IGNITE-12145 finished
> We should add transactions to the system views.



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


[jira] [Commented] (IGNITE-12209) Transaction system view

2019-09-23 Thread Nikolay Izhikov (Jira)


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

Nikolay Izhikov commented on IGNITE-12209:
--

Hello.

[~ascherbakov]
[~alex_pl]

Can you take a look at this patch?
It's add transactions system view to the product.

> Transaction system view
> ---
>
> Key: IGNITE-12209
> URL: https://issues.apache.org/jira/browse/IGNITE-12209
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7.6
>Reporter: Nikolay Izhikov
>Assignee: Nikolay Izhikov
>Priority: Major
>  Labels: IEP-35
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> IGNITE-12145 finished
> We should add transactions to the system views.



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