hadoop-hdfs-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Yiqun Lin (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HDFS-11580) Ozone: Support asynchronus client API for SCM and containers
Date Wed, 03 May 2017 05:26:04 GMT

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

Yiqun Lin updated HDFS-11580:
    Attachment: HDFS-11580-HDFS-7240.006.patch

Hi [~msingh], thanks for your review! The comments you suggested make sense to me. The following
are my comments.

1) Thanks for dividing the apis into sync and async. I feel that for sync apis, lets use the
previous function without any change. This is to ensure that current behavior doesn't break.
Actually I didn't change any places in the original sync apis (including the params, method
name and logic). Just some code format. You can have a check, :).
Also can we add an extra capability to {{ XceiverClientHandler }} which initializes it as
either sync or async. Only a sync client will be able to send sync command and vice versa.
I have a little different option on this. Here the async way in {{XceiverClientHandler}} is
transparent for client/users. So Is this necessary to do?
3) in {{ testCorrectnessWithMultipleAsyncCalls }}, I feel that the return future should be
accepted in an array and then they can waited upon in another loop.This will ensure that commands
are enqueued in parallel
Good catch! Addressed in the latest patch.
4) Another comment which has earlier been noted, this code will not work with cblock correctly.
as there are cases where TraceID is not set correctly.
Sorry for missing your cblock codes. One quick fix way I am imaging is that we can do an additional
check for the traceID, if the id is empty ("" or null), we should give it a unique id (here
I use UUID.randomUUID()). But for long-term consideration, this way should be improved. It's
not a good way to generate id everywhere. It would be better to use a special id generator
to help us generate unique id. I will file a new ticket to for this.

Attach the updated patch.

> Ozone: Support asynchronus client API for SCM and containers
> ------------------------------------------------------------
>                 Key: HDFS-11580
>                 URL: https://issues.apache.org/jira/browse/HDFS-11580
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: ozone
>    Affects Versions: HDFS-7240
>            Reporter: Anu Engineer
>            Assignee: Yiqun Lin
>         Attachments: HDFS-11580-HDFS-7240.001.patch, HDFS-11580-HDFS-7240.002.patch,
HDFS-11580-HDFS-7240.003.patch, HDFS-11580-HDFS-7240.004.patch, HDFS-11580-HDFS-7240.005.patch,
> This is an umbrella JIRA that needs to support a set of APIs in Asynchronous form.
> For containers -- or the datanode API currently supports a call {{sendCommand}}. we need
to build proper programming interface and support an async interface.
> There is also a set of SCM API that clients can call, it would be nice to support Async
interface for those too.

This message was sent by Atlassian JIRA

To unsubscribe, e-mail: hdfs-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-help@hadoop.apache.org

View raw message