[
https://issues.apache.org/jira/browse/HDDS-1674?focusedWorklogId=262650&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-262650
]
ASF GitHub Bot logged work on HDDS-1674:
----------------------------------------
Author: ASF GitHub Bot
Created on: 18/Jun/19 22:08
Start Date: 18/Jun/19 22:08
Worklog Time Spent: 10m
Work Description: hadoop-yetus commented on issue #984: HDDS-1674 Make
ScmBlockLocationProtocol message type based
URL: https://github.com/apache/hadoop/pull/984#issuecomment-503330311
:broken_heart: **-1 overall**
| Vote | Subsystem | Runtime | Comment |
|:----:|----------:|--------:|:--------|
| 0 | reexec | 43 | Docker mode activated. |
||| _ Prechecks _ |
| +1 | dupname | 0 | No case conflicting files found. |
| +1 | @author | 0 | The patch does not contain any @author tags. |
| -1 | test4tests | 0 | The patch doesn't appear to include any new or
modified tests. Please justify why no new tests are needed for this patch.
Also please list what manual steps were performed to verify this patch. |
||| _ trunk Compile Tests _ |
| +1 | mvninstall | 520 | trunk passed |
| +1 | compile | 289 | trunk passed |
| +1 | checkstyle | 83 | trunk passed |
| +1 | mvnsite | 0 | trunk passed |
| +1 | shadedclient | 958 | branch has no errors when building and testing
our client artifacts. |
| +1 | javadoc | 172 | trunk passed |
| 0 | spotbugs | 344 | Used deprecated FindBugs config; considering
switching to SpotBugs. |
| +1 | findbugs | 536 | trunk passed |
||| _ Patch Compile Tests _ |
| +1 | mvninstall | 473 | the patch passed |
| +1 | compile | 294 | the patch passed |
| +1 | cc | 294 | the patch passed |
| +1 | javac | 294 | the patch passed |
| +1 | checkstyle | 86 | the patch passed |
| +1 | mvnsite | 0 | the patch passed |
| +1 | whitespace | 0 | The patch has no whitespace issues. |
| +1 | shadedclient | 749 | patch has no errors when building and testing
our client artifacts. |
| +1 | javadoc | 169 | the patch passed |
| +1 | findbugs | 552 | the patch passed |
||| _ Other Tests _ |
| -1 | unit | 184 | hadoop-hdds in the patch failed. |
| -1 | unit | 1427 | hadoop-ozone in the patch failed. |
| +1 | asflicense | 54 | The patch does not generate ASF License warnings. |
| | | 6757 | |
| Reason | Tests |
|-------:|:------|
| Failed junit tests | hadoop.ozone.container.common.impl.TestHddsDispatcher
|
| | hadoop.ozone.client.rpc.TestOzoneAtRestEncryption |
| | hadoop.ozone.client.rpc.TestSecureOzoneRpcClient |
| | hadoop.ozone.client.rpc.TestOzoneRpcClientWithRatis |
| | hadoop.ozone.client.rpc.TestOzoneRpcClient |
| | hadoop.ozone.scm.node.TestQueryNode |
| | hadoop.ozone.client.rpc.TestBCSID |
| Subsystem | Report/Notes |
|----------:|:-------------|
| Docker | Client=17.05.0-ce Server=17.05.0-ce base:
https://builds.apache.org/job/hadoop-multibranch/job/PR-984/3/artifact/out/Dockerfile
|
| GITHUB PR | https://github.com/apache/hadoop/pull/984 |
| Optional Tests | dupname asflicense compile javac javadoc mvninstall
mvnsite unit shadedclient findbugs checkstyle cc |
| uname | Linux 7aea99f99eaf 4.4.0-144-generic #170~14.04.1-Ubuntu SMP Mon
Mar 18 15:02:05 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux |
| Build tool | maven |
| Personality | personality/hadoop.sh |
| git revision | trunk / 81ec909 |
| Default Java | 1.8.0_212 |
| unit |
https://builds.apache.org/job/hadoop-multibranch/job/PR-984/3/artifact/out/patch-unit-hadoop-hdds.txt
|
| unit |
https://builds.apache.org/job/hadoop-multibranch/job/PR-984/3/artifact/out/patch-unit-hadoop-ozone.txt
|
| Test Results |
https://builds.apache.org/job/hadoop-multibranch/job/PR-984/3/testReport/ |
| Max. process+thread count | 5406 (vs. ulimit of 5500) |
| modules | C: hadoop-hdds/common U: hadoop-hdds/common |
| Console output |
https://builds.apache.org/job/hadoop-multibranch/job/PR-984/3/console |
| versions | git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1 |
| Powered by | Apache Yetus 0.10.0 http://yetus.apache.org |
This message was automatically generated.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 262650)
Time Spent: 50m (was: 40m)
> Make ScmBlockLocationProtocol message type based
> ------------------------------------------------
>
> Key: HDDS-1674
> URL: https://issues.apache.org/jira/browse/HDDS-1674
> Project: Hadoop Distributed Data Store
> Issue Type: Improvement
> Reporter: Elek, Marton
> Assignee: Stephen O'Donnell
> Priority: Major
> Labels: pull-request-available
> Time Spent: 50m
> Remaining Estimate: 0h
>
> Most of the Ozone protocols are "message type based" and not "method based".
> For example in OzoneManagerProtocol.proto there is only one method:
> {code}
> service OzoneManagerService {
> // A client-to-OM RPC to send client requests to OM Ratis server
> rpc submitRequest(OMRequest)
> returns(OMResponse);
> }
> {code}
> And the exact method is determined by the type of the message:
> {code}
> message OMResponse {
> required Type cmdType = 1; // Type of the command
> // A string that identifies this command, we generate Trace ID in Ozone
> // frontend and this allows us to trace that command all over ozone.
> optional string traceID = 2;
> optional bool success = 3 [default=true];
> optional string message = 4;
> required Status status = 5;
> optional string leaderOMNodeId = 6;
> optional CreateVolumeResponse createVolumeResponse =
> 11;
> optional SetVolumePropertyResponse setVolumePropertyResponse =
> 12;
> optional CheckVolumeAccessResponse checkVolumeAccessResponse =
> 13;
> ....
> }
> enum Type {
> CreateVolume = 11;
> SetVolumeProperty = 12;
> CheckVolumeAccess = 13;
> InfoVolume = 14;
> DeleteVolume = 15;
> ListVolume = 16;
> ....
> {code}
> This is not the most natural way to use protobuf services but it has the
> additional benefit that we can propagate traceId / exception in a common way.
> Earlier there was an agreement to modify all the protocols to use this
> "message type based" approach to make it possible to provide proper error
> handling.
> In this issue the ScmBlockLocationProtocol.proto should be modified to use
> only one message:
> {code}
> service ScmBlockLocationProtocolService {
> rpc send (SCMBlockLocationRequest) returns (SCMBlockLocationResponse);
> }
> {code}
> It also requires to create the common request and response objects (with the
> common fields like type, traceId, success, message, status as they are used
> in the OzoneManagerProtocol.proto).
> To make it work, the ScmBlockLocationProtocolClientSideTranslatorPB and the
> ScmBlockLocationProtocolServerSideTranslatorPB should be improved to
> wrap/unwrap the original message to/from the generic message.
> I propose to only the protocol change here (if possible) we can keep the
> message/status fields empty and fix the error propagation in HDDS-1258
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]