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

Konstantin Shvachko commented on HDFS-13688:
--------------------------------------------

# As [previously 
discussed|https://issues.apache.org/jira/browse/HDFS-12977?focusedCommentId=16368689&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-16368689]
 there is a constant {{HdfsServerConstants.INVALID_TXID}} for 
{{INVALID_STATEID}}. But I don't think you need it in {{AlignmentContext}} at 
all. If Server ever returns {{INVALID_TXID}}, you will catch it with {{((txid < 
clientId)}} condition but not the other one, since it never equals 
{{Long.MIN_VALUE}}.
# On the client we should always address {{ClientGSIContext}} instead of 
{{AlignmentContext}}. The former already has {{getLastSeenStateId()}}. So you 
don't need to add it to {{AlignmentContext}}. On the server 
{{getLastSeenStateId()}} doesn't make sense.
# We should not just create a {{ClientGSIContext}} instance in DFSClient. It 
lives deep inside {{ObserverReadProxyProvider}} and is generally not exposed to 
DFSClient. You mostly use it for testing, but there should another way. 
HDFS-13399 was dedicated to this. [This is the relevant 
comment|https://issues.apache.org/jira/browse/HDFS-13399?focusedCommentId=16459341&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-16459341].
 There was also discussion around it in HDFS-12976.
I see you are passing it into {{ObserverReadProxyProvider}}, which we were 
trying to avoid it in previous steps.

These are the main issues. I also see some unused imports and non-parameterized 
generics.

> Introduce msync API call
> ------------------------
>
>                 Key: HDFS-13688
>                 URL: https://issues.apache.org/jira/browse/HDFS-13688
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>            Reporter: Chen Liang
>            Assignee: Chen Liang
>            Priority: Major
>         Attachments: HDFS-13688-HDFS-12943.001.patch, 
> HDFS-13688-HDFS-12943.002.patch, HDFS-13688-HDFS-12943.002.patch, 
> HDFS-13688-HDFS-12943.WIP.002.patch, HDFS-13688-HDFS-12943.WIP.patch
>
>
> As mentioned in the design doc in HDFS-12943, to ensure consistent read, we 
> need to introduce an RPC call {{msync}}. Specifically, client can issue a 
> msync call to Observer node along with a transactionID. The msync will only 
> return when the Observer's transactionID has caught up to the given ID. This 
> JIRA is to add this API.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to