[jira] [Commented] (TEPHRA-224) Handle delay between transaction max lifetime check and data writes while pruning

2017-02-22 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/TEPHRA-224?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15879424#comment-15879424
 ] 

ASF GitHub Bot commented on TEPHRA-224:
---

Github user poornachandra commented on the issue:

https://github.com/apache/incubator-tephra/pull/38
  
Merged this PR to branch release/0.11.0-incubating


> Handle delay between transaction max lifetime check and data writes while 
> pruning
> -
>
> Key: TEPHRA-224
> URL: https://issues.apache.org/jira/browse/TEPHRA-224
> Project: Tephra
>  Issue Type: Sub-task
>Reporter: Poorna Chandra
>Assignee: Poorna Chandra
> Fix For: 0.11.0-incubating
>
>
> Transaction pruning relies on inactive transaction bound (a bound that says 
> at a given time there will be no transactions smaller than inactive 
> transaction bound that can still be writing data). To determine the inactive 
> transaction bound for a given time, TEPHRA-199 introduced transaction maximum 
> lifetime.
> However there can be a delay between the transaction max lifetime being 
> enforced and the write reaching HBase. Hence it would be good to use a buffer 
> to pad the transaction max lifetime when pruning.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TEPHRA-224) Handle delay between transaction max lifetime check and data writes while pruning

2017-02-22 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/TEPHRA-224?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15879425#comment-15879425
 ] 

ASF GitHub Bot commented on TEPHRA-224:
---

Github user poornachandra closed the pull request at:

https://github.com/apache/incubator-tephra/pull/38


> Handle delay between transaction max lifetime check and data writes while 
> pruning
> -
>
> Key: TEPHRA-224
> URL: https://issues.apache.org/jira/browse/TEPHRA-224
> Project: Tephra
>  Issue Type: Sub-task
>Reporter: Poorna Chandra
>Assignee: Poorna Chandra
> Fix For: 0.11.0-incubating
>
>
> Transaction pruning relies on inactive transaction bound (a bound that says 
> at a given time there will be no transactions smaller than inactive 
> transaction bound that can still be writing data). To determine the inactive 
> transaction bound for a given time, TEPHRA-199 introduced transaction maximum 
> lifetime.
> However there can be a delay between the transaction max lifetime being 
> enforced and the write reaching HBase. Hence it would be good to use a buffer 
> to pad the transaction max lifetime when pruning.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TEPHRA-224) Handle delay between transaction max lifetime check and data writes while pruning

2017-02-22 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/TEPHRA-224?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15879333#comment-15879333
 ] 

ASF GitHub Bot commented on TEPHRA-224:
---

Github user anew commented on the issue:

https://github.com/apache/incubator-tephra/pull/38
  
LGTM


> Handle delay between transaction max lifetime check and data writes while 
> pruning
> -
>
> Key: TEPHRA-224
> URL: https://issues.apache.org/jira/browse/TEPHRA-224
> Project: Tephra
>  Issue Type: Sub-task
>Reporter: Poorna Chandra
>Assignee: Poorna Chandra
> Fix For: 0.12.0-incubating
>
>
> Transaction pruning relies on inactive transaction bound (a bound that says 
> at a given time there will be no transactions smaller than inactive 
> transaction bound that can still be writing data). To determine the inactive 
> transaction bound for a given time, TEPHRA-199 introduced transaction maximum 
> lifetime.
> However there can be a delay between the transaction max lifetime being 
> enforced and the write reaching HBase. Hence it would be good to use a buffer 
> to pad the transaction max lifetime when pruning.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TEPHRA-224) Handle delay between transaction max lifetime check and data writes while pruning

2017-02-22 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/TEPHRA-224?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15879144#comment-15879144
 ] 

ASF GitHub Bot commented on TEPHRA-224:
---

Github user poornachandra commented on the issue:

https://github.com/apache/incubator-tephra/pull/38
  
@anew @chtyim  I have addressed comments. Please take another look.


> Handle delay between transaction max lifetime check and data writes while 
> pruning
> -
>
> Key: TEPHRA-224
> URL: https://issues.apache.org/jira/browse/TEPHRA-224
> Project: Tephra
>  Issue Type: Sub-task
>Reporter: Poorna Chandra
>Assignee: Poorna Chandra
> Fix For: 0.12.0-incubating
>
>
> Transaction pruning relies on inactive transaction bound (a bound that says 
> at a given time there will be no transactions smaller than inactive 
> transaction bound that can still be writing data). To determine the inactive 
> transaction bound for a given time, TEPHRA-199 introduced transaction maximum 
> lifetime.
> However there can be a delay between the transaction max lifetime being 
> enforced and the write reaching HBase. Hence it would be good to use a buffer 
> to pad the transaction max lifetime when pruning.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TEPHRA-224) Handle delay between transaction max lifetime check and data writes while pruning

