[jira] [Commented] (RATIS-17) Add basic retry cache implementation for Raft Server

2017-03-22 Thread Tsz Wo Nicholas Sze (JIRA)

[ 
https://issues.apache.org/jira/browse/RATIS-17?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15937491#comment-15937491
 ] 

Tsz Wo Nicholas Sze commented on RATIS-17:
--

Thanks Jing, some quick comments:
- CacheKey is created multiple times in RetryCache.  We should only create once 
at queryCache or getOrCreateEntry, and then keep passing it.
- The guava Cache is thread safe.  Do we need to synchronize queryCache and 
getOrCreateEntry?
- CacheEntry already has a replyFuture so that we should keep using it.  e.g. 
checkLeaderState(..) should not create CompletableFuture anymore.
- MAX_CAPACITY actually is MIN_CAPACITY. Otherwise, max = 16 is way to small. :)




> Add basic retry cache implementation for Raft Server
> 
>
> Key: RATIS-17
> URL: https://issues.apache.org/jira/browse/RATIS-17
> Project: Ratis
>  Issue Type: Sub-task
>Reporter: Jing Zhao
>Assignee: Jing Zhao
> Attachments: RATIS-17.000.patch, RATIS-17.001.patch, 
> RATIS-17.002.patch
>
>
> This jira will add the basic data structure definition for the retry cache.



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


[jira] [Updated] (RATIS-17) Add basic retry cache implementation for Raft Server

2017-03-22 Thread Jing Zhao (JIRA)

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

Jing Zhao updated RATIS-17:
---
Attachment: RATIS-17.002.patch

Update the patch to fix a few bugs.

> Add basic retry cache implementation for Raft Server
> 
>
> Key: RATIS-17
> URL: https://issues.apache.org/jira/browse/RATIS-17
> Project: Ratis
>  Issue Type: Sub-task
>Reporter: Jing Zhao
>Assignee: Jing Zhao
> Attachments: RATIS-17.000.patch, RATIS-17.001.patch, 
> RATIS-17.002.patch
>
>
> This jira will add the basic data structure definition for the retry cache.



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


[jira] [Commented] (RATIS-50) "RaftClientProtocolService" and "RaftServerProtocolService"

2017-03-22 Thread Jing Zhao (JIRA)

[ 
https://issues.apache.org/jira/browse/RATIS-50?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15936986#comment-15936986
 ] 

Jing Zhao commented on RATIS-50:


Thanks for filing the jira, [~kaiyangzhang]. This can be the similar idea of 
"multi-raft" in CockroackDB. We actually plan to support this.

> "RaftClientProtocolService" and "RaftServerProtocolService"
> ---
>
> Key: RATIS-50
> URL: https://issues.apache.org/jira/browse/RATIS-50
> Project: Ratis
>  Issue Type: Wish
>Reporter: kaiyangzhang
>Priority: Minor
>
> *current:*  
>   *one* "RaftClientProtocolService, RaftServerProtocolService" to *one* 
> "RaftPeerId , RaftServerProtocol ".
> *wish:*
>   *one* "RaftClientProtocolService, RaftServerProtocolService" to *many* 
> "RaftPeerId , RaftServerProtocol ".



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


[jira] [Updated] (RATIS-50) "RaftClientProtocolService" and "RaftServerProtocolService"

2017-03-22 Thread kaiyangzhang (JIRA)

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

kaiyangzhang updated RATIS-50:
--
Description: 
*current:*  
  *one* "RaftClientProtocolService, RaftServerProtocolService" to *one* 
"RaftPeerId , RaftServerProtocol ".

*wish:*
  *one* "RaftClientProtocolService, RaftServerProtocolService" to *many* 
"RaftPeerId , RaftServerProtocol ".



  was:
*now:*  
  *one* "RaftClientProtocolService, RaftServerProtocolService" to *one* 
"RaftPeerId , RaftServerProtocol ".

*wish:*
  *one* "RaftClientProtocolService, RaftServerProtocolService" to *many* 
"RaftPeerId , RaftServerProtocol ".




> "RaftClientProtocolService" and "RaftServerProtocolService"
> ---
>
> Key: RATIS-50
> URL: https://issues.apache.org/jira/browse/RATIS-50
> Project: Ratis
>  Issue Type: Wish
>Reporter: kaiyangzhang
>Priority: Minor
>
> *current:*  
>   *one* "RaftClientProtocolService, RaftServerProtocolService" to *one* 
> "RaftPeerId , RaftServerProtocol ".
> *wish:*
>   *one* "RaftClientProtocolService, RaftServerProtocolService" to *many* 
> "RaftPeerId , RaftServerProtocol ".



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