[jira] [Updated] (HBASE-17174) Refactor the AsyncProcess, BufferedMutatorImpl, and HTable

2016-12-26 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai updated HBASE-17174:
--
Attachment: HBASE-17174.addendum.patch

[~Apache9]
There is a spelling error on the public interface. I have attached the 
addendum. Would you please commit it? Thanks.

> Refactor the AsyncProcess, BufferedMutatorImpl, and HTable
> --
>
> Key: HBASE-17174
> URL: https://issues.apache.org/jira/browse/HBASE-17174
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 2.0.0
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-17174.addendum.patch, HBASE-17174.v0.patch, 
> HBASE-17174.v1.patch, HBASE-17174.v10.patch, HBASE-17174.v11.patch, 
> HBASE-17174.v11.patch, HBASE-17174.v11.patch, HBASE-17174.v12.patch, 
> HBASE-17174.v13.patch, HBASE-17174.v2.patch, HBASE-17174.v3.patch, 
> HBASE-17174.v4.patch, HBASE-17174.v5.patch, HBASE-17174.v6.patch, 
> HBASE-17174.v7.patch, HBASE-17174.v8.patch, HBASE-17174.v9.patch
>
>
> The following are reasons of refactoring.
> # A update-heavy application, for example, loader, creates many 
> BufferedMutator for batch updates. But these BufferedMutators can’t share a 
> large threadpool because the shutdown() method will be called when closing 
> any BufferedMutator. This patch adds a flag into BufferedMutatorParams for 
> preventing calling the shutdown() method in BufferedMutatorImpl#close
> # The AsyncProcess has the powerful traffic control, but the control is 
> against the single table currently. We should allow alternate traffic control 
> implementation for advanced user who want more control.
> All suggestions are welcome.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HBASE-17174) Refactor the AsyncProcess, BufferedMutatorImpl, and HTable

2016-12-23 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai updated HBASE-17174:
--
Release Note: 
+ cleanup some unused code
+ allow being able to share pool between BufferedMutatorImpl
+ setting "hbase.client.request.controller.impl" to the name of the alternate 
RequestController (traffic control) implementation class in Configuration
+ The default RequestController implementation is SimpleRequestController
+ setting "hbase.client.log.detail.period.ms" to call logger on a period when 
waiting for tasks to complete


> Refactor the AsyncProcess, BufferedMutatorImpl, and HTable
> --
>
> Key: HBASE-17174
> URL: https://issues.apache.org/jira/browse/HBASE-17174
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 2.0.0
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-17174.v0.patch, HBASE-17174.v1.patch, 
> HBASE-17174.v10.patch, HBASE-17174.v11.patch, HBASE-17174.v11.patch, 
> HBASE-17174.v11.patch, HBASE-17174.v12.patch, HBASE-17174.v13.patch, 
> HBASE-17174.v2.patch, HBASE-17174.v3.patch, HBASE-17174.v4.patch, 
> HBASE-17174.v5.patch, HBASE-17174.v6.patch, HBASE-17174.v7.patch, 
> HBASE-17174.v8.patch, HBASE-17174.v9.patch
>
>
> The following are reasons of refactoring.
> # A update-heavy application, for example, loader, creates many 
> BufferedMutator for batch updates. But these BufferedMutators can’t share a 
> large threadpool because the shutdown() method will be called when closing 
> any BufferedMutator. This patch adds a flag into BufferedMutatorParams for 
> preventing calling the shutdown() method in BufferedMutatorImpl#close
> # The AsyncProcess has the powerful traffic control, but the control is 
> against the single table currently. We should allow alternate traffic control 
> implementation for advanced user who want more control.
> All suggestions are welcome.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HBASE-17174) Refactor the AsyncProcess, BufferedMutatorImpl, and HTable

2016-12-23 Thread Duo Zhang (JIRA)

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

Duo Zhang updated HBASE-17174:
--
  Resolution: Fixed
Hadoop Flags: Reviewed
  Status: Resolved  (was: Patch Available)

Pushed to master.

Thanks [~chia7712] for the contribution. Thanks all for reviewing.

And [~chia7712], please add a simple release note for this feature? Thanks.