2017-02-22 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/TEPHRA-224?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15879123#comment-15879123
 ] 

ASF GitHub Bot commented on TEPHRA-224:
---

Github user poornachandra commented on a diff in the pull request:

https://github.com/apache/incubator-tephra/pull/38#discussion_r102559503
  
--- Diff: 
tephra-core/src/main/java/org/apache/tephra/txprune/TransactionPruningRunnable.java
 ---
@@ -57,8 +60,13 @@ public void run() {
   Transaction tx = txManager.startShort();
   txManager.abort(tx);
 
+  if (tx.getInvalids().length == 0) {
+LOG.info("Invalid list is empty, not running transaction pruning");
--- End diff --

I have filed TEPHRA-225 for to handle this


> Handle delay between transaction max lifetime check and data writes while 
> pruning
> -
>
> Key: TEPHRA-224
> URL: https://issues.apache.org/jira/browse/TEPHRA-224
> Project: Tephra
>  Issue Type: Sub-task
>Reporter: Poorna Chandra
>Assignee: Poorna Chandra
> Fix For: 0.12.0-incubating
>
>
> Transaction pruning relies on inactive transaction bound (a bound that says 
> at a given time there will be no transactions smaller than inactive 
> transaction bound that can still be writing data). To determine the inactive 
> transaction bound for a given time, TEPHRA-199 introduced transaction maximum 
> lifetime.
> However there can be a delay between the transaction max lifetime being 
> enforced and the write reaching HBase. Hence it would be good to use a buffer 
> to pad the transaction max lifetime when pruning.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TEPHRA-224) Handle delay between transaction max lifetime check and data writes while pruning

2017-02-21 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/TEPHRA-224?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15877599#comment-15877599
 ] 

ASF GitHub Bot commented on TEPHRA-224:
---

Github user chtyim commented on a diff in the pull request:

https://github.com/apache/incubator-tephra/pull/38#discussion_r102394064
  
--- Diff: tephra-core/src/main/java/org/apache/tephra/TxConstants.java ---
@@ -376,6 +376,11 @@
 public static final String PRUNE_FLUSH_INTERVAL = 
"data.tx.prune.flush.interval";
 
 /**
+ * The buffer in seconds used to pad transaction max lifetime while 
pruning.
+ */
+public static final String PRUNE_BUFFER_INTERVAL = 
"data.tx.prune.buffer";
--- End diff --

grace period sounds good.


> Handle delay between transaction max lifetime check and data writes while 
> pruning
> -
>
> Key: TEPHRA-224
> URL: https://issues.apache.org/jira/browse/TEPHRA-224
> Project: Tephra
>  Issue Type: Sub-task
>Reporter: Poorna Chandra
>Assignee: Poorna Chandra
> Fix For: 0.12.0-incubating
>
>
> Transaction pruning relies on inactive transaction bound (a bound that says 
> at a given time there will be no transactions smaller than inactive 
> transaction bound that can still be writing data). To determine the inactive 
> transaction bound for a given time, TEPHRA-199 introduced transaction maximum 
> lifetime.
> However there can be a delay between the transaction max lifetime being 
> enforced and the write reaching HBase. Hence it would be good to use a buffer 
> to pad the transaction max lifetime when pruning.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TEPHRA-224) Handle delay between transaction max lifetime check and data writes while pruning

2017-02-21 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/TEPHRA-224?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15877321#comment-15877321
 ] 

ASF GitHub Bot commented on TEPHRA-224:
---

Github user anew commented on a diff in the pull request:

https://github.com/apache/incubator-tephra/pull/38#discussion_r102371884
  
--- Diff: tephra-core/src/main/java/org/apache/tephra/TxConstants.java ---
@@ -376,6 +376,11 @@
 public static final String PRUNE_FLUSH_INTERVAL = 
"data.tx.prune.flush.interval";
 
 /**
+ * The buffer in seconds used to pad transaction max lifetime while 
pruning.
+ */
+public static final String PRUNE_BUFFER_INTERVAL = 
"data.tx.prune.buffer";
--- End diff --

PRUNE_SAFETY_BUFFER? PRUNE_GRACE_PERIOD?


> Handle delay between transaction max lifetime check and data writes while 
> pruning
> -
>
> Key: TEPHRA-224
> URL: https://issues.apache.org/jira/browse/TEPHRA-224
> Project: Tephra
>  Issue Type: Sub-task
>Reporter: Poorna Chandra
>Assignee: Poorna Chandra
> Fix For: 0.12.0-incubating
>
>
> Transaction pruning relies on inactive transaction bound (a bound that says 
> at a given time there will be no transactions smaller than inactive 
> transaction bound that can still be writing data). To determine the inactive 
> transaction bound for a given time, TEPHRA-199 introduced transaction maximum 
> lifetime.
> However there can be a delay between the transaction max lifetime being 
> enforced and the write reaching HBase. Hence it would be good to use a buffer 
> to pad the transaction max lifetime when pruning.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TEPHRA-224) Handle delay between transaction max lifetime check and data writes while pruning

