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

Uma Maheswara Rao G resolved HDDS-6012.
---------------------------------------
    Resolution: Fixed

Branch merged with this fix.

> EC: Fix TestOzoneShellHA failures post master merge with EC branch
> ------------------------------------------------------------------
>
>                 Key: HDDS-6012
>                 URL: https://issues.apache.org/jira/browse/HDDS-6012
>             Project: Apache Ozone
>          Issue Type: Sub-task
>    Affects Versions: EC-Branch
>            Reporter: Uma Maheswara Rao G
>            Assignee: Uma Maheswara Rao G
>            Priority: Major
>
> TestOzoneShellHA failing as the SCMClientProtocolServer#listContainer API is 
> not filtering properly EC containers.
>  
> {code:java}
> if (factor != null) {
> return scm.getContainerManager().getContainers(state).stream()
> .filter(info -> info.containerID().getId() >= startContainerID)
> .filter(info -> (info.getReplicationFactor() == factor))
> .sorted().limit(count).collect(Collectors.toList());
> }{code}
>  
> Here for EC containers, we will not have factor, so test will fail with the 
> following exception.
> {code:java}
> 2021-11-18 11:29:12,567 [Time-limited test] INFO  
> retry.RetryInvocationHandler (RetryInvocationHandler.java:log(411)) - 
> com.google.protobuf.ServiceException: 
> org.apache.hadoop.ipc.RemoteException(java.lang.UnsupportedOperationException):
>  factor is not valid property of replication EC
>     at 
> org.apache.hadoop.hdds.client.ReplicationConfig.getLegacyFactor(ReplicationConfig.java:110)
>     at 
> org.apache.hadoop.hdds.scm.container.ContainerInfo.getReplicationFactor(ContainerInfo.java:162)
>     at 
> org.apache.hadoop.hdds.scm.server.SCMClientProtocolServer.lambda$listContainer$4(SCMClientProtocolServer.java:432)
>     at 
> java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:174)
>     at 
> java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
>     at 
> java.util.ArrayList$ArrayListSpliterator.tryAdvance(ArrayList.java:1359)
>     at 
> java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:126)
>     at 
> java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:499)
>     at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:486)
>     at 
> java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472)
>     at 
> java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
>     at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
>     at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
>     at 
> org.apache.hadoop.hdds.scm.server.SCMClientProtocolServer.listContainer(SCMClientProtocolServer.java:433)
>     at 
> org.apache.hadoop.hdds.scm.protocol.StorageContainerLocationProtocolServerSideTranslatorPB.listContainer(StorageContainerLocationProtocolServerSideTranslatorPB.java:501)
>     at 
> org.apache.hadoop.hdds.scm.protocol.StorageContainerLocationProtocolServerSideTranslatorPB.processRequest(StorageContainerLocationProtocolServerSideTranslatorPB.java:229)
>     at 
> org.apache.hadoop.hdds.server.OzoneProtocolMessageDispatcher.processRequest(OzoneProtocolMessageDispatcher.java:87)
>     at 
> org.apache.hadoop.hdds.scm.protocol.StorageContainerLocationProtocolServerSideTranslatorPB.submitRequest{code}



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

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

Reply via email to