[jira] [Updated] (HDDS-11025) Adjust hadoop-hdds/docs/content/start/OnPrem.zh.md format.
[ https://issues.apache.org/jira/browse/HDDS-11025?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] StarBoy1005 updated HDDS-11025: --- Description: Change the format in OnPrem.zh.md !image-2024-06-18-17-12-10-292.png! was: Fresh users may confused about the usage of 'ozone sh volue/bucket list', add an example. Also change the format in OnPrem.zh.md !image-2024-06-18-17-12-10-292.png! Summary: Adjust hadoop-hdds/docs/content/start/OnPrem.zh.md format. (was: Update some docs, including add 'ozone sh volue/bucket list' usage and adjust ZH docs format.) > Adjust hadoop-hdds/docs/content/start/OnPrem.zh.md format. > -- > > Key: HDDS-11025 > URL: https://issues.apache.org/jira/browse/HDDS-11025 > Project: Apache Ozone > Issue Type: Improvement > Components: documentation >Affects Versions: 1.4.0 >Reporter: StarBoy1005 >Assignee: StarBoy1005 >Priority: Minor > Labels: pull-request-available > Attachments: image-2024-06-18-17-12-10-292.png > > > Change the format in OnPrem.zh.md > !image-2024-06-18-17-12-10-292.png! -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-10488) Datanode OOM due to run out of mmap handler
[ https://issues.apache.org/jira/browse/HDDS-10488?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sammi Chen updated HDDS-10488: -- Summary: Datanode OOM due to run out of mmap handler (was: Datanode OOO due to run out of mmap handler ) > Datanode OOM due to run out of mmap handler > > > Key: HDDS-10488 > URL: https://issues.apache.org/jira/browse/HDDS-10488 > Project: Apache Ozone > Issue Type: Improvement >Affects Versions: 1.4.0 >Reporter: Sammi Chen >Assignee: Sammi Chen >Priority: Major > Labels: pull-request-available > > When I run command "yarn jar > /**/lib/hadoop-mapreduce/hadoop-mapreduce-client-jobclient-tests.jar > TestDFSIO -Dfs.ofs.impl=org.apache.hadoop.fs.ozone.RootedOzoneFileSystem > -Dfs.AbstractFileSystem.ofs.impl=org.apache.hadoop.fs.ozone.RootedOzFs > -Dfs.defaultFS=ofs://ozone1708515436 -Dozone.client.bytes.per.checksum=1KB > -Dtest.build.data=ofs://ozone1708515436/s3v/testdfsio -write -nrFiles 64 > -fileSize 1024MB" on an installed Ozone cluster, several DN crashed due to > OOM. Following is the exception stack, > {code:java} > 6:52:03.601 AM WARN KeyValueHandler Operation: ReadChunk , Trace ID: , > Message: java.io.IOException: Map failed , Result: IO_EXCEPTION , > StorageContainerException Occurred. > org.apache.hadoop.hdds.scm.container.common.helpers.StorageContainerException: > java.io.IOException: Map failed > at > org.apache.hadoop.ozone.container.keyvalue.helpers.ChunkUtils.wrapInStorageContainerException(ChunkUtils.java:471) > at > org.apache.hadoop.ozone.container.keyvalue.helpers.ChunkUtils.readData(ChunkUtils.java:226) > at > org.apache.hadoop.ozone.container.keyvalue.helpers.ChunkUtils.readData(ChunkUtils.java:260) > at > org.apache.hadoop.ozone.container.keyvalue.helpers.ChunkUtils.readData(ChunkUtils.java:194) > at > org.apache.hadoop.ozone.container.keyvalue.impl.FilePerBlockStrategy.readChunk(FilePerBlockStrategy.java:197) > at > org.apache.hadoop.ozone.container.keyvalue.impl.ChunkManagerDispatcher.readChunk(ChunkManagerDispatcher.java:112) > at > org.apache.hadoop.ozone.container.keyvalue.KeyValueHandler.handleReadChunk(KeyValueHandler.java:773) > at > org.apache.hadoop.ozone.container.keyvalue.KeyValueHandler.dispatchRequest(KeyValueHandler.java:262) > at > org.apache.hadoop.ozone.container.keyvalue.KeyValueHandler.handle(KeyValueHandler.java:225) > at > org.apache.hadoop.ozone.container.common.impl.HddsDispatcher.dispatchRequest(HddsDispatcher.java:335) > at > org.apache.hadoop.ozone.container.common.impl.HddsDispatcher.lambda$dispatch$0(HddsDispatcher.java:183) > at > org.apache.hadoop.hdds.server.OzoneProtocolMessageDispatcher.processRequest(OzoneProtocolMessageDispatcher.java:89) > at > org.apache.hadoop.ozone.container.common.impl.HddsDispatcher.dispatch(HddsDispatcher.java:182) > at > org.apache.hadoop.ozone.container.common.transport.server.GrpcXceiverService$1.onNext(GrpcXceiverService.java:112) > at > org.apache.hadoop.ozone.container.common.transport.server.GrpcXceiverService$1.onNext(GrpcXceiverService.java:105) > at > org.apache.ratis.thirdparty.io.grpc.stub.ServerCalls$StreamingServerCallHandler$StreamingServerCallListener.onMessage(ServerCalls.java:262) > at > org.apache.ratis.thirdparty.io.grpc.ForwardingServerCallListener.onMessage(ForwardingServerCallListener.java:33) > at > org.apache.hadoop.hdds.tracing.GrpcServerInterceptor$1.onMessage(GrpcServerInterceptor.java:49) > at > org.apache.ratis.thirdparty.io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.messagesAvailableInternal(ServerCallImpl.java:329) > at > org.apache.ratis.thirdparty.io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.messagesAvailable(ServerCallImpl.java:314) > at > org.apache.ratis.thirdparty.io.grpc.internal.ServerImpl$JumpToApplicationThreadServerStreamListener$1MessagesAvailable.runInContext(ServerImpl.java:833) > at > org.apache.ratis.thirdparty.io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37) > at > org.apache.ratis.thirdparty.io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:133) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > Caused by: java.io.IOException: Map failed > at sun.nio.ch.FileChannelImpl.map(FileChannelImpl.java:938) > at > org.apache.hadoop.ozone.container.keyvalue.helpers.ChunkUtils.lambda$readData$5(ChunkUtils.java:264) > at > org.apache.hadoop.ozone.container.keyvalue.helpers.ChunkUtils.lambda$readData$4(ChunkUtils.java:218) > at >
[jira] [Created] (HDDS-11031) Merge BaseApprover abstract class with the DefaultApprover
István Fajth created HDDS-11031: --- Summary: Merge BaseApprover abstract class with the DefaultApprover Key: HDDS-11031 URL: https://issues.apache.org/jira/browse/HDDS-11031 Project: Apache Ozone Issue Type: Sub-task Reporter: István Fajth Currently we have 3 types defined for approving Certificate Sign Requests: - CertificateApprover (the base interface) - BaseApprover (an abstract implementation) - DefaultApprover (the actual implementation) Separating an abstract class is speculative before we have more than one implementation, also scatters the code to different places without any meaningful gain coming from the fact that we have an abstract class. As part of this change, the goal is to merge the abstract class with the DefaultApprover, and then simplify and clean up the code, in a way that the CertificateApprover interface does not have any BouncyCastle dependencies, and all BouncyCastle dependencies are encapsulated within the DefaultApprover class as a first step. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Created] (HDDS-11030) Do not throw OperatorCreationException from CertificateApprover#sign
István Fajth created HDDS-11030: --- Summary: Do not throw OperatorCreationException from CertificateApprover#sign Key: HDDS-11030 URL: https://issues.apache.org/jira/browse/HDDS-11030 Project: Apache Ozone Issue Type: Sub-task Reporter: István Fajth Currently CertificateApprover#sign throws a OperatorCreationException which is an exception defined within BouncyCastle. The approver can handle this exception internally and encapsulate its dependency on BouncyCastle, then throw a different exception, so that the DefaultCAServer does not need to handle exceptions defined by BouncyCastle. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Created] (HDDS-11029) Replace PKCS10CertificationRequest usage in DefaultCAServer
István Fajth created HDDS-11029: --- Summary: Replace PKCS10CertificationRequest usage in DefaultCAServer Key: HDDS-11029 URL: https://issues.apache.org/jira/browse/HDDS-11029 Project: Apache Ozone Issue Type: Sub-task Reporter: István Fajth Currently, we serialize the PEM encoded String represenation of a certificate sign request to send it over the wire to be signed by our CA server implementation. On the server side, the SCMSecurityProtocolServer class right away turns this transferred string representation back to a PKCS10CertificationRequest object, and then passes it on to the DefaultCAServer object. This DefaultCAServer then passes it on to the approver implementation to inspect if the CSR conforms with our predefined profiles, then to sign it. Instead of this, we should only convert the PEM encoded String back to a PKCS10CertificationRequest instance within the approver, with that limiting the scope of BouncyCastle usage for this purpose. Note: One idea to do so, is to create a separate approver for all the CSR-s that are arriving, as it is a lightweight to create object, and during the instance initialization we can do the conversion from String to PKCS10CertificationRequest. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-11028) Replace PKCS10CertificationRequest usage in CertificateClient
[ https://issues.apache.org/jira/browse/HDDS-11028?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] István Fajth updated HDDS-11028: Summary: Replace PKCS10CertificationRequest usage in CertificateClient (was: Replace PKCS10CertificationRequest usage in CertificateClient to String) > Replace PKCS10CertificationRequest usage in CertificateClient > - > > Key: HDDS-11028 > URL: https://issues.apache.org/jira/browse/HDDS-11028 > Project: Apache Ozone > Issue Type: Sub-task >Reporter: István Fajth >Priority: Major > > Currently the logic of the CertificateClient implementation to create a > certificate sign request, involves the CertificateSignRequest.Builder > implementation. > This Builder, at the end of the day returns a PKCS10CertificationRequest, > which is turned into a PEM encoded string format using > CertificateSignRequest#getEncodedString(PKCS10CertificationRequest) method > all the time, in order to send it to the CA server, where we re-create the > PKCS10CertificationRequest and then sign the certificate. > We can change this logic in a way where the CertificateSignRequest.Builder > returns a CertificateSignRequest object (as one would expect from its > Builder), which then is able to provide the PEM encoded String represenation > to the CertificateClient, this way we can ensure proper encapsulation of how > we deal with the CSR, and we can remove the BouncyCastle dependencies from > the CertificateClient classes. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-10378) Extend container repair capabilities to the block level
[ https://issues.apache.org/jira/browse/HDDS-10378?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ethan Rose updated HDDS-10378: -- Priority: Minor (was: Major) > Extend container repair capabilities to the block level > --- > > Key: HDDS-10378 > URL: https://issues.apache.org/jira/browse/HDDS-10378 > Project: Apache Ozone > Issue Type: Sub-task >Reporter: Ritesh Shukla >Priority: Minor > > The current proposal for the repair portion of reconciliation happens at the > chunk level. This means if a whole block is missing, we need to read it chunk > by chunk. We could potentially optimize this to pull the entire block and all > its chunk checksums in one call. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10935. Create hdds-crypto and hdds-crypto-default modules. [ozone]
fapifta commented on code in PR #6770: URL: https://github.com/apache/ozone/pull/6770#discussion_r1645154067 ## hadoop-hdds/crypto-default/pom.xml: ## @@ -0,0 +1,37 @@ + + +http://maven.apache.org/POM/4.0.0; + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd;> +4.0.0 + +org.apache.ozone +hdds +1.5.0-SNAPSHOT + + +hdds-crypto-default Review Comment: Thank you for remaining engaged on this review @adoroszlai, after doing the change, I also had a feeling that I don't particularly in fond of this name, however I was curious what do you think. Now, after we ran a circle... I started to hesitate, and I am somewhere in between the `-interface` and the `-api` suffix, slightly on the side of `-api`. Let me explain how my mind plays tricks with me and changes direction after every comment you make. The first thought of using `-interface` was a bit mindless, and after checking the project to do the rename, I realized that it is a prefix not a suffix in other modules. As a prefix looking at the `interface-*` modules' contents, my understanding is that, we express that a module defines a protocol/interface between services and clients, and in light of this realization I started to change my mind about the `interface` as a prefix for hdds-crypto. Now that you are also expressing the same feeling, and suggest to use it as a suffix instead, I feel that using `-interface` as a suffix would overload this meaning, that is why I turn back towards the `-api` suffix, as it seems to be more appropriate to do not overload the meaning of `interface`. So all in all, what if we go back to your initial suggestion and use `-api`? -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-11016. [hsync] 7th merge from master [ozone]
jojochuang merged PR #6824: URL: https://github.com/apache/ozone/pull/6824 -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Commented] (HDDS-11006) Selective checks: integration skipped when build not required
[ https://issues.apache.org/jira/browse/HDDS-11006?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17856074#comment-17856074 ] István Fajth commented on HDDS-11006: - Thank you [~adoroszlai] for the contribution. > Selective checks: integration skipped when build not required > - > > Key: HDDS-11006 > URL: https://issues.apache.org/jira/browse/HDDS-11006 > Project: Apache Ozone > Issue Type: Sub-task > Components: CI >Affects Versions: 1.5.0 >Reporter: Attila Doroszlai >Assignee: Attila Doroszlai >Priority: Major > Labels: pull-request-available > Fix For: 1.5.0 > > > Changing only {{junit.sh}} should trigger {{integration}} check (which uses > this script). Output of {{build-info}} is correct > ([{{needs-integration-tests=true}}|https://github.com/apache/ozone/actions/runs/9479546581/job/26118309123?pr=6807#step:4:777]), > but {{integration}} is > [skipped|https://github.com/apache/ozone/actions/runs/9479546581/job/26118347341?pr=6807] > because {{build}} is > [skipped|https://github.com/apache/ozone/actions/runs/9479546581/job/26118319979?pr=6807]. > Since {{integration}} no longer uses artifacts from {{build}}, I propose to > fix this by removing this dependency. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-11006) Selective checks: integration skipped when build not required
[ https://issues.apache.org/jira/browse/HDDS-11006?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] István Fajth updated HDDS-11006: Fix Version/s: 1.5.0 Resolution: Fixed Status: Resolved (was: Patch Available) > Selective checks: integration skipped when build not required > - > > Key: HDDS-11006 > URL: https://issues.apache.org/jira/browse/HDDS-11006 > Project: Apache Ozone > Issue Type: Sub-task > Components: CI >Affects Versions: 1.5.0 >Reporter: Attila Doroszlai >Assignee: Attila Doroszlai >Priority: Major > Labels: pull-request-available > Fix For: 1.5.0 > > > Changing only {{junit.sh}} should trigger {{integration}} check (which uses > this script). Output of {{build-info}} is correct > ([{{needs-integration-tests=true}}|https://github.com/apache/ozone/actions/runs/9479546581/job/26118309123?pr=6807#step:4:777]), > but {{integration}} is > [skipped|https://github.com/apache/ozone/actions/runs/9479546581/job/26118347341?pr=6807] > because {{build}} is > [skipped|https://github.com/apache/ozone/actions/runs/9479546581/job/26118319979?pr=6807]. > Since {{integration}} no longer uses artifacts from {{build}}, I propose to > fix this by removing this dependency. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-11006. Selective checks: integration skipped when build not required [ozone]
fapifta merged PR #6808: URL: https://github.com/apache/ozone/pull/6808 -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-11006. Selective checks: integration skipped when build not required [ozone]
fapifta commented on PR #6808: URL: https://github.com/apache/ozone/pull/6808#issuecomment-2177137230 I just did, sorry for the delay I wanted to understand how it works after removing the dependency, and just got here to check and understand what happens. The change looks good, +1. -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Assigned] (HDDS-10942) OM decommission config support for default serviceID.
[ https://issues.apache.org/jira/browse/HDDS-10942?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Aryan Gupta reassigned HDDS-10942: -- Assignee: Aryan Gupta (was: Sadanand Shenoy) > OM decommission config support for default serviceID. > - > > Key: HDDS-10942 > URL: https://issues.apache.org/jira/browse/HDDS-10942 > Project: Apache Ozone > Issue Type: Bug > Components: Ozone Manager >Reporter: Sadanand Shenoy >Assignee: Aryan Gupta >Priority: Major > > Currently before we decommission an OM , Ozone needs to configured with > "ozone.om.decommissioned.nodes.serviceID" to be vary of OM's to be > decommissioned . > It would be nice to add a constant suffix-less config key support i.e if only > one serviceId is configured, "ozone.om.decommissioned.nodes" should be an > acceptable config key that defaults to the only configured ID. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-11022. Set default test exclusion [ozone]
adoroszlai commented on PR #6830: URL: https://github.com/apache/ozone/pull/6830#issuecomment-2177000259 Thanks @swamirishi for reviewing and merging this. -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Resolved] (HDDS-11022) Activate native profile only if -Drocks_tools_native is set
[ https://issues.apache.org/jira/browse/HDDS-11022?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Attila Doroszlai resolved HDDS-11022. - Fix Version/s: 1.5.0 Assignee: Attila Doroszlai (was: Swaminathan Balachandran) Resolution: Implemented > Activate native profile only if -Drocks_tools_native is set > --- > > Key: HDDS-11022 > URL: https://issues.apache.org/jira/browse/HDDS-11022 > Project: Apache Ozone > Issue Type: Sub-task >Reporter: Swaminathan Balachandran >Assignee: Attila Doroszlai >Priority: Major > Labels: pull-request-available > Fix For: 1.5.0 > > > Currently when integration.sh script also triggers native tests which should > be only triggered by native.sh. This happens because native maven profile > gets activated by default if no profile is set. The test fails since native > lib has not been built. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-11022) Set default test exclusion
[ https://issues.apache.org/jira/browse/HDDS-11022?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Attila Doroszlai updated HDDS-11022: Summary: Set default test exclusion (was: Activate native profile only if -Drocks_tools_native is set) > Set default test exclusion > -- > > Key: HDDS-11022 > URL: https://issues.apache.org/jira/browse/HDDS-11022 > Project: Apache Ozone > Issue Type: Sub-task >Reporter: Swaminathan Balachandran >Assignee: Attila Doroszlai >Priority: Major > Labels: pull-request-available > Fix For: 1.5.0 > > > Currently when integration.sh script also triggers native tests which should > be only triggered by native.sh. This happens because native maven profile > gets activated by default if no profile is set. The test fails since native > lib has not been built. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-11022. Set default test exclusion [ozone]
swamirishi merged PR #6830: URL: https://github.com/apache/ozone/pull/6830 -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-11020) Implement RoundRobinPipelineChoosePolicy
[ https://issues.apache.org/jira/browse/HDDS-11020?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Siyao Meng updated HDDS-11020: -- Status: Patch Available (was: In Progress) > Implement RoundRobinPipelineChoosePolicy > > > Key: HDDS-11020 > URL: https://issues.apache.org/jira/browse/HDDS-11020 > Project: Apache Ozone > Issue Type: Task >Reporter: Siyao Meng >Assignee: Siyao Meng >Priority: Major > Labels: pull-request-available > > Implement RoundRobinPipelineChoosePolicy for test case > {{TestOzoneClientRetriesOnExceptions#testMaxRetriesByOzoneClient}}, in order > to ensure the test is run. > At this moment, RoundRobinPipelineChoosePolicy might only be useful for > testing and debugging purposes. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[PR] HDDS-11020. Implement RoundRobinPipelineChoosePolicy [ozone]
smengcl opened a new pull request, #6832: URL: https://github.com/apache/ozone/pull/6832 ## What changes were proposed in this pull request? Implement `RoundRobinPipelineChoosePolicy` for test case `TestOzoneClientRetriesOnExceptions#testMaxRetriesByOzoneClient`, in order to make sure the test is properly run every time instead of depending on the randomness in `RandomPipelineChoosePolicy`. `Assume.assumeFalse(containerList.contains(containerID))` was added in HDDS-4577 (#1689) to skip the test if the case of each block being in a different container is not satisfied. That can now be guaranteed with `RoundRobinPipelineChoosePolicy` and has thus been switched to `assert`. At this moment, `RoundRobinPipelineChoosePolicy` might only be useful for testing and debugging purposes. ## What is the link to the Apache JIRA https://issues.apache.org/jira/browse/HDDS-11020 ## How was this patch tested? - Added UT. -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-11020) Implement RoundRobinPipelineChoosePolicy
[ https://issues.apache.org/jira/browse/HDDS-11020?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] ASF GitHub Bot updated HDDS-11020: -- Labels: pull-request-available (was: ) > Implement RoundRobinPipelineChoosePolicy > > > Key: HDDS-11020 > URL: https://issues.apache.org/jira/browse/HDDS-11020 > Project: Apache Ozone > Issue Type: Task >Reporter: Siyao Meng >Assignee: Siyao Meng >Priority: Major > Labels: pull-request-available > > Implement RoundRobinPipelineChoosePolicy for test case > {{TestOzoneClientRetriesOnExceptions#testMaxRetriesByOzoneClient}}, in order > to ensure the test is run. > At this moment, RoundRobinPipelineChoosePolicy might only be useful for > testing and debugging purposes. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-11020) Implement RoundRobinPipelineChoosePolicy
[ https://issues.apache.org/jira/browse/HDDS-11020?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Siyao Meng updated HDDS-11020: -- Description: Implement RoundRobinPipelineChoosePolicy for test case {{TestOzoneClientRetriesOnExceptions#testMaxRetriesByOzoneClient}}, in order to ensure the test is run. At this moment, RoundRobinPipelineChoosePolicy might only be useful for testing and debugging purposes. was: Implement RoundRobinPipelineChoosePolicy for test case {{TestOzoneClientRetriesOnExceptions#testMaxRetriesByOzoneClient}}, in order to ensure the test is run. At this moment, RoundRobinPipelineChoosePolicy might only be useful for testing and debugginer purposes. > Implement RoundRobinPipelineChoosePolicy > > > Key: HDDS-11020 > URL: https://issues.apache.org/jira/browse/HDDS-11020 > Project: Apache Ozone > Issue Type: Task >Reporter: Siyao Meng >Assignee: Siyao Meng >Priority: Major > > Implement RoundRobinPipelineChoosePolicy for test case > {{TestOzoneClientRetriesOnExceptions#testMaxRetriesByOzoneClient}}, in order > to ensure the test is run. > At this moment, RoundRobinPipelineChoosePolicy might only be useful for > testing and debugging purposes. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-11020) Implement RoundRobinPipelineChoosePolicy
[ https://issues.apache.org/jira/browse/HDDS-11020?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Siyao Meng updated HDDS-11020: -- Summary: Implement RoundRobinPipelineChoosePolicy (was: Add RoundRobinPipelineChoosePolicy for testing) > Implement RoundRobinPipelineChoosePolicy > > > Key: HDDS-11020 > URL: https://issues.apache.org/jira/browse/HDDS-11020 > Project: Apache Ozone > Issue Type: Task >Reporter: Siyao Meng >Assignee: Siyao Meng >Priority: Major > > Implement RoundRobinPipelineChoosePolicy for test case > {{TestOzoneClientRetriesOnExceptions#testMaxRetriesByOzoneClient}}, in order > to ensure the test is run. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-11020) Implement RoundRobinPipelineChoosePolicy
[ https://issues.apache.org/jira/browse/HDDS-11020?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Siyao Meng updated HDDS-11020: -- Description: Implement RoundRobinPipelineChoosePolicy for test case {{TestOzoneClientRetriesOnExceptions#testMaxRetriesByOzoneClient}}, in order to ensure the test is run. At this moment, RoundRobinPipelineChoosePolicy might only be useful for testing and debugginer purposes. was:Implement RoundRobinPipelineChoosePolicy for test case {{TestOzoneClientRetriesOnExceptions#testMaxRetriesByOzoneClient}}, in order to ensure the test is run. > Implement RoundRobinPipelineChoosePolicy > > > Key: HDDS-11020 > URL: https://issues.apache.org/jira/browse/HDDS-11020 > Project: Apache Ozone > Issue Type: Task >Reporter: Siyao Meng >Assignee: Siyao Meng >Priority: Major > > Implement RoundRobinPipelineChoosePolicy for test case > {{TestOzoneClientRetriesOnExceptions#testMaxRetriesByOzoneClient}}, in order > to ensure the test is run. > At this moment, RoundRobinPipelineChoosePolicy might only be useful for > testing and debugginer purposes. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Commented] (HDDS-11008) OM's directoryTable shows, with ldb, negative long values as objectID and parentObjectID
[ https://issues.apache.org/jira/browse/HDDS-11008?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17856052#comment-17856052 ] Ethan Rose commented on HDDS-11008: --- This has always been the case. It has to do with the encoding of the values. RocksDB keys are binary, we are just using {{long}} as a holder of the bytes. The object ID values are computed from the Ratis transaction ID using [binary operations|https://github.com/apache/ozone/blob/cb5d51983d044734a714f32a32255dc9604eb701/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/OmUtils.java#L590]. This is going to make the base 10 representation of the number being displayed here invalid, probably because of two's compliment implementation details I don't recall off the top of my head. Since only the uniqueness of the binary values are important, core Ozone should be fine with this. We could change the implementation of our LDB wrapper to print the bytes in a different way, but that may be confusing if it does not give the same value that the code is actually working with since Java is also deserializing this as a long. > OM's directoryTable shows, with ldb, negative long values as objectID and > parentObjectID > > > Key: HDDS-11008 > URL: https://issues.apache.org/jira/browse/HDDS-11008 > Project: Apache Ozone > Issue Type: Bug > Components: OM >Affects Versions: 1.4.0 >Reporter: Siddhant Sangwan >Priority: Major > > {code} > # ozone debug ldb --db=om.db scan --cf=directoryTable > 24/06/13 05:14:45 INFO helpers.OmKeyInfo: OmKeyInfo.getCodec ignorePipeline = > true > 24/06/13 05:14:45 INFO helpers.OmKeyInfo: OmKeyInfo.getCodec ignorePipeline = > true > 24/06/13 05:14:45 INFO helpers.OmKeyInfo: OmKeyInfo.getCodec ignorePipeline = > true > 24/06/13 05:14:45 INFO helpers.OmKeyInfo: OmKeyInfo.getCodec ignorePipeline = > true > 24/06/13 05:14:45 INFO helpers.OmKeyInfo: OmKeyInfo.getCodec ignorePipeline = > true > { > "/-9223371984968727296/-9223371984968698880/-9223371984968698880/0c2lg4xioj": > { > "name": "0c2lg4xioj", > "creationTime": 1718108840313, > "modificationTime": 1718108840313, > "acls": [ > { > "type": "USER", > "name": "om@A.B.C", > "aclBitSet": [ > 0, > 0, > 0, > 0, > 0, > 0, > 0, > 1 > ], > "aclScope": "ACCESS" > }, > { > "type": "GROUP", > "name": "om", > "aclBitSet": [ > 0, > 0, > 0, > 0, > 0, > 0, > 0, > 1 > ], > "aclScope": "ACCESS" > } > ], > "parentObjectID": -9223371984968698880, > "objectID": -9223371984968667903, > "updateID": 202680109, > "metadata": {} > }, > "/-9223371985070811904/-9223371985070784768/-9223371985070784768/0c2lg4xioj": > { > "name": "0c2lg4xioj", > "creationTime": 1718108677371, > "modificationTime": 1718108677371, > "acls": [ > { > "type": "USER", > "name": "om@A.B.C", > "aclBitSet": [ > 0, > 0, > 0, > 0, > 0, > 0, > 0, > 1 > ], > "aclScope": "ACCESS" > }, > { > "type": "GROUP", > "name": "om", > "aclBitSet": [ > 0, > 0, > 0, > 0, > 0, > 0, > 0, > 1 > ], > "aclScope": "ACCESS" > } > ], > "parentObjectID": -9223371985070784768, > "objectID": -9223371985070755327, > "updateID": 202281330, > "metadata": {} > }, > ... > ... > {code} > The negative Long values look like an overflow bug. There are 31 directories > and 102 million keys in this cluster. Keys created using freon ockg. They are > FSO keys. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-10972) Reduce the default watch timeout configuration in DatanodeRatisServerConfig
[ https://issues.apache.org/jira/browse/HDDS-10972?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Wei-Chiu Chuang updated HDDS-10972: --- Release Note: Reduced watch timeout value hdds.ratis.raft.server.watch.timeout from 180 seconds to 30 seconds. > Reduce the default watch timeout configuration in DatanodeRatisServerConfig > --- > > Key: HDDS-10972 > URL: https://issues.apache.org/jira/browse/HDDS-10972 > Project: Apache Ozone > Issue Type: Improvement >Reporter: Ivan Andika >Assignee: Ivan Andika >Priority: Major > Labels: pull-request-available > Fix For: 1.5.0 > > > Reduce the default duration of Ratis server watch timeout > hdds.ratis.raft.server.watch.timeout to reduce the amount of time client > needs to wait during two-way commit (i.e. one DN is not reachable). > See the related tickets for context. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-11027. Introduce official Helm chart [ozone]
adoroszlai commented on code in PR #6831: URL: https://github.com/apache/ozone/pull/6831#discussion_r1644953812 ## charts/ozone/Chart.yaml: ## @@ -0,0 +1,32 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +apiVersion: v2 +name: ozone +description: The official Helm chart for Apache Ozone +type: application +version: 0.1.0 +appVersion: "1.4.0" Review Comment: `appVersion` should be defined as `"${project.version}"`, which will be replaced by Maven if we add a section similar to: https://github.com/apache/ozone/blob/b87f977ef235b7ecb2062c0196dcd0a36157d6e2/hadoop-ozone/dist/pom.xml#L155-L163 It's OK to make this change as part of the "Add CI pipeline for the chart" step later. -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10923. Container Scanner should still scan unhealthy containers. [ozone]
errose28 commented on code in PR #6809: URL: https://github.com/apache/ozone/pull/6809#discussion_r1644899282 ## hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/ozoneimpl/TestContainerScannersAbstract.java: ## @@ -121,9 +121,6 @@ public abstract void testPreviouslyScannedContainerIsScanned() @Test public abstract void testShutdownDuringScan() throws Exception; - @Test - public abstract void testUnhealthyContainerNotRescanned() throws Exception; Review Comment: Instead of deleting this method, let's just invert its conditions to test the code change. So it would become `testUnhealthyContainerRescanned` ## hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/keyvalue/KeyValueContainer.java: ## @@ -958,7 +946,8 @@ public ScanResult scanMetaData() throws InterruptedException { public boolean shouldScanData() { boolean shouldScan = Review Comment: I think an allow-list like we have here is easier to follow. There's other cases like CLOSING that might be ok, although those should move to CLOSED soon. RECOVERING we would still want to skip. I think DELETED may also be a state encountered on the DN as part of the atomic container delete code but I'd need to refresh my memory on how that was implemented. -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Assigned] (HDDS-11027) Introduce official Helm chart
[ https://issues.apache.org/jira/browse/HDDS-11027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Attila Doroszlai reassigned HDDS-11027: --- Assignee: Denis Krivenko > Introduce official Helm chart > - > > Key: HDDS-11027 > URL: https://issues.apache.org/jira/browse/HDDS-11027 > Project: Apache Ozone > Issue Type: New Feature > Components: kubernetes >Reporter: Denis Krivenko >Assignee: Denis Krivenko >Priority: Major > Labels: pull-request-available > > There is a common practice to provide an official Helm chart for a product to > increase its usage and adoption. I propose to create an initial version of > Helm chart to be used by the community for effortless deployment of Apache > Ozone on Kubernetes. > The following steps should to be done in order to release initial Helm chart > version: > * Implement initial version of the Helm chart; > * Add CI pipeline for the chart (lint, release etc); > * Update documentation with the chart details; > * Release initial version. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-11003. Eliminate code duplication in XceiverClientGrpc#sendCommandAsync [ozone]
smengcl commented on PR #6805: URL: https://github.com/apache/ozone/pull/6805#issuecomment-2176702492 Thanks @jojochuang and @adoroszlai for the reviewing this one! -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-11019. Remove unused variable release-year from root POM [ozone]
smengcl commented on PR #6826: URL: https://github.com/apache/ozone/pull/6826#issuecomment-2176699444 Thanks @adoroszlai for reviewing and merging this! -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-11027) Introduce official Helm chart
[ https://issues.apache.org/jira/browse/HDDS-11027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] ASF GitHub Bot updated HDDS-11027: -- Labels: pull-request-available (was: ) > Introduce official Helm chart > - > > Key: HDDS-11027 > URL: https://issues.apache.org/jira/browse/HDDS-11027 > Project: Apache Ozone > Issue Type: New Feature > Components: kubernetes >Reporter: Denis Krivenko >Priority: Major > Labels: pull-request-available > > There is a common practice to provide an official Helm chart for a product to > increase its usage and adoption. I propose to create an initial version of > Helm chart to be used by the community for effortless deployment of Apache > Ozone on Kubernetes. > The following steps should to be done in order to release initial Helm chart > version: > * Implement initial version of the Helm chart; > * Add CI pipeline for the chart (lint, release etc); > * Update documentation with the chart details; > * Release initial version. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[PR] HDDS-11027. Introduce official Helm chart [ozone]
dnskr opened a new pull request, #6831: URL: https://github.com/apache/ozone/pull/6831 ## What changes were proposed in this pull request? There is a common practice to provide an official Helm chart for a product to increase its usage and adoption. I propose to create an initial version of Helm chart to be used by the community for effortless deployment of Apache Ozone on Kubernetes. The following steps should to be done in order to release initial Helm chart version: - [x] Implement initial version of the Helm chart; - [ ] Add CI pipeline for the chart (lint, release etc); - [ ] Update documentation with the chart details; - [ ] Release initial version. **Comments, suggestions and feedback are very welcome!** ## What is the link to the Apache JIRA https://issues.apache.org/jira/browse/HDDS-11027 ## How was this patch tested? Tested manually on Minikube ```sh helm install ozone charts/ozone ``` Status check ```sh $ kubectl get pod NAME READY STATUSRESTARTS AGE ozone-datanode-0 1/1 Running 0 2m11s ozone-datanode-1 1/1 Running 0 2m10s ozone-datanode-2 1/1 Running 0 2m9s ozone-om-0 1/1 Running 0 2m11s ozone-s3g-01/1 Running 0 2m11s ozone-scm-01/1 Running 0 2m11s $ kubectl get service NAME TYPECLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetesClusterIP 10.96.0.1443/TCP 5h59m ozone-datanodeClusterIP 10.98.184.181 9882/TCP 2m21s ozone-datanode-headless ClusterIP None 9882/TCP 2m21s ozone-om ClusterIP 10.100.191.112 9874/TCP 2m21s ozone-om-headless ClusterIP None 9874/TCP 2m21s ozone-s3g ClusterIP 10.100.105.252 9878/TCP 2m21s ozone-s3g-headlessClusterIP None 9878/TCP 2m21s ozone-scm ClusterIP 10.107.10.164 9876/TCP 2m21s ozone-scm-headlessClusterIP None 9876/TCP 2m21s ``` -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Comment Edited] (HDDS-9844) [hsync] De-synchronize hsync API
[ https://issues.apache.org/jira/browse/HDDS-9844?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17856026#comment-17856026 ] Duong edited comment on HDDS-9844 at 6/18/24 6:03 PM: -- Discussed offline with [~weichiu] and [~smeng]. The hsync() and write() API can logically look like the below. {code:java} void hsync() { CompleteableFuture putBlockResponseFuture; Long lastCommitIndex; synchronize(this) { // 1. if there is pending data in the currentBuffer, create writeChunk and send. if (totalDataFlushedLength < writtenDataLength) { writeChunk = getWriteChunkRequest(currentBuffer); // 2. Send the writeChunk request. sendWriteChunkAsync(writeChunk); // 3. Reset current Buffer to accomodate new write currentBuffer = reset(currentBuffer); // 4. Update putBlock data with the last writeChunk and send putBlock. this.containerBlockData.add(writeChunk); putBlockResponseFuture = executePutBlockAsync(); } else { lastCommitIndex = getLastPendingCommit(); } } // 4. Wait for `putBlock` reply and issue a watchForCommmit if there is data written by this hsync. if (putBlockResponseFuture != null) { PutBlockRespose putBlockResponse = putBlockResponseFuture.get(); // 5. watchForCommit. watchForCommit(putBlockResponse.commitIndex); } else { // wait for lastCommitIndex to pass. } } void write(byte[] data, int off, int len) { CompleteableFuture putBlockResponseFuture; synchronize(this) { // 1. write data to the currentBuffer. currentBuffer.put(data) // 2. if buffer is full, if (currentBuffer.isFull()) { writeChunk = getWriteChunkRequest(currentBuffer); sendWriteChunkAsync(writeChunk); currentBuffer = reset(currentBuffer); this.containerBlockData.add(writeChunk); putBlockResponseFuture = executePutBlockAsync(); } } if (putBlockResponseFuture != null) { PutBlockRespose putBlockResponse = putBlockResponseFuture.get(); watchForCommit(putBlockResponse.commitIndex); } }{code} Implementation-wise, some points need more thought. 1. The usage of ChunkBuffer and BufferPool. When a thread create a writeChunk request from the curentBuffer, there's a configuration to enable unsafeWrap. UnsafeWrap allows the writeChunk request content to refer directly to the curentBuffer address instead of copying data. This avoids creating too many temporary buffers for writeChunk and thus eliminates the cost of GC. (With the copying approach, we'll have O(GC) = O(written data)). However, in the context of multithreaded, after a thread creates a writeChunk request out of the currentBuffer, we need to reserve/lock that buffer until the writeChunk is successfully sent. We need to define the exact behavior of how ChunkBuffers are organized to accommodate a variable number of hsync() caller threads. 2. The current implementation contains quite a lot of wrong abstraction and wrong responsibility in components. E.g. - CommitWatcher has no business to manager the flushFutures (putBlock futures). This should be a thing in the BlockInputStream. - The abstraction on top of ECBlockInputStream and RatisBlockInputStream are incorrect. - Much of the complexity of the code comes from (I think) the efforts to make it work for multithreaded contexts, but it doesn't. In the end, we got the complexity of the multithreaded implementation with the functionality of non-threadsafe. These make the code changes for desynchronize OutputStream abundant. We can probably make some refactoring efforts to clean them up before proceeding with the real code change. c.c [~weichiu][~smeng]. [~szetszwo], we need your opinions about the pseudo code above and the buffer management. was (Author: JIRAUSER290990): Discussed offline with [~weichiu] and [~smeng]. The hsync() and write() API can logically look like the below. {code:java} void hsync() { CompleteableFuture putBlockResponseFuture; Long lastCommitIndex; synchronize(this) { // 1. if there is pending data in the currentBuffer, create writeChunk and send. if (totalDataFlushedLength < writtenDataLength) { writeChunk = getWriteChunkRequest(currentBuffer); // 2. Send the writeChunk request. sendWriteChunkAsync(writeChunk); // 3. Reset current Buffer to accomodate new write currentBuffer = reset(currentBuffer); // 4. Update putBlock data
[jira] [Comment Edited] (HDDS-9844) [hsync] De-synchronize hsync API
[ https://issues.apache.org/jira/browse/HDDS-9844?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17856026#comment-17856026 ] Duong edited comment on HDDS-9844 at 6/18/24 6:02 PM: -- Discussed offline with [~weichiu] and [~smeng]. The hsync() and write() API can logically look like the below. {code:java} void hsync() { CompleteableFuture putBlockResponseFuture; Long lastCommitIndex; synchronize(this) { // 1. if there is pending data in the currentBuffer, create writeChunk and send. if (totalDataFlushedLength < writtenDataLength) { writeChunk = getWriteChunkRequest(currentBuffer); // 2. Send the writeChunk request. sendWriteChunkAsync(writeChunk); // 3. Reset current Buffer to accomodate new write currentBuffer = reset(currentBuffer); // 4. Update putBlock data with the last writeChunk and send putBlock. this.containerBlockData.add(writeChunk); putBlockResponseFuture = executePutBlockAsync(); } else { lastCommitIndex = getLastPendingCommit(); } } // 4. Wait for `putBlock` reply and issue a watchForCommmit if there is data written by this hsync. if (putBlockResponseFuture != null) { PutBlockRespose putBlockResponse = putBlockResponseFuture.get(); // 5. watchForCommit. watchForCommit(putBlockResponse.commitIndex); } else { // wait for lastCommitIndex to pass. } } void write(byte[] data, int off, int len) { CompleteableFuture putBlockResponseFuture; synchronize(this) { // 1. write data to the currentBuffer. currentBuffer.put(data) // 2. if buffer is full, if (currentBuffer.isFull()) { writeChunk = getWriteChunkRequest(currentBuffer); sendWriteChunkAsync(writeChunk); currentBuffer = reset(currentBuffer); this.containerBlockData.add(writeChunk); putBlockResponseFuture = executePutBlockAsync(); } } if (putBlockResponseFuture != null) { PutBlockRespose putBlockResponse = putBlockResponseFuture.get(); watchForCommit(putBlockResponse.commitIndex); } }{code} Implementation-wise, some points need more thought. 1. The usage of ChunkBuffer and BufferPool. When a thread create a writeChunk request from the curentBuffer, there's a configuration to enable unsafeWrap. UnsafeWrap allows the writeChunk request content to refer directly to the curentBuffer address instead of copying data. This avoids creating too many temporary buffers for writeChunk and thus eliminates the cost of GC. (With the copying approach, we'll have O(GC) = O(written data)). However, in the context of multithreaded, after a thread creates a writeChunk request out of the currentBuffer, we need to reserve/lock that buffer until the writeChunk is successfully sent. We need to define the exact behavior of how ChunkBuffers are organized to accommodate a variable number of hsync() caller threads. 2. The current implementation contains quite a lot of wrong abstraction and wrong responsibility in components. E.g. - CommitWatcher has no business to manager the flushFutures (putBlock futures). This should be a thing in the BlockInputStream. - The abstraction on top of ECBlockInputStream and RatisBlockInputStream are incorrect. - Much of the complexity of the code comes from (I think) the efforts to make it work for multithreaded contexts, but it doesn't. In the end, we got the complexity of the multithreaded implementation with the functionality of non-threadsafe. These make the code changes for desynchronize OutputStream abundant. We can probably make some refactoring efforts to clean them up before proceeding with the real code change. c.c [~weichiu][~smeng]. @szetszwo, we need your opinions about the pseudo code above and the buffer management. was (Author: JIRAUSER290990): Discussed offline with [~weichiu] and [~smeng]. The hsync() and write() API can logically look like the below. {code:java} void hsync() { CompleteableFuture putBlockResponseFuture; Long lastCommitIndex; synchronize(this) { // 1. if there is pending data in the currentBuffer, create writeChunk and send. if (totalDataFlushedLength < writtenDataLength) { writeChunk = getWriteChunkRequest(currentBuffer); // 2. Send the writeChunk request. sendWriteChunkAsync(writeChunk); // 3. Reset current Buffer to accomodate new write currentBuffer = reset(currentBuffer); // 4. Update putBlock data
[jira] [Commented] (HDDS-9844) [hsync] De-synchronize hsync API
[ https://issues.apache.org/jira/browse/HDDS-9844?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17856026#comment-17856026 ] Duong commented on HDDS-9844: - Discussed offline with [~weichiu] and [~smeng]. The hsync() and write() API can logically look like the below. {code:java} void hsync() { CompleteableFuture putBlockResponseFuture; Long lastCommitIndex; synchronize(this) { // 1. if there is pending data in the currentBuffer, create writeChunk and send. if (totalDataFlushedLength < writtenDataLength) { writeChunk = getWriteChunkRequest(currentBuffer); // 2. Send the writeChunk request. sendWriteChunkAsync(writeChunk); // 3. Reset current Buffer to accomodate new write currentBuffer = reset(currentBuffer); // 4. Update putBlock data with the last writeChunk and send putBlock. this.containerBlockData.add(writeChunk); putBlockResponseFuture = executePutBlockAsync(); } else { lastCommitIndex = getLastPendingCommit(); } } // 4. Wait for `putBlock` reply and issue a watchForCommmit if there is data written by this hsync. if (putBlockResponseFuture != null) { PutBlockRespose putBlockResponse = putBlockResponseFuture.get(); // 5. watchForCommit. watchForCommit(putBlockResponse.commitIndex); } else { // wait for lastCommitIndex to pass. } } void write(byte[] data, int off, int len) { CompleteableFuture putBlockResponseFuture; synchronize(this) { // 1. write data to the currentBuffer. currentBuffer.put(data) // 2. if buffer is full, if (currentBuffer.isFull()) { writeChunk = getWriteChunkRequest(currentBuffer); sendWriteChunkAsync(writeChunk); currentBuffer = reset(currentBuffer); this.containerBlockData.add(writeChunk); putBlockResponseFuture = executePutBlockAsync(); } } if (putBlockResponseFuture != null) { PutBlockRespose putBlockResponse = putBlockResponseFuture.get(); watchForCommit(putBlockResponse.commitIndex); } }{code} Implementation-wise, some points need more thought. 1. The usage of ChunkBuffer and BufferPool. When a thread create a writeChunk request from the curentBuffer, there's a configuration to enable unsafeWrap. UnsafeWrap allows the writeChunk request content to refer directly to the curentBuffer address instead of copying data. This avoids creating too many temporary buffers for writeChunk and thus eliminates the cost of GC. (With the copying approach, we'll have O(GC) = O(written data)). However, in the context of multithreaded, after a thread creates a writeChunk request out of the currentBuffer, we need to reserve/lock that buffer until the writeChunk is successfully sent. We need to define the exact behavior of how ChunkBuffers are organized to accommodate a variable number of hsync() caller threads. 2. The current implementation contains quite a lot of wrong abstraction and wrong responsibility in components. E.g. - CommitWatcher has no business to manager the flushFutures (putBlock futures). This should be a thing in the BlockInputStream. - The abstraction on top of ECBlockInputStream and RatisBlockInputStream are incorrect. - Much of the complexity of the code comes from (I think) the efforts to make it work for multithreaded contexts, but it doesn't. In the end, we got the complexity of the multithreaded implementation with the functionality of non-threadsafe. These make the code changes for desynchronize OutputStream abundant. We can probably make some refactoring efforts to clean them up before proceeding with the real code change. c.c [~weichiu][~smeng]. [szetszwo], we need your opinions about the pseudo code above and the buffer management. > [hsync] De-synchronize hsync API > > > Key: HDDS-9844 > URL: https://issues.apache.org/jira/browse/HDDS-9844 > Project: Apache Ozone > Issue Type: Sub-task >Reporter: Wei-Chiu Chuang >Assignee: Siyao Meng >Priority: Major > Labels: pull-request-available > Attachments: Screenshot 2024-02-27 at 8.01.48 PM.png > > > The current hysnc implementation KeyOutputStream.hsync() is wrapped in a > synchronized block. The HBase write ahead log FSHLog.SyncRunner has multiple > threads invoking hsync in parallel to reduce client latency. > We should unsynchronize Ozone's hsync such that it doesn't block waiting for > the Ratis transaction to respond. > cc: [~szetszwo] this is what we discussed
[jira] [Created] (HDDS-11027) Introduce official Helm chart
Denis Krivenko created HDDS-11027: - Summary: Introduce official Helm chart Key: HDDS-11027 URL: https://issues.apache.org/jira/browse/HDDS-11027 Project: Apache Ozone Issue Type: New Feature Components: kubernetes Reporter: Denis Krivenko There is a common practice to provide an official Helm chart for a product to increase its usage and adoption. I propose to create an initial version of Helm chart to be used by the community for effortless deployment of Apache Ozone on Kubernetes. The following steps should to be done in order to release initial Helm chart version: * Implement initial version of the Helm chart; * Add CI pipeline for the chart (lint, release etc); * Update documentation with the chart details; * Release initial version. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-9572. Restore favicons from original ozone website [ozone-site]
errose28 commented on PR #95: URL: https://github.com/apache/ozone-site/pull/95#issuecomment-2176642812 Thanks for the review @dombizita. I'll check the reference you shared and take another stab at getting the rounded icon for the chrome pwa on macos. I think that's a pretty small use case, so we can probably merge this as is if we can't get that one part to work after another attempt. -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10749. Shutdown datanode when RatisServer is down [ozone]
jojochuang commented on PR #6587: URL: https://github.com/apache/ozone/pull/6587#issuecomment-2176640975 I was made aware that for OM if Ratis server experiences a long pause, Ratis state machine crashes itself and that shuts down OM: https://issues.apache.org/jira/browse/HDDS-6141 -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10854. Run full Ozone CI with specific Ratis commit [ozone]
kerneltime commented on PR #6822: URL: https://github.com/apache/ozone/pull/6822#issuecomment-2176618268 > Thanks @kerneltime, @szetszwo for the review. > > Documentation follow-up to be done in [HDDS-11026](https://issues.apache.org/jira/browse/HDDS-11026). Thanks @adoroszlai -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10943. Freon DN Echo should skip writing payload to ratis log [ozone]
kerneltime commented on PR #6825: URL: https://github.com/apache/ozone/pull/6825#issuecomment-2176599563 > @kerneltime i want to do something similar to WriteChunk where the payload got sent to follower too. Makes sense. Do you want this PR to still go forward? -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10943. Freon DN Echo should skip writing payload to ratis log [ozone]
jojochuang commented on PR #6825: URL: https://github.com/apache/ozone/pull/6825#issuecomment-2176594486 @kerneltime i want to do something similar to WriteChunk where the payload got sent to follower too. -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10923. Container Scanner should still scan unhealthy containers. [ozone]
kerneltime commented on code in PR #6809: URL: https://github.com/apache/ozone/pull/6809#discussion_r1644803514 ## hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/keyvalue/KeyValueContainer.java: ## @@ -958,7 +946,8 @@ public ScanResult scanMetaData() throws InterruptedException { public boolean shouldScanData() { boolean shouldScan = Review Comment: Should we switch shouldScan to be true if it is not open? -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-11022. Activate native profile only if -Drocks_tools_native is set [ozone]
swamirishi closed pull request #6827: HDDS-11022. Activate native profile only if -Drocks_tools_native is set URL: https://github.com/apache/ozone/pull/6827 -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-11022. Activate native profile only if -Drocks_tools_native is set [ozone]
swamirishi commented on PR #6827: URL: https://github.com/apache/ozone/pull/6827#issuecomment-2176552896 Closing this PR in favour of #6830 -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10486. Recon datanode UI to incorporate explicit removal of DEAD [ozone]
smitajoshi12 commented on PR #6411: URL: https://github.com/apache/ozone/pull/6411#issuecomment-2176531921 > @smitajoshi12 If DN operational state is `DECOMMISSIONED` or Node Status is `DEAD`, then only we allow, We are also **`NOT`** allowing IN_MAINTENANCE node to be removed. And if a node operational state is `DECOMMISSIONED`, it is not necessarily to be in `DEAD` status and node status may still be `HEALTHY`, so first priority is to check DN operational state should be equal to `DECOMMISSIONED`, then in `OR` second condition should be node status as `DEAD`. > > cc: @krishnaasawa1 @devmadhuu Disabled removal for Operation State = IN_MAINTENANCE updated JIRA description and PR details also. **State= DEADOperation State=[Any State] ==> Allow for explicit removal State= [Any] Operation State=[Decommissioned] ==> Allow for explicit removal** Noticed one issue in datanode api State= [Any] Operation State=[Decommissioned] removal is happening but some interval of 1 min or 2 mins I can see DECOMMISSIONED Records again. ![image](https://github.com/apache/ozone/assets/112169209/b56976b0-4c17-4b7d-8753-e15c2742ef25) -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10935. Create hdds-crypto and hdds-crypto-default modules. [ozone]
adoroszlai commented on code in PR #6770: URL: https://github.com/apache/ozone/pull/6770#discussion_r1644687570 ## hadoop-hdds/crypto-default/pom.xml: ## @@ -0,0 +1,37 @@ + + +http://maven.apache.org/POM/4.0.0; + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd;> +4.0.0 + +org.apache.ozone +hdds +1.5.0-SNAPSHOT + + +hdds-crypto-default Review Comment: I think we should preserve the existing `interface-` prefix naming convention for modules with (mostly) proto interface definitions. In those cases there is no corresponding proper "implementation" module. For crypto (and other APIs we may introduce in the future), I'd use it as a suffix. -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10935. Create hdds-crypto and hdds-crypto-default modules. [ozone]
fapifta commented on code in PR #6770: URL: https://github.com/apache/ozone/pull/6770#discussion_r1644671586 ## hadoop-hdds/crypto-default/pom.xml: ## @@ -0,0 +1,37 @@ + + +http://maven.apache.org/POM/4.0.0; + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd;> +4.0.0 + +org.apache.ozone +hdds +1.5.0-SNAPSHOT + + +hdds-crypto-default Review Comment: I have renamed the module keeping our naming convention, the name of the folder became "interface-crypto", and the name of the module became "hdds-interface-crypto", @adoroszlai please take a look if it is better this way (I am not that sure now after I did it and looked at it). -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10888. Restrict X509CertificateHolder usage to the bare minimum required. [ozone]
adoroszlai commented on PR #6802: URL: https://github.com/apache/ozone/pull/6802#issuecomment-2176265810 @ChenSammi would you like to take another look? -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-11006. Selective checks: integration skipped when build not required [ozone]
adoroszlai commented on PR #6808: URL: https://github.com/apache/ozone/pull/6808#issuecomment-2176259416 @fapifta would you like to review? -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10855. Handle Null ParentKeyInfo Error in Recon Namespace Summary Task. [ozone]
ArafatKhan2198 commented on PR #6679: URL: https://github.com/apache/ozone/pull/6679#issuecomment-2176237926 @dombizita Thanks for the comment, I have removed the _Modified methods to throw an exception if the parent info is not found_ from the PR description the only change we are making in this patch is for the modified log messages and nothing else, please take a look now! -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-10486) Recon datanode UI to incorporate explicit removal of DEAD datanodes
[ https://issues.apache.org/jira/browse/HDDS-10486?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] smita updated HDDS-10486: - Description: Recon datanodes listing page should have a mechanism using a button or link which will be enabled once user selects the* Node status as DEAD or Operation State = Decommissioned * for explicity removal from Recon memory and ask recon to stop tracking. Following backend API will be provided by Recon to facilitate this. PUT api/v1/datanodes/remove JSON Body input takes UUID list of datanodes to be removed from cluster: Input: [ "50ca4c95-2ef3-4430-b944-97d2442c3daf" ] Output: {noformat} { "removedNodes": { "totalCount": 1, "datanodes": [ { "uuid": "50ca4c95-2ef3-4430-b944-97d2442c3daf", "hostname": "ozone-datanode-4.ozone_default", "state": "DEAD", "pipelines": null } ], "message": "Successfully removed 1 datanodes !!!" } }{noformat} was: Recon datanodes listing page should have a mechanism using a button or link which will be enabled once user selects the Node status as DEAD or Operation State = Decommissioned for explicity removal from Recon memory and ask recon to stop tracking. Following backend API will be provided by Recon to facilitate this. PUT api/v1/datanodes/remove JSON Body input takes UUID list of datanodes to be removed from cluster: Input: [ "50ca4c95-2ef3-4430-b944-97d2442c3daf" ] Output: {noformat} { "removedNodes": { "totalCount": 1, "datanodes": [ { "uuid": "50ca4c95-2ef3-4430-b944-97d2442c3daf", "hostname": "ozone-datanode-4.ozone_default", "state": "DEAD", "pipelines": null } ], "message": "Successfully removed 1 datanodes !!!" } }{noformat} > Recon datanode UI to incorporate explicit removal of DEAD datanodes > --- > > Key: HDDS-10486 > URL: https://issues.apache.org/jira/browse/HDDS-10486 > Project: Apache Ozone > Issue Type: Sub-task > Components: Ozone Recon >Reporter: Devesh Kumar Singh >Assignee: smita >Priority: Major > Labels: pull-request-available > > Recon datanodes listing page should have a mechanism using a button or link > which will be enabled once user selects the* Node status as DEAD or Operation > State = Decommissioned * for explicity removal from Recon memory and ask > recon to stop tracking. Following backend API will be provided by Recon to > facilitate this. > > PUT > api/v1/datanodes/remove > JSON Body input takes UUID list of datanodes to be removed from cluster: > Input: > [ > "50ca4c95-2ef3-4430-b944-97d2442c3daf" > ] > Output: > > {noformat} > { "removedNodes": { "totalCount": 1, "datanodes": [ { "uuid": > "50ca4c95-2ef3-4430-b944-97d2442c3daf", "hostname": > "ozone-datanode-4.ozone_default", "state": "DEAD", "pipelines": null } ], > "message": "Successfully removed 1 datanodes !!!" } }{noformat} > > > > -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-10486) Recon datanode UI to incorporate explicit removal of DEAD datanodes
[ https://issues.apache.org/jira/browse/HDDS-10486?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] smita updated HDDS-10486: - Description: Recon datanodes listing page should have a mechanism using a button or link which will be enabled once user selects the Node status as DEAD or Operation State = Decommissioned for explicity removal from Recon memory and ask recon to stop tracking. Following backend API will be provided by Recon to facilitate this. PUT api/v1/datanodes/remove JSON Body input takes UUID list of datanodes to be removed from cluster: Input: [ "50ca4c95-2ef3-4430-b944-97d2442c3daf" ] Output: {noformat} { "removedNodes": { "totalCount": 1, "datanodes": [ { "uuid": "50ca4c95-2ef3-4430-b944-97d2442c3daf", "hostname": "ozone-datanode-4.ozone_default", "state": "DEAD", "pipelines": null } ], "message": "Successfully removed 1 datanodes !!!" } }{noformat} was: Recon datanodes listing page should have a mechanism using a button or link which will be enabled once user selects the DEAD or Decommissioned or In Maintenance nodes for explicity removal from Recon memory and ask recon to stop tracking. Following backend API will be provided by Recon to facilitate this. PUT api/v1/datanodes/remove JSON Body input takes UUID list of datanodes to be removed from cluster: Input: [ "50ca4c95-2ef3-4430-b944-97d2442c3daf" ] Output: {noformat} { "removedNodes": { "totalCount": 1, "datanodes": [ { "uuid": "50ca4c95-2ef3-4430-b944-97d2442c3daf", "hostname": "ozone-datanode-4.ozone_default", "state": "DEAD", "pipelines": null } ], "message": "Successfully removed 1 datanodes !!!" } }{noformat} > Recon datanode UI to incorporate explicit removal of DEAD datanodes > --- > > Key: HDDS-10486 > URL: https://issues.apache.org/jira/browse/HDDS-10486 > Project: Apache Ozone > Issue Type: Sub-task > Components: Ozone Recon >Reporter: Devesh Kumar Singh >Assignee: smita >Priority: Major > Labels: pull-request-available > > Recon datanodes listing page should have a mechanism using a button or link > which will be enabled once user selects the Node status as DEAD or Operation > State = Decommissioned for explicity removal from Recon memory and ask recon > to stop tracking. Following backend API will be provided by Recon to > facilitate this. > > PUT > api/v1/datanodes/remove > JSON Body input takes UUID list of datanodes to be removed from cluster: > Input: > [ > "50ca4c95-2ef3-4430-b944-97d2442c3daf" > ] > Output: > > {noformat} > { "removedNodes": { "totalCount": 1, "datanodes": [ { "uuid": > "50ca4c95-2ef3-4430-b944-97d2442c3daf", "hostname": > "ozone-datanode-4.ozone_default", "state": "DEAD", "pipelines": null } ], > "message": "Successfully removed 1 datanodes !!!" } }{noformat} > > > > -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10864. Recon Disk Usage If one volume is large it occupies almost all space of Pie Chart [ozone]
smitajoshi12 commented on PR #6801: URL: https://github.com/apache/ozone/pull/6801#issuecomment-2176118373 > Ohh, wait a minute. Based on the npm doc you attached: _Normalize array to unit length, that is 0..1 range_. Any linear normalisation won't change the size of the slices in the pie chart... So overall with this change you are just adding that number (`MIN_BLOCK_SIZE`) to every slice and show it like that... I don't think this is a good solution. I think if we don't like that there are huge differences in the volume/bucket sizes, we should rather change the chart we are using. @Zita We are not changing percentage or any other logic just adding extra slice space on entities we will have max 30 entities we can accomodate accordingly easily. -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10864. Recon Disk Usage If one volume is large it occupies almost all space of Pie Chart [ozone]
dombizita commented on PR #6801: URL: https://github.com/apache/ozone/pull/6801#issuecomment-2176068108 Ohh, wait a minute. You are doing linear normalisation, right? Any linear normalisation won't change the size of the slices in the pie chart... So overall with this change you are just adding that number (`MIN_BLOCK_SIZE`) to every slice and show it like that... I don't think this is a good solution. I think if we don't like that there are huge differences in the volume/bucket sizes, we should rather change the chart we are using. -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10864. Recon Disk Usage If one volume is large it occupies almost all space of Pie Chart [ozone]
dombizita commented on code in PR #6801: URL: https://github.com/apache/ozone/pull/6801#discussion_r1644409878 ## hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/views/diskUsage/diskUsage.tsx: ## @@ -63,6 +65,7 @@ let cancelPieSignal: AbortController let cancelSummarySignal: AbortController let cancelQuotaSignal: AbortController; let cancelKeyMetadataSignal: AbortController; +let normalizedValues: number[]=[]; Review Comment: nit ```suggestion let normalizedValues: number[] = []; ``` ## hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/views/diskUsage/diskUsage.tsx: ## @@ -185,9 +188,21 @@ export class DiskUsage extends React.Component, IDUState> return (subpath.isKey || subpathName === OTHER_PATH_NAME) ? subpathName : subpathName + '/'; }); -values = subpaths.map(subpath => { - return subpath.size / dataSize; -}); +// To avoid NaN Condition NaN will get divide by Zero to avoid map iterations +if (dataSize > 0) { + values = subpaths.map(subpath => { +return subpath.size / dataSize; + }); +} Review Comment: Did this cause problems before? I don't see how is this related to you change, as you didn't change anything with the `dataSize` variable, before this part. ## hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/views/diskUsage/diskUsage.tsx: ## @@ -197,7 +212,7 @@ export class DiskUsage extends React.Component, IDUState> return byteToSize(subpath.size, 1); }); } - + Review Comment: nit: unrelated change -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10486. Recon datanode UI to incorporate explicit removal of DEAD [ozone]
devmadhuu commented on PR #6411: URL: https://github.com/apache/ozone/pull/6411#issuecomment-2175990532 @smitajoshi12 If DN operational state is `DECOMMISSIONED` or Node Status is `DEAD`, then only we allow, We are also **`NOT`** allowing IN_MAINTENANCE node to be removed. And if a node operational state is `DECOMMISSIONED`, it is not necessarily to be in `DEAD` status and node status may still be `HEALTHY`, so first priority is to check DN operational state should be equal to `DECOMMISSIONED`, then in `OR` second condition should be node status as `DEAD`. cc: @kkasawa -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-10854) Run full Ozone CI with specific Ratis commit
[ https://issues.apache.org/jira/browse/HDDS-10854?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Attila Doroszlai updated HDDS-10854: Fix Version/s: 1.5.0 Resolution: Implemented Status: Resolved (was: Patch Available) > Run full Ozone CI with specific Ratis commit > > > Key: HDDS-10854 > URL: https://issues.apache.org/jira/browse/HDDS-10854 > Project: Apache Ozone > Issue Type: Sub-task > Components: CI >Reporter: Attila Doroszlai >Assignee: Attila Doroszlai >Priority: Major > Labels: pull-request-available > Fix For: 1.5.0 > > > Follow-up for HDDS-6717: run regular Ozone CI with specific Ratis commit. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10854. Run full Ozone CI with specific Ratis commit [ozone]
adoroszlai merged PR #6822: URL: https://github.com/apache/ozone/pull/6822 -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10854. Run full Ozone CI with specific Ratis commit [ozone]
adoroszlai commented on PR #6822: URL: https://github.com/apache/ozone/pull/6822#issuecomment-2175964681 Thanks @kerneltime, @szetszwo for the review. Documentation follow-up to be done in HDDS-11026. -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Created] (HDDS-11026) Continuous Integration With GitHub Actions
Attila Doroszlai created HDDS-11026: --- Summary: Continuous Integration With GitHub Actions Key: HDDS-11026 URL: https://issues.apache.org/jira/browse/HDDS-11026 Project: Apache Ozone Issue Type: Sub-task Components: documentation, website Reporter: Attila Doroszlai Assignee: Attila Doroszlai Document Ozone CI. Aggregate content from our various GitHub actions guides, including - [ci.md|https://github.com/apache/ozone/blob/master/.github/ci.md] - [CONTRIBUTING.md|https://github.com/apache/ozone/blob/master/CONTRIBUTING.md#check-your-contribution] - https://cwiki.apache.org/confluence/display/OZONE/Ozone+CI+with+Github+Actions - https://cwiki.apache.org/confluence/display/OZONE/Github+Actions+tips+and+tricks. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-11022. Activate native profile only if -Drocks_tools_native is set [ozone]
adoroszlai commented on PR #6827: URL: https://github.com/apache/ozone/pull/6827#issuecomment-2175880867 > `integration.sh` runs all tests because Ozone's default config for Maven Surefire plugin does not define any exclusions. I'll try to fix that. see #6830 -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10517. Recon - Add a UI component for showing DN decommissioning detailed status and info [ozone]
smitajoshi12 commented on PR #6724: URL: https://github.com/apache/ozone/pull/6724#issuecomment-2175801551 > > > @smitajoshi12 we shouldn't show the initial tool tip from datanodes page "`It is going to decommission soon!!!`". Rather we should call decommission info API and match with what all datanodes are in decommissioning and update their status on UI. Behavior should be consistent across all UI pages for same entity. And also you need to call the decommission info API once , not multiple times as user land up on datanodes page. > > > > > > @devmadhuu Issue with Calling decommision API once is datanode api is called after 1 min if we call decommission API only once then we will not get updated values so checking UUIDs from decommission API and comparision will give incorrect results as i checked with Cluster data. It is going to decommmission soon msg is updated after calling decommision API and datanode API as we discussed previously datanode api is taking time to update records. > > @smitajoshi12 As discussed, pls change the operational state column value based on decommission info API on datanodes page. Showing tooltip is wrong because datanode decommissioning has already started. @devmadhuu I have done changes suggested by you update column manually as comparing uuids from decommission api. If one api fails it will not block other apis attached screenshots. 2 Apis handled synchronously. -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-11025. Update some docs, including add 'ozone sh volue/bucket list' usage and adjust ZH docs format. [ozone]
adoroszlai commented on code in PR #6829: URL: https://github.com/apache/ozone/pull/6829#discussion_r1644220430 ## hadoop-hdds/docs/content/interface/O3fs.md: ## @@ -49,6 +49,58 @@ ozone sh bucket create /volume/bucket {{< /highlight >}} Once this is created, please make sure that bucket exists via the _list volume_ or _list bucket_ commands. +Here comes an example, created a valume named 'hh-v1' and a bucket named 'hh-bk1': + +{{< highlight bash >}} +ozone sh volume list o3://omhost:9862/ +ozone sh bucket list o3://omhost:9862/hh-v1 +{{< /highlight >}} + +And the query results: + +``` +[ { +"metadata" : { }, +"name" : "hh-v1", +"admin" : "root", +"owner" : "root", +"quotaInBytes" : -1, +"quotaInNamespace" : -1, +"usedNamespace" : 1, +"creationTime" : "2024-06-18T07:24:51.226Z", +"modificationTime" : "2024-06-18T07:24:51.226Z", +"acls" : [ { +"type" : "USER", +"name" : "root", +"aclScope" : "ACCESS", +"aclList" : [ "ALL" ] +}, { +"type" : "GROUP", +"name" : "root", +"aclScope" : "ACCESS", +"aclList" : [ "ALL" ] +} ], +"refCount" : 0 +} ] + +[ { +"metadata" : { }, +"volumeName" : "hh-v1", +"name" : "hh-bk1", +"storageType" : "DISK", +"versioning" : false, +"usedBytes" : 66, +"usedNamespace" : 1, +"creationTime" : "2024-06-18T07:25:42.916Z", +"modificationTime" : "2024-06-18T07:25:42.916Z", +"sourcePathExist" : true, +"quotaInBytes" : -1, +"quotaInNamespace" : -1, +"bucketLayout" : "FILE_SYSTEM_OPTIMIZED", +"owner" : "root", +"link" : false +} ] +``` Review Comment: I don't think this level of detail belongs to the documentation about Ozone filesystem interface. CLI commands are documented in `hadoop-hdds/docs/content/interface/Cli.md`. ```suggestion ``` ## hadoop-hdds/docs/content/start/OnPrem.zh.md: ## @@ -59,9 +59,9 @@ ozone genconf {{< highlight xml >}} -ozone.scm.names - scm.hadoop.apache.org - + ozone.scm.names + scm.hadoop.apache.org + Review Comment: This part of the change LGTM. ## hadoop-hdds/docs/content/interface/O3fs.zh.md: ## @@ -45,6 +45,59 @@ ozone sh bucket create /volume/bucket {{< /highlight >}} 创建之后,请使用 _list volume_ 或 _list bucket_ 命令来确认桶已存在。 +下方为简单样例,创建的volume名为hh-v1,bucket名为hh-bk1: + +{{< highlight bash >}} +ozone sh volume list o3://omhost:9862/ +ozone sh bucket list o3://omhost:9862/hh-v1 +{{< /highlight >}} + +返回结果依次如下: + +``` +[ { +"metadata" : { }, +"name" : "hh-v1", +"admin" : "root", +"owner" : "root", +"quotaInBytes" : -1, +"quotaInNamespace" : -1, +"usedNamespace" : 1, +"creationTime" : "2024-06-18T07:24:51.226Z", +"modificationTime" : "2024-06-18T07:24:51.226Z", +"acls" : [ { +"type" : "USER", +"name" : "root", +"aclScope" : "ACCESS", +"aclList" : [ "ALL" ] +}, { +"type" : "GROUP", +"name" : "root", +"aclScope" : "ACCESS", +"aclList" : [ "ALL" ] +} ], +"refCount" : 0 +} ] + +[ { +"metadata" : { }, +"volumeName" : "hh-v1", +"name" : "hh-bk1", +"storageType" : "DISK", +"versioning" : false, +"usedBytes" : 66, +"usedNamespace" : 1, +"creationTime" : "2024-06-18T07:25:42.916Z", +"modificationTime" : "2024-06-18T07:25:42.916Z", +"sourcePathExist" : true, +"quotaInBytes" : -1, +"quotaInNamespace" : -1, +"bucketLayout" : "FILE_SYSTEM_OPTIMIZED", +"owner" : "root", +"link" : false +} ] +``` + Review Comment: Same here, please omit this change. ```suggestion ``` -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-11019. Remove unused variable release-year from root POM [ozone]
adoroszlai merged PR #6826: URL: https://github.com/apache/ozone/pull/6826 -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10864. Recon Disk Usage If one volume is large it occupies almost all space of Pie Chart [ozone]
smitajoshi12 commented on code in PR #6801: URL: https://github.com/apache/ozone/pull/6801#discussion_r1644214529 ## hadoop-ozone/recon/src/main/resources/webapps/recon/ozone-recon-web/src/views/diskUsage/diskUsage.tsx: ## @@ -184,15 +186,19 @@ export class DiskUsage extends React.Component, IDUState> // Differentiate key without trailing slash return (subpath.isKey || subpathName === OTHER_PATH_NAME) ? subpathName : subpathName + '/'; }); - + values = subpaths.map(subpath => { return subpath.size / dataSize; }); - +// Logic for Values Normalization on Pie chart adding 0.05 so minimum block +// will be displayed on Pie chart using below logic +// Percentage and Size string Logic will be same +normalizedValues= normalize(values); Review Comment: @ArafatKhan2198 Done testing with Cluster data. -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Resolved] (HDDS-11019) Remove unused variable release-year from root POM
[ https://issues.apache.org/jira/browse/HDDS-11019?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Attila Doroszlai resolved HDDS-11019. - Fix Version/s: 1.5.0 Resolution: Done > Remove unused variable release-year from root POM > - > > Key: HDDS-11019 > URL: https://issues.apache.org/jira/browse/HDDS-11019 > Project: Apache Ozone > Issue Type: Task >Reporter: Siyao Meng >Assignee: Siyao Meng >Priority: Major > Labels: pull-request-available > Fix For: 1.5.0 > > > See PR description. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-10946) Add rename end to end tests
[ https://issues.apache.org/jira/browse/HDDS-10946?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Attila Doroszlai updated HDDS-10946: Status: Patch Available (was: In Progress) > Add rename end to end tests > --- > > Key: HDDS-10946 > URL: https://issues.apache.org/jira/browse/HDDS-10946 > Project: Apache Ozone > Issue Type: Sub-task > Components: test >Reporter: Stephen O'Donnell >Assignee: Attila Doroszlai >Priority: Major > Labels: pull-request-available > > Add some tests that rename a key in both OBS and FSO buckets to sure the > atomic commit works fine with renames. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[PR] HDDS-11022. Set default test exclusion [ozone]
adoroszlai opened a new pull request, #6830: URL: https://github.com/apache/ozone/pull/6830 ## What changes were proposed in this pull request? When running `integration.sh` without any arguments, some undesired tests are executed: - tests marked as `@Native` (which require native bits from `hdds-rocks-native`) - tests marked as `@Unhealthy` (which are expected to fail) Changes in this PR: - Add exclusion of `@Native` and `@Unhealthy` tests to Ozone's default configuration of Maven Surefire plugin. - Add a new profile to not skip `@Native` tests when native bits are compiled. The profile is activated by presence of `rocks_tools_native` property, which also triggers compilation of native bits. - Remove `excludedGroups` from `native.sh`, since it was overriding the exclusion defined in the profile. - Remove `excludedGroups` from `unit.sh`, since now it matches the default exclusion. https://issues.apache.org/jira/browse/HDDS-11022 ## How was this patch tested? Generated and compared the effective POM (`mvn -B help:effective-pom -Doutput=`) for various arguments. Verified that test inclusion/exclusion filters are as expected. - no arguments: skip native and unhealthy ``` native | unhealthy ``` - enable native build (`-Drocks_tools_native`): skip only unhealthy ``` unhealthy ``` - arguments from `native.sh` (`-Pnative -Drocks_tools_native`): only run native, skip slow and unhealthy ``` native slow | unhealthy ``` - arguments from one of the "normal" splits of integration CI check: (`-Pclient`): unchanged from `master` ``` org.apache.hadoop.ozone.client.** flaky | native | slow | unhealthy ``` - arguments from `flaky` split: (`-Pflaky`): unchanged from `master` ``` flaky native | slow | unhealthy ``` Regular CI: https://github.com/adoroszlai/ozone/actions/runs/9561202938 -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-11025) Update some docs, including add 'ozone sh volue/bucket list' usage and adjust ZH docs format.
[ https://issues.apache.org/jira/browse/HDDS-11025?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] ASF GitHub Bot updated HDDS-11025: -- Labels: pull-request-available (was: ) > Update some docs, including add 'ozone sh volue/bucket list' usage and adjust > ZH docs format. > - > > Key: HDDS-11025 > URL: https://issues.apache.org/jira/browse/HDDS-11025 > Project: Apache Ozone > Issue Type: Improvement > Components: documentation >Affects Versions: 1.4.0 >Reporter: StarBoy1005 >Priority: Minor > Labels: pull-request-available > Attachments: image-2024-06-18-17-12-10-292.png > > > Fresh users may confused about the usage of 'ozone sh volue/bucket list', add > an example. > Also change the format in OnPrem.zh.md > !image-2024-06-18-17-12-10-292.png! -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[PR] HDDS-11025. Update some docs, including add 'ozone sh volue/bucket list' usage and adjust ZH docs format. [ozone]
houhang1005 opened a new pull request, #6829: URL: https://github.com/apache/ozone/pull/6829 …st' usage and adjust ZH docs format. ## What changes were proposed in this pull request? Provide a one-liner summary of the changes in the PR **Title** field above. It should be in the form of `HDDS-1234. Short summary of the change`. Please describe your PR in detail: * What changes are proposed in the PR? and Why? It would be better if it is written from third person's perspective not just for the reviewer. * Provide as much context and rationale for the pull request as possible. It could be copy-paste from the Jira's description if the jira is well defined. * If it is complex code, describe the approach used to solve the issue. If possible attach design doc, issue investigation, github discussion, etc. Examples of well-written pull requests: * [#3980](https://github.com/apache/ozone/pull/3980) * [#5265](https://github.com/apache/ozone/pull/5265) * [#4701](https://github.com/apache/ozone/pull/4701) * [#5283](https://github.com/apache/ozone/pull/5283) * [#5300](https://github.com/apache/ozone/pull/5300) ## What is the link to the Apache JIRA Please create an issue in ASF JIRA before opening a pull request, and you need to set the title of the pull request which starts with the corresponding JIRA issue number. (e.g. HDDS-. Fix a typo in YYY.) (Please replace this section with the link to the Apache JIRA) ## How was this patch tested? (Please explain how this patch was tested. Ex: unit tests, manual tests, workflow run on the fork git repo.) (If this patch involves UI changes, please attach a screenshot; otherwise, remove this.) -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Created] (HDDS-11025) Update some docs, including add 'ozone sh volue/bucket list' usage and adjust ZH docs format.
StarBoy1005 created HDDS-11025: -- Summary: Update some docs, including add 'ozone sh volue/bucket list' usage and adjust ZH docs format. Key: HDDS-11025 URL: https://issues.apache.org/jira/browse/HDDS-11025 Project: Apache Ozone Issue Type: Improvement Components: documentation Affects Versions: 1.4.0 Reporter: StarBoy1005 Attachments: image-2024-06-18-17-12-10-292.png Fresh users may confused about the usage of 'ozone sh volue/bucket list', add an example. Also change the format in OnPrem.zh.md !image-2024-06-18-17-12-10-292.png! -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-11003) Eliminate code duplication in XceiverClientGrpc#sendCommandAsync
[ https://issues.apache.org/jira/browse/HDDS-11003?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Attila Doroszlai updated HDDS-11003: Summary: Eliminate code duplication in XceiverClientGrpc#sendCommandAsync (was: XceiverClientGrpc#sendCommandAsync: ContainerOpsLatency metric should reuse existing variable in onError) > Eliminate code duplication in XceiverClientGrpc#sendCommandAsync > > > Key: HDDS-11003 > URL: https://issues.apache.org/jira/browse/HDDS-11003 > Project: Apache Ozone > Issue Type: Improvement >Reporter: Siyao Meng >Assignee: Siyao Meng >Priority: Major > Labels: pull-request-available > Fix For: 1.5.0 > > > - {{XceiverClientGrpc#sendCommandAsync}}: reuse existing variable ({{cost}}) > in {{onError}}. > - Extract method for code duplicated between {{onNext}} and {{onError}}. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-11003) XceiverClientGrpc#sendCommandAsync: ContainerOpsLatency metric should reuse existing variable in onError
[ https://issues.apache.org/jira/browse/HDDS-11003?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Attila Doroszlai updated HDDS-11003: Description: - {{XceiverClientGrpc#sendCommandAsync}}: reuse existing variable ({{cost}}) in {{onError}}. - Extract method for code duplicated between {{onNext}} and {{onError}}. was:A striaightforward oneline fix. > XceiverClientGrpc#sendCommandAsync: ContainerOpsLatency metric should reuse > existing variable in onError > > > Key: HDDS-11003 > URL: https://issues.apache.org/jira/browse/HDDS-11003 > Project: Apache Ozone > Issue Type: Improvement >Reporter: Siyao Meng >Assignee: Siyao Meng >Priority: Major > Labels: pull-request-available > Fix For: 1.5.0 > > > - {{XceiverClientGrpc#sendCommandAsync}}: reuse existing variable ({{cost}}) > in {{onError}}. > - Extract method for code duplicated between {{onNext}} and {{onError}}. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-11003) XceiverClientGrpc#sendCommandAsync: ContainerOpsLatency metric should reuse existing variable in onError
[ https://issues.apache.org/jira/browse/HDDS-11003?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Attila Doroszlai updated HDDS-11003: Fix Version/s: 1.5.0 Resolution: Done Status: Resolved (was: Patch Available) > XceiverClientGrpc#sendCommandAsync: ContainerOpsLatency metric should reuse > existing variable in onError > > > Key: HDDS-11003 > URL: https://issues.apache.org/jira/browse/HDDS-11003 > Project: Apache Ozone > Issue Type: Improvement >Reporter: Siyao Meng >Assignee: Siyao Meng >Priority: Major > Labels: pull-request-available > Fix For: 1.5.0 > > > A striaightforward oneline fix. -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-11003. Eliminate code duplication in XceiverClientGrpc#sendCommandAsync [ozone]
adoroszlai commented on PR #6805: URL: https://github.com/apache/ozone/pull/6805#issuecomment-2175530119 Thanks @smengcl for the patch, @jojochuang for the review. -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-11003. Eliminate code duplication in XceiverClientGrpc#sendCommandAsync [ozone]
adoroszlai merged PR #6805: URL: https://github.com/apache/ozone/pull/6805 -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-11024) Add endKey filter option to ozone debug ldb scan
[ https://issues.apache.org/jira/browse/HDDS-11024?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] ASF GitHub Bot updated HDDS-11024: -- Labels: pull-request-available (was: ) > Add endKey filter option to ozone debug ldb scan > > > Key: HDDS-11024 > URL: https://issues.apache.org/jira/browse/HDDS-11024 > Project: Apache Ozone > Issue Type: Task >Reporter: Tejaskriya Madhan >Assignee: Tejaskriya Madhan >Priority: Major > Labels: pull-request-available > > Currently, the filters supported for *scan* are: > * *-s* : start key, can support prefix start key > * *-l* : limit of records > An additional option that can be added: > * *-e* : end key of result -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-10407) Introduce Metric for deleteKey operation in SCM Service
[ https://issues.apache.org/jira/browse/HDDS-10407?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tanvi Penumudy updated HDDS-10407: -- Resolution: Fixed Status: Resolved (was: Patch Available) > Introduce Metric for deleteKey operation in SCM Service > --- > > Key: HDDS-10407 > URL: https://issues.apache.org/jira/browse/HDDS-10407 > Project: Apache Ozone > Issue Type: Sub-task >Reporter: Muskan Mishra >Assignee: Muskan Mishra >Priority: Major > Labels: pull-request-available > > Following metric need to introduce in SCM Service : > * deleteKeyBlockSuccess > * deleteKeyBlockFailure > * deleteKeyBlockSuccessLatencyNs > * deleteKeyBlockFailureLatencyNs -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10946. Test combinations of rename and rewrite [ozone]
adoroszlai commented on code in PR #6823: URL: https://github.com/apache/ozone/pull/6823#discussion_r1644067080 ## hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/client/rpc/TestOzoneRpcClientAbstract.java: ## @@ -1133,6 +1133,43 @@ void overwriteAfterRewrite(BucketLayout layout) throws IOException { assertEquals(overwriteDetails.getGeneration(), actualKeyDetails.getGeneration()); } + @ParameterizedTest + @EnumSource + void rewriteAfterRename(BucketLayout layout) throws IOException { +OzoneBucket bucket = createBucket(layout); +OzoneKeyDetails keyDetails = createTestKey(bucket); +String newKeyName = "rewriteAfterRename-" + layout; + +bucket.renameKey(keyDetails.getName(), newKeyName); +OzoneKeyDetails renamedKeyDetails = bucket.getKey(newKeyName); +OmKeyArgs keyArgs = toOmKeyArgs(renamedKeyDetails); +OmKeyInfo keyInfo = ozoneManager.lookupKey(keyArgs); + +final byte[] rewriteContent = "rewrite".getBytes(UTF_8); +rewriteKey(bucket, renamedKeyDetails, rewriteContent); + +OzoneKeyDetails actualKeyDetails = assertKeyContent(bucket, newKeyName, rewriteContent); +assertMetadataUnchanged(keyDetails, actualKeyDetails); +assertMetadataAfterRewrite(keyInfo, ozoneManager.lookupKey(keyArgs)); Review Comment: - There is no restriction for rewritten content, could be changed from original one. - Modification time is always updated, even for rename. -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[PR] HDDS-11024. Add endKey filter option to ozone debug ldb scan [ozone]
Tejaskriya opened a new pull request, #6828: URL: https://github.com/apache/ozone/pull/6828 ## What changes were proposed in this pull request? Adding a new filter option for endkey ## What is the link to the Apache JIRA https://issues.apache.org/jira/browse/HDDS-11024 ## How was this patch tested? Added unit test in TestLDBCli -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10407. Introduce Metric for deleteKey operation in SCM Service. [ozone]
tanvipenumudy commented on PR #6439: URL: https://github.com/apache/ozone/pull/6439#issuecomment-2175395919 Thank you @muskan1012 for working on the patch, thank you @errose28 for the review. -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10407. Introduce metrics for deleteKey operation in SCM service. [ozone]
tanvipenumudy merged PR #6439: URL: https://github.com/apache/ozone/pull/6439 -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Created] (HDDS-11024) Add endKey filter option to ozone debug ldb scan
Tejaskriya Madhan created HDDS-11024: Summary: Add endKey filter option to ozone debug ldb scan Key: HDDS-11024 URL: https://issues.apache.org/jira/browse/HDDS-11024 Project: Apache Ozone Issue Type: Task Reporter: Tejaskriya Madhan Assignee: Tejaskriya Madhan Currently, the filters supported for *scan* are: * *-s* : start key, can support prefix start key * *-l* : limit of records An additional option that can be added: * *-e* : end key of result -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-9874. Introduce Metrics for listKeys Dashboard [ozone]
tanvipenumudy commented on PR #5745: URL: https://github.com/apache/ozone/pull/5745#issuecomment-2175251937 @muskan1012, the failed checks appear related to the changes (`NPE` while initializing a new `OmMetadataManager`). Could you please address this issue similarly to how the previous test failures were handled? Could you also please rebase the patch? Thanks! -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
Re: [PR] HDDS-10486. Recon datanode UI to incorporate explicit removal of DEAD [ozone]
smitajoshi12 commented on PR #6411: URL: https://github.com/apache/ozone/pull/6411#issuecomment-2175250102 @dombizita @devmadhuu Can we go ahead to merge this PR? -- 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. To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-9634) Recon - Disk Usage UI Shows "Other Objects" in Pie Chart When Failed to Load Data in Browser
[ https://issues.apache.org/jira/browse/HDDS-9634?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] smita updated HDDS-9634: Resolution: Fixed Status: Resolved (was: Patch Available) > Recon - Disk Usage UI Shows "Other Objects" in Pie Chart When Failed to Load > Data in Browser > > > Key: HDDS-9634 > URL: https://issues.apache.org/jira/browse/HDDS-9634 > Project: Apache Ozone > Issue Type: Bug >Reporter: Devesh Kumar Singh >Assignee: smita >Priority: Major > Attachments: image-2023-11-06-17-23-47-892.png, > image-2023-11-06-17-24-22-320.png > > > Recon - Disk Usage UI Shows "Other Objects" in Pie Chart When Failed to Load > Data in Browser > > !image-2023-11-06-17-23-47-892.png|width=433,height=248! > > !image-2023-11-06-17-24-22-320.png|width=549,height=112! -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org
[jira] [Updated] (HDDS-10852) Recon Heatmap - Not allowing user to select timerange if no data available
[ https://issues.apache.org/jira/browse/HDDS-10852?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Devesh Kumar Singh updated HDDS-10852: -- Target Version/s: 1.5.0 Resolution: Fixed Status: Resolved (was: Patch Available) > Recon Heatmap - Not allowing user to select timerange if no data available > -- > > Key: HDDS-10852 > URL: https://issues.apache.org/jira/browse/HDDS-10852 > Project: Apache Ozone > Issue Type: Bug >Reporter: smita >Assignee: smita >Priority: Major > Labels: pull-request-available > > Recon Heatmap - Not allowing user to select timerange if no data available. > If in last 24H, if no data available, it doesn't allow user to select > different time range. HeatMap page continue to show "No Data Available". -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org For additional commands, e-mail: issues-h...@ozone.apache.org