2017-02-21 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/TEPHRA-224?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15877249#comment-15877249
 ] 

ASF GitHub Bot commented on TEPHRA-224:
---

Github user poornachandra commented on a diff in the pull request:

https://github.com/apache/incubator-tephra/pull/38#discussion_r102366609
  
--- Diff: 
tephra-core/src/main/java/org/apache/tephra/txprune/TransactionPruningRunnable.java
 ---
@@ -57,8 +60,13 @@ public void run() {
   Transaction tx = txManager.startShort();
   txManager.abort(tx);
 
+  if (tx.getInvalids().length == 0) {
+LOG.info("Invalid list is empty, not running transaction pruning");
--- End diff --

Yes - I was planning on making that change later since that needs some 
analysis. I'll file a JIRA for that. Is that okay?


> Handle delay between transaction max lifetime check and data writes while 
> pruning
> -
>
> Key: TEPHRA-224
> URL: https://issues.apache.org/jira/browse/TEPHRA-224
> Project: Tephra
>  Issue Type: Sub-task
>Reporter: Poorna Chandra
>Assignee: Poorna Chandra
> Fix For: 0.12.0-incubating
>
>
> Transaction pruning relies on inactive transaction bound (a bound that says 
> at a given time there will be no transactions smaller than inactive 
> transaction bound that can still be writing data). To determine the inactive 
> transaction bound for a given time, TEPHRA-199 introduced transaction maximum 
> lifetime.
> However there can be a delay between the transaction max lifetime being 
> enforced and the write reaching HBase. Hence it would be good to use a buffer 
> to pad the transaction max lifetime when pruning.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TEPHRA-224) Handle delay between transaction max lifetime check and data writes while pruning

2017-02-21 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/TEPHRA-224?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15877242#comment-15877242
 ] 

ASF GitHub Bot commented on TEPHRA-224:
---

Github user poornachandra commented on a diff in the pull request:

https://github.com/apache/incubator-tephra/pull/38#discussion_r102366454
  
--- Diff: tephra-core/src/main/java/org/apache/tephra/TxConstants.java ---
@@ -376,6 +376,11 @@
 public static final String PRUNE_FLUSH_INTERVAL = 
"data.tx.prune.flush.interval";
 
 /**
+ * The buffer in seconds used to pad transaction max lifetime while 
pruning.
+ */
+public static final String PRUNE_BUFFER_INTERVAL = 
"data.tx.prune.buffer";
--- End diff --

What would be a good name? `PRUNE_BUFFER_TIME`?


> Handle delay between transaction max lifetime check and data writes while 
> pruning
> -
>
> Key: TEPHRA-224
> URL: https://issues.apache.org/jira/browse/TEPHRA-224
> Project: Tephra
>  Issue Type: Sub-task
>Reporter: Poorna Chandra
>Assignee: Poorna Chandra
> Fix For: 0.12.0-incubating
>
>
> Transaction pruning relies on inactive transaction bound (a bound that says 
> at a given time there will be no transactions smaller than inactive 
> transaction bound that can still be writing data). To determine the inactive 
> transaction bound for a given time, TEPHRA-199 introduced transaction maximum 
> lifetime.
> However there can be a delay between the transaction max lifetime being 
> enforced and the write reaching HBase. Hence it would be good to use a buffer 
> to pad the transaction max lifetime when pruning.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (TEPHRA-224) Handle delay between transaction max lifetime check and data writes while pruning

2017-02-21 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/TEPHRA-224?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15877181#comment-15877181
 ] 

ASF GitHub Bot commented on TEPHRA-224:
---

GitHub user poornachandra opened a pull request:

https://github.com/apache/incubator-tephra/pull/38

TEPHRA-224 Handle delay between transaction max lifetime check and data 
writes while pruning

JIRA - https://issues.apache.org/jira/browse/TEPHRA-224

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/poornachandra/incubator-tephra 
feature/pruning-buffer

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/incubator-tephra/pull/38.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #38






> Handle delay between transaction max lifetime check and data writes while 
> pruning
> -
>
> Key: TEPHRA-224
> URL: https://issues.apache.org/jira/browse/TEPHRA-224
> Project: Tephra
>  Issue Type: Sub-task
>Reporter: Poorna Chandra
>Assignee: Poorna Chandra
> Fix For: 0.12.0-incubating
>
>
> Transaction pruning relies on inactive transaction bound (a bound that says 
> at a given time there will be no transactions smaller than inactive 
> transaction bound that can still be writing data). To determine the inactive 
> transaction bound for a given time, TEPHRA-199 introduced transaction maximum 
> lifetime.
> However there can be a delay between the transaction max lifetime being 
> enforced and the write reaching HBase. Hence it would be good to use a buffer 
> to pad the transaction max lifetime when pruning.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)