> Refactor the AsyncProcess, BufferedMutatorImpl, and HTable
> --
>
> Key: HBASE-17174
> URL: https://issues.apache.org/jira/browse/HBASE-17174
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 2.0.0
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-17174.v0.patch, HBASE-17174.v1.patch, 
> HBASE-17174.v10.patch, HBASE-17174.v11.patch, HBASE-17174.v11.patch, 
> HBASE-17174.v11.patch, HBASE-17174.v12.patch, HBASE-17174.v13.patch, 
> HBASE-17174.v2.patch, HBASE-17174.v3.patch, HBASE-17174.v4.patch, 
> HBASE-17174.v5.patch, HBASE-17174.v6.patch, HBASE-17174.v7.patch, 
> HBASE-17174.v8.patch, HBASE-17174.v9.patch
>
>
> The following are reasons of refactoring.
> # A update-heavy application, for example, loader, creates many 
> BufferedMutator for batch updates. But these BufferedMutators can’t share a 
> large threadpool because the shutdown() method will be called when closing 
> any BufferedMutator. This patch adds a flag into BufferedMutatorParams for 
> preventing calling the shutdown() method in BufferedMutatorImpl#close
> # The AsyncProcess has the powerful traffic control, but the control is 
> against the single table currently. We should allow alternate traffic control 
> implementation for advanced user who want more control.
> All suggestions are welcome.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HBASE-17174) Refactor the AsyncProcess, BufferedMutatorImpl, and HTable

2016-12-23 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai updated HBASE-17174:
--
Attachment: HBASE-17174.v13.patch

address [~yuzhih...@gmail.com] comments

> Refactor the AsyncProcess, BufferedMutatorImpl, and HTable
> --
>
> Key: HBASE-17174
> URL: https://issues.apache.org/jira/browse/HBASE-17174
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 2.0.0
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-17174.v0.patch, HBASE-17174.v1.patch, 
> HBASE-17174.v10.patch, HBASE-17174.v11.patch, HBASE-17174.v11.patch, 
> HBASE-17174.v11.patch, HBASE-17174.v12.patch, HBASE-17174.v13.patch, 
> HBASE-17174.v2.patch, HBASE-17174.v3.patch, HBASE-17174.v4.patch, 
> HBASE-17174.v5.patch, HBASE-17174.v6.patch, HBASE-17174.v7.patch, 
> HBASE-17174.v8.patch, HBASE-17174.v9.patch
>
>
> The following are reasons of refactoring.
> # A update-heavy application, for example, loader, creates many 
> BufferedMutator for batch updates. But these BufferedMutators can’t share a 
> large threadpool because the shutdown() method will be called when closing 
> any BufferedMutator. This patch adds a flag into BufferedMutatorParams for 
> preventing calling the shutdown() method in BufferedMutatorImpl#close
> # The AsyncProcess has the powerful traffic control, but the control is 
> against the single table currently. We should allow alternate traffic control 
> implementation for advanced user who want more control.
> All suggestions are welcome.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HBASE-17174) Refactor the AsyncProcess, BufferedMutatorImpl, and HTable

2016-12-23 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai updated HBASE-17174:
--
Status: Patch Available  (was: Open)

> Refactor the AsyncProcess, BufferedMutatorImpl, and HTable
> --
>
> Key: HBASE-17174
> URL: https://issues.apache.org/jira/browse/HBASE-17174
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 2.0.0
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-17174.v0.patch, HBASE-17174.v1.patch, 
> HBASE-17174.v10.patch, HBASE-17174.v11.patch, HBASE-17174.v11.patch, 
> HBASE-17174.v11.patch, HBASE-17174.v12.patch, HBASE-17174.v13.patch, 
> HBASE-17174.v2.patch, HBASE-17174.v3.patch, HBASE-17174.v4.patch, 
> HBASE-17174.v5.patch, HBASE-17174.v6.patch, HBASE-17174.v7.patch, 
> HBASE-17174.v8.patch, HBASE-17174.v9.patch
>
>
> The following are reasons of refactoring.
> # A update-heavy application, for example, loader, creates many 
> BufferedMutator for batch updates. But these BufferedMutators can’t share a 
> large threadpool because the shutdown() method will be called when closing 
> any BufferedMutator. This patch adds a flag into BufferedMutatorParams for 
> preventing calling the shutdown() method in BufferedMutatorImpl#close
> # The AsyncProcess has the powerful traffic control, but the control is 
> against the single table currently. We should allow alternate traffic control 
> implementation for advanced user who want more control.
> All suggestions are welcome.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HBASE-17174) Refactor the AsyncProcess, BufferedMutatorImpl, and HTable

2016-12-23 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai updated HBASE-17174:
--
Status: Open  (was: Patch Available)

> Refactor the AsyncProcess, BufferedMutatorImpl, and HTable
> --
>
> Key: HBASE-17174
> URL: https://issues.apache.org/jira/browse/HBASE-17174
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 2.0.0
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-17174.v0.patch, HBASE-17174.v1.patch, 
> HBASE-17174.v10.patch, HBASE-17174.v11.patch, HBASE-17174.v11.patch, 
> HBASE-17174.v11.patch, HBASE-17174.v12.patch, HBASE-17174.v2.patch, 
> HBASE-17174.v3.patch, HBASE-17174.v4.patch, HBASE-17174.v5.patch, 
> HBASE-17174.v6.patch, HBASE-17174.v7.patch, HBASE-17174.v8.patch, 
> HBASE-17174.v9.patch
>
>
> The following are reasons of refactoring.
> # A update-heavy application, for example, loader, creates many 
> BufferedMutator for batch updates. But these BufferedMutators can’t share a 
> large threadpool because the shutdown() method will be called when closing 
> any BufferedMutator. This patch adds a flag into BufferedMutatorParams for 
> preventing calling the shutdown() method in BufferedMutatorImpl#close
> # The AsyncProcess has the powerful traffic control, but the control is 
> against the single table currently. We should allow alternate traffic control 
> implementation for advanced user who want more control.
> All suggestions are welcome.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HBASE-17174) Refactor the AsyncProcess, BufferedMutatorImpl, and HTable

2016-12-22 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai updated HBASE-17174:
--
Status: Patch Available  (was: Open)

> Refactor the AsyncProcess, BufferedMutatorImpl, and HTable
> --
>
> Key: HBASE-17174
> URL: https://issues.apache.org/jira/browse/HBASE-17174
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 2.0.0
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-17174.v0.patch, HBASE-17174.v1.patch, 
> HBASE-17174.v10.patch, HBASE-17174.v11.patch, HBASE-17174.v11.patch, 
> HBASE-17174.v11.patch, HBASE-17174.v12.patch, HBASE-17174.v2.patch, 
> HBASE-17174.v3.patch, HBASE-17174.v4.patch, HBASE-17174.v5.patch, 
> HBASE-17174.v6.patch, HBASE-17174.v7.patch, HBASE-17174.v8.patch, 
> HBASE-17174.v9.patch
>
>
> The following are reasons of refactoring.
> # A update-heavy application, for example, loader, creates many 
> BufferedMutator for batch updates. But these BufferedMutators can’t share a 
> large threadpool because the shutdown() method will be called when closing 
> any BufferedMutator. This patch adds a flag into BufferedMutatorParams for 
> preventing calling the shutdown() method in BufferedMutatorImpl#close
> # The AsyncProcess has the powerful traffic control, but the control is 
> against the single table currently. We should allow alternate traffic control 
> implementation for advanced user who want more control.
> All suggestions are welcome.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HBASE-17174) Refactor the AsyncProcess, BufferedMutatorImpl, and HTable

2016-12-22 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai updated HBASE-17174:
--
Attachment: HBASE-17174.v12.patch

v12 addresses [~Apache9] suggestion

> Refactor the AsyncProcess, BufferedMutatorImpl, and HTable
> --
>
> Key: HBASE-17174
> URL: https://issues.apache.org/jira/browse/HBASE-17174
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 2.0.0
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-17174.v0.patch, HBASE-17174.v1.patch, 
> HBASE-17174.v10.patch, HBASE-17174.v11.patch, HBASE-17174.v11.patch, 
> HBASE-17174.v11.patch, HBASE-17174.v12.patch, HBASE-17174.v2.patch, 
> HBASE-17174.v3.patch, HBASE-17174.v4.patch, HBASE-17174.v5.patch, 
> HBASE-17174.v6.patch, HBASE-17174.v7.patch, HBASE-17174.v8.patch, 
> HBASE-17174.v9.patch
>
>
> The following are reasons of refactoring.
> # A update-heavy application, for example, loader, creates many 
> BufferedMutator for batch updates. But these BufferedMutators can’t share a 
> large threadpool because the shutdown() method will be called when closing 
> any BufferedMutator. This patch adds a flag into BufferedMutatorParams for 
> preventing calling the shutdown() method in BufferedMutatorImpl#close
> # The AsyncProcess has the powerful traffic control, but the control is 
> against the single table currently. We should allow alternate traffic control 
> implementation for advanced user who want more control.
> All suggestions are welcome.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HBASE-17174) Refactor the AsyncProcess, BufferedMutatorImpl, and HTable

2016-12-22 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai updated HBASE-17174:
--
Status: Open  (was: Patch Available)

> Refactor the AsyncProcess, BufferedMutatorImpl, and HTable
> --
>
> Key: HBASE-17174
> URL: https://issues.apache.org/jira/browse/HBASE-17174
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 2.0.0
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-17174.v0.patch, HBASE-17174.v1.patch, 
> HBASE-17174.v10.patch, HBASE-17174.v11.patch, HBASE-17174.v11.patch, 
> HBASE-17174.v11.patch, HBASE-17174.v2.patch, HBASE-17174.v3.patch, 
> HBASE-17174.v4.patch, HBASE-17174.v5.patch, HBASE-17174.v6.patch, 
> HBASE-17174.v7.patch, HBASE-17174.v8.patch, HBASE-17174.v9.patch
>
>
> The following are reasons of refactoring.
> # A update-heavy application, for example, loader, creates many 
> BufferedMutator for batch updates. But these BufferedMutators can’t share a 
> large threadpool because the shutdown() method will be called when closing 
> any BufferedMutator. This patch adds a flag into BufferedMutatorParams for 
> preventing calling the shutdown() method in BufferedMutatorImpl#close
> # The AsyncProcess has the powerful traffic control, but the control is 
> against the single table currently. We should allow alternate traffic control 
> implementation for advanced user who want more control.
> All suggestions are welcome.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HBASE-17174) Refactor the AsyncProcess, BufferedMutatorImpl, and HTable

2016-12-17 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai updated HBASE-17174:
--
Summary: Refactor the AsyncProcess, BufferedMutatorImpl, and HTable  (was: 
Refactor the AsyncProcess)

> Refactor the AsyncProcess, BufferedMutatorImpl, and HTable
> --
>
> Key: HBASE-17174
> URL: https://issues.apache.org/jira/browse/HBASE-17174
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 2.0.0
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-17174.v0.patch, HBASE-17174.v1.patch, 
> HBASE-17174.v10.patch, HBASE-17174.v11.patch, HBASE-17174.v11.patch, 
> HBASE-17174.v11.patch, HBASE-17174.v2.patch, HBASE-17174.v3.patch, 
> HBASE-17174.v4.patch, HBASE-17174.v5.patch, HBASE-17174.v6.patch, 
> HBASE-17174.v7.patch, HBASE-17174.v8.patch, HBASE-17174.v9.patch
>
>
> The following are reasons of refactoring the AP.
> # A update-heavy application, for example, loader, creates many 
> BufferedMutator for batch updates. But these BufferedMutators can’t share a 
> large threadpool because the shutdown() method will be called when closing 
> any BufferedMutator. This patch adds a flag into BufferedMutatorParams for 
> preventing calling the shutdown() method in BufferedMutatorImpl#close
> # The AsyncProcess has the powerful traffic control, but the control is 
> against the single table currently. We should allow alternate traffic control 
> implementation for advanced user who want more control.
> All suggestions are welcome.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HBASE-17174) Refactor the AsyncProcess, BufferedMutatorImpl, and HTable

2016-12-17 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai updated HBASE-17174:
--
Description: 
The following are reasons of refactoring.
# A update-heavy application, for example, loader, creates many BufferedMutator 
for batch updates. But these BufferedMutators can’t share a large threadpool 
because the shutdown() method will be called when closing any BufferedMutator. 
This patch adds a flag into BufferedMutatorParams for preventing calling the 
shutdown() method in BufferedMutatorImpl#close
# The AsyncProcess has the powerful traffic control, but the control is against 
the single table currently. We should allow alternate traffic control 
implementation for advanced user who want more control.

All suggestions are welcome.


  was:
The following are reasons of refactoring the AP.
# A update-heavy application, for example, loader, creates many BufferedMutator 
for batch updates. But these BufferedMutators can’t share a large threadpool 
because the shutdown() method will be called when closing any BufferedMutator. 
This patch adds a flag into BufferedMutatorParams for preventing calling the 
shutdown() method in BufferedMutatorImpl#close
# The AsyncProcess has the powerful traffic control, but the control is against 
the single table currently. We should allow alternate traffic control 
implementation for advanced user who want more control.

All suggestions are welcome.



> Refactor the AsyncProcess, BufferedMutatorImpl, and HTable
> --
>
> Key: HBASE-17174
> URL: https://issues.apache.org/jira/browse/HBASE-17174
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 2.0.0
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-17174.v0.patch, HBASE-17174.v1.patch, 
> HBASE-17174.v10.patch, HBASE-17174.v11.patch, HBASE-17174.v11.patch, 
> HBASE-17174.v11.patch, HBASE-17174.v2.patch, HBASE-17174.v3.patch, 
> HBASE-17174.v4.patch, HBASE-17174.v5.patch, HBASE-17174.v6.patch, 
> HBASE-17174.v7.patch, HBASE-17174.v8.patch, HBASE-17174.v9.patch
>
>
> The following are reasons of refactoring.
> # A update-heavy application, for example, loader, creates many 
> BufferedMutator for batch updates. But these BufferedMutators can’t share a 
> large threadpool because the shutdown() method will be called when closing 
> any BufferedMutator. This patch adds a flag into BufferedMutatorParams for 
> preventing calling the shutdown() method in BufferedMutatorImpl#close
> # The AsyncProcess has the powerful traffic control, but the control is 
> against the single table currently. We should allow alternate traffic control 
> implementation for advanced user who want more control.
> All suggestions are welcome.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HBASE-17174) Refactor the AsyncProcess

2016-12-16 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai updated HBASE-17174:
--
Status: Patch Available  (was: Open)

> Refactor the AsyncProcess
> -
>
> Key: HBASE-17174
> URL: https://issues.apache.org/jira/browse/HBASE-17174
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 2.0.0
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-17174.v0.patch, HBASE-17174.v1.patch, 
> HBASE-17174.v10.patch, HBASE-17174.v11.patch, HBASE-17174.v11.patch, 
> HBASE-17174.v11.patch, HBASE-17174.v2.patch, HBASE-17174.v3.patch, 
> HBASE-17174.v4.patch, HBASE-17174.v5.patch, HBASE-17174.v6.patch, 
> HBASE-17174.v7.patch, HBASE-17174.v8.patch, HBASE-17174.v9.patch
>
>
> The following are reasons of refactoring the AP.
> # A update-heavy application, for example, loader, creates many 
> BufferedMutator for batch updates. But these BufferedMutators can’t share a 
> large threadpool because the shutdown() method will be called when closing 
> any BufferedMutator. This patch adds a flag into BufferedMutatorParams for 
> preventing calling the shutdown() method in BufferedMutatorImpl#close
> # The AsyncProcess has the powerful traffic control, but the control is 
> against the single table currently. We should allow alternate traffic control 
> implementation for advanced user who want more control.
> All suggestions are welcome.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HBASE-17174) Refactor the AsyncProcess

2016-12-16 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai updated HBASE-17174:
--
Attachment: HBASE-17174.v11.patch

> Refactor the AsyncProcess
> -
>
> Key: HBASE-17174
> URL: https://issues.apache.org/jira/browse/HBASE-17174
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 2.0.0
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-17174.v0.patch, HBASE-17174.v1.patch, 
> HBASE-17174.v10.patch, HBASE-17174.v11.patch, HBASE-17174.v11.patch, 
> HBASE-17174.v11.patch, HBASE-17174.v2.patch, HBASE-17174.v3.patch, 
> HBASE-17174.v4.patch, HBASE-17174.v5.patch, HBASE-17174.v6.patch, 
> HBASE-17174.v7.patch, HBASE-17174.v8.patch, HBASE-17174.v9.patch
>
>
> The following are reasons of refactoring the AP.
> # A update-heavy application, for example, loader, creates many 
> BufferedMutator for batch updates. But these BufferedMutators can’t share a 
> large threadpool because the shutdown() method will be called when closing 
> any BufferedMutator. This patch adds a flag into BufferedMutatorParams for 
> preventing calling the shutdown() method in BufferedMutatorImpl#close
> # The AsyncProcess has the powerful traffic control, but the control is 
> against the single table currently. We should allow alternate traffic control 
> implementation for advanced user who want more control.
> All suggestions are welcome.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HBASE-17174) Refactor the AsyncProcess

2016-12-16 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai updated HBASE-17174:
--
Status: Open  (was: Patch Available)

The warning is resolved.
retry v11.

> Refactor the AsyncProcess
> -
>
> Key: HBASE-17174
> URL: https://issues.apache.org/jira/browse/HBASE-17174
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 2.0.0
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-17174.v0.patch, HBASE-17174.v1.patch, 
> HBASE-17174.v10.patch, HBASE-17174.v11.patch, HBASE-17174.v11.patch, 
> HBASE-17174.v11.patch, HBASE-17174.v2.patch, HBASE-17174.v3.patch, 
> HBASE-17174.v4.patch, HBASE-17174.v5.patch, HBASE-17174.v6.patch, 
> HBASE-17174.v7.patch, HBASE-17174.v8.patch, HBASE-17174.v9.patch
>
>
> The following are reasons of refactoring the AP.
> # A update-heavy application, for example, loader, creates many 
> BufferedMutator for batch updates. But these BufferedMutators can’t share a 
> large threadpool because the shutdown() method will be called when closing 
> any BufferedMutator. This patch adds a flag into BufferedMutatorParams for 
> preventing calling the shutdown() method in BufferedMutatorImpl#close
> # The AsyncProcess has the powerful traffic control, but the control is 
> against the single table currently. We should allow alternate traffic control 
> implementation for advanced user who want more control.
> All suggestions are welcome.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HBASE-17174) Refactor the AsyncProcess

2016-12-16 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai updated HBASE-17174:
--
Attachment: HBASE-17174.v11.patch

> Refactor the AsyncProcess
> -
>
> Key: HBASE-17174
> URL: https://issues.apache.org/jira/browse/HBASE-17174
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 2.0.0
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-17174.v0.patch, HBASE-17174.v1.patch, 
> HBASE-17174.v10.patch, HBASE-17174.v11.patch, HBASE-17174.v11.patch, 
> HBASE-17174.v2.patch, HBASE-17174.v3.patch, HBASE-17174.v4.patch, 
> HBASE-17174.v5.patch, HBASE-17174.v6.patch, HBASE-17174.v7.patch, 
> HBASE-17174.v8.patch, HBASE-17174.v9.patch
>
>
> The following are reasons of refactoring the AP.
> # A update-heavy application, for example, loader, creates many 
> BufferedMutator for batch updates. But these BufferedMutators can’t share a 
> large threadpool because the shutdown() method will be called when closing 
> any BufferedMutator. This patch adds a flag into BufferedMutatorParams for 
> preventing calling the shutdown() method in BufferedMutatorImpl#close
> # The AsyncProcess has the powerful traffic control, but the control is 
> against the single table currently. We should allow alternate traffic control 
> implementation for advanced user who want more control.
> All suggestions are welcome.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HBASE-17174) Refactor the AsyncProcess

2016-12-16 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai updated HBASE-17174:
--
Status: Patch Available  (was: Open)

> Refactor the AsyncProcess
> -
>
> Key: HBASE-17174
> URL: https://issues.apache.org/jira/browse/HBASE-17174
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 2.0.0
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-17174.v0.patch, HBASE-17174.v1.patch, 
> HBASE-17174.v10.patch, HBASE-17174.v11.patch, HBASE-17174.v11.patch, 
> HBASE-17174.v2.patch, HBASE-17174.v3.patch, HBASE-17174.v4.patch, 
> HBASE-17174.v5.patch, HBASE-17174.v6.patch, HBASE-17174.v7.patch, 
> HBASE-17174.v8.patch, HBASE-17174.v9.patch
>
>
> The following are reasons of refactoring the AP.
> # A update-heavy application, for example, loader, creates many 
> BufferedMutator for batch updates. But these BufferedMutators can’t share a 
> large threadpool because the shutdown() method will be called when closing 
> any BufferedMutator. This patch adds a flag into BufferedMutatorParams for 
> preventing calling the shutdown() method in BufferedMutatorImpl#close
> # The AsyncProcess has the powerful traffic control, but the control is 
> against the single table currently. We should allow alternate traffic control 
> implementation for advanced user who want more control.
> All suggestions are welcome.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HBASE-17174) Refactor the AsyncProcess

2016-12-16 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai updated HBASE-17174:
--
Description: 
The following are reasons of refactoring the AP.
# A update-heavy application, for example, loader, creates many BufferedMutator 
for batch updates. But these BufferedMutators can’t share a large threadpool 
because the shutdown() method will be called when closing any BufferedMutator. 
This patch adds a flag into BufferedMutatorParams for preventing calling the 
shutdown() method in BufferedMutatorImpl#close
# The AsyncProcess has the powerful traffic control, but the control is against 
the single table currently. We should allow alternate traffic control 
implementation for advanced user who want more control.

All suggestions are welcome.


  was:
The following are reasons of reusing the pool and AP.
# A update-heavy application, for example, loader, creates many BufferedMutator 
for batch updates. But these BufferedMutators can’t share a large threadpool 
because the shutdown() method will be called when closing any BufferedMutator. 
This patch adds a flag into BufferedMutatorParams for preventing calling the 
shutdown() method in BufferedMutatorImpl#close
# The AsyncProcess has the powerful traffic control, but the control is against 
the single table currently. We should allow alternate traffic control 
implementation for advanced user who want more control.

All suggestions are welcome.



> Refactor the AsyncProcess
> -
>
> Key: HBASE-17174
> URL: https://issues.apache.org/jira/browse/HBASE-17174
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 2.0.0
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-17174.v0.patch, HBASE-17174.v1.patch, 
> HBASE-17174.v10.patch, HBASE-17174.v11.patch, HBASE-17174.v2.patch, 
> HBASE-17174.v3.patch, HBASE-17174.v4.patch, HBASE-17174.v5.patch, 
> HBASE-17174.v6.patch, HBASE-17174.v7.patch, HBASE-17174.v8.patch, 
> HBASE-17174.v9.patch
>
>
> The following are reasons of refactoring the AP.
> # A update-heavy application, for example, loader, creates many 
> BufferedMutator for batch updates. But these BufferedMutators can’t share a 
> large threadpool because the shutdown() method will be called when closing 
> any BufferedMutator. This patch adds a flag into BufferedMutatorParams for 
> preventing calling the shutdown() method in BufferedMutatorImpl#close
> # The AsyncProcess has the powerful traffic control, but the control is 
> against the single table currently. We should allow alternate traffic control 
> implementation for advanced user who want more control.
> All suggestions are welcome.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HBASE-17174) Refactor the AsyncProcess

2016-12-16 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai updated HBASE-17174:
--
Status: Open  (was: Patch Available)

Nothing happened...
retry

> Refactor the AsyncProcess
> -
>
> Key: HBASE-17174
> URL: https://issues.apache.org/jira/browse/HBASE-17174
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 2.0.0
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-17174.v0.patch, HBASE-17174.v1.patch, 
> HBASE-17174.v10.patch, HBASE-17174.v11.patch, HBASE-17174.v2.patch, 
> HBASE-17174.v3.patch, HBASE-17174.v4.patch, HBASE-17174.v5.patch, 
> HBASE-17174.v6.patch, HBASE-17174.v7.patch, HBASE-17174.v8.patch, 
> HBASE-17174.v9.patch
>
>
> The following are reasons of reusing the pool and AP.
> # A update-heavy application, for example, loader, creates many 
> BufferedMutator for batch updates. But these BufferedMutators can’t share a 
> large threadpool because the shutdown() method will be called when closing 
> any BufferedMutator. This patch adds a flag into BufferedMutatorParams for 
> preventing calling the shutdown() method in BufferedMutatorImpl#close
> # The AsyncProcess has the powerful traffic control, but the control is 
> against the single table currently. We should allow alternate traffic control 
> implementation for advanced user who want more control.
> All suggestions are welcome.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HBASE-17174) Refactor the AsyncProcess

2016-12-16 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai updated HBASE-17174:
--
Status: Patch Available  (was: Open)

> Refactor the AsyncProcess
> -
>
> Key: HBASE-17174
> URL: https://issues.apache.org/jira/browse/HBASE-17174
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 2.0.0
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-17174.v0.patch, HBASE-17174.v1.patch, 
> HBASE-17174.v10.patch, HBASE-17174.v11.patch, HBASE-17174.v2.patch, 
> HBASE-17174.v3.patch, HBASE-17174.v4.patch, HBASE-17174.v5.patch, 
> HBASE-17174.v6.patch, HBASE-17174.v7.patch, HBASE-17174.v8.patch, 
> HBASE-17174.v9.patch
>
>
> The following are reasons of reusing the pool and AP.
> # A update-heavy application, for example, loader, creates many 
> BufferedMutator for batch updates. But these BufferedMutators can’t share a 
> large threadpool because the shutdown() method will be called when closing 
> any BufferedMutator. This patch adds a flag into BufferedMutatorParams for 
> preventing calling the shutdown() method in BufferedMutatorImpl#close
> # The AsyncProcess has the powerful traffic control, but the control is 
> against the single table currently. We should allow alternate traffic control 
> implementation for advanced user who want more control.
> All suggestions are welcome.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HBASE-17174) Refactor the AsyncProcess

2016-12-16 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai updated HBASE-17174:
--
Attachment: HBASE-17174.v11.patch

v11 allows allow alternate traffic control implementation so that we don't 
expose the AP.

> Refactor the AsyncProcess
> -
>
> Key: HBASE-17174
> URL: https://issues.apache.org/jira/browse/HBASE-17174
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 2.0.0
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-17174.v0.patch, HBASE-17174.v1.patch, 
> HBASE-17174.v10.patch, HBASE-17174.v11.patch, HBASE-17174.v2.patch, 
> HBASE-17174.v3.patch, HBASE-17174.v4.patch, HBASE-17174.v5.patch, 
> HBASE-17174.v6.patch, HBASE-17174.v7.patch, HBASE-17174.v8.patch, 
> HBASE-17174.v9.patch
>
>
> The following are reasons of reusing the pool and AP.
> # A update-heavy application, for example, loader, creates many 
> BufferedMutator for batch updates. But these BufferedMutators can’t share a 
> large threadpool because the shutdown() method will be called when closing 
> any BufferedMutator. This patch adds a flag into BufferedMutatorParams for 
> preventing calling the shutdown() method in BufferedMutatorImpl#close
> # The AsyncProcess has the powerful traffic control, but the control is 
> against the single table currently. We should allow alternate traffic control 
> implementation for advanced user who want more control.
> All suggestions are welcome.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HBASE-17174) Refactor the AsyncProcess

2016-12-16 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai updated HBASE-17174:
--
Description: 
The following are reasons of reusing the pool and AP.
# A update-heavy application, for example, loader, creates many BufferedMutator 
for batch updates. But these BufferedMutators can’t share a large threadpool 
because the shutdown() method will be called when closing any BufferedMutator. 
This patch adds a flag into BufferedMutatorParams for preventing calling the 
shutdown() method in BufferedMutatorImpl#close
# The AsyncProcess has the powerful traffic control, but the control is against 
the single table currently. We should allow alternate traffic control 
implementation for advanced user who want more control.

All suggestions are welcome.


  was:
The following are reasons of reusing the pool and AP.
# A update-heavy application, for example, loader, creates many BufferedMutator 
for batch updates. But these BufferedMutators can’t share a large threadpool 
because the shutdown() method will be called when closing any BufferedMutator. 
This patch adds a flag into BufferedMutatorParams for preventing calling the 
shutdown() method in BufferedMutatorImpl#close
# The AsyncProcess has the powerful traffic control, but the control is against 
the single table currently. Because the AP is constructed at 
BufferedMutatorImpl's construction. This patch change the BufferedMutatorImpl's 
construction for reuse the AP so that the updates for different tables can be 
restricted by the same AP.

Additionally, there are two changes(aren't included in latest patch) for #2.
1) The AP will be exposed to user.
2) A new method will be added to Connection for instantiating a AP.

All suggestions are welcome.



> Refactor the AsyncProcess
> -
>
> Key: HBASE-17174
> URL: https://issues.apache.org/jira/browse/HBASE-17174
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 2.0.0
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-17174.v0.patch, HBASE-17174.v1.patch, 
> HBASE-17174.v10.patch, HBASE-17174.v2.patch, HBASE-17174.v3.patch, 
> HBASE-17174.v4.patch, HBASE-17174.v5.patch, HBASE-17174.v6.patch, 
> HBASE-17174.v7.patch, HBASE-17174.v8.patch, HBASE-17174.v9.patch
>
>
> The following are reasons of reusing the pool and AP.
> # A update-heavy application, for example, loader, creates many 
> BufferedMutator for batch updates. But these BufferedMutators can’t share a 
> large threadpool because the shutdown() method will be called when closing 
> any BufferedMutator. This patch adds a flag into BufferedMutatorParams for 
> preventing calling the shutdown() method in BufferedMutatorImpl#close
> # The AsyncProcess has the powerful traffic control, but the control is 
> against the single table currently. We should allow alternate traffic control 
> implementation for advanced user who want more control.
> All suggestions are welcome.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HBASE-17174) Refactor the AsyncProcess

2016-12-16 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai updated HBASE-17174:
--
Summary: Refactor the AsyncProcess  (was: Use shared threadpool and 
AsyncProcess in BufferedMutatorImpl)

> Refactor the AsyncProcess
> -
>
> Key: HBASE-17174
> URL: https://issues.apache.org/jira/browse/HBASE-17174
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 2.0.0
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-17174.v0.patch, HBASE-17174.v1.patch, 
> HBASE-17174.v10.patch, HBASE-17174.v2.patch, HBASE-17174.v3.patch, 
> HBASE-17174.v4.patch, HBASE-17174.v5.patch, HBASE-17174.v6.patch, 
> HBASE-17174.v7.patch, HBASE-17174.v8.patch, HBASE-17174.v9.patch
>
>
> The following are reasons of reusing the pool and AP.
> # A update-heavy application, for example, loader, creates many 
> BufferedMutator for batch updates. But these BufferedMutators can’t share a 
> large threadpool because the shutdown() method will be called when closing 
> any BufferedMutator. This patch adds a flag into BufferedMutatorParams for 
> preventing calling the shutdown() method in BufferedMutatorImpl#close
> # The AsyncProcess has the powerful traffic control, but the control is 
> against the single table currently. Because the AP is constructed at 
> BufferedMutatorImpl's construction. This patch change the 
> BufferedMutatorImpl's construction for reuse the AP so that the updates for 
> different tables can be restricted by the same AP.
> Additionally, there are two changes(aren't included in latest patch) for #2.
> 1) The AP will be exposed to user.
> 2) A new method will be added to Connection for instantiating a AP.
> All suggestions are welcome.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)