Skip to content

Conversation

@ashishkumar50
Copy link
Contributor

What changes were proposed in this pull request?

In case of failed volume, VolumeInfo object is assigned with null. While using VolumeInfo object we need to validate before accessing it.

What is the link to the Apache JIRA

https://issues.apache.org/jira/browse/HDDS-8054
https://issues.apache.org/jira/browse/HDDS-8051
https://issues.apache.org/jira/browse/HDDS-8052
https://issues.apache.org/jira/browse/HDDS-8053

How was this patch tested?

Code has been built locally and manually tested.

@adoroszlai
Copy link
Contributor

manually tested.

Can you please explain the steps?

@ashishkumar50
Copy link
Contributor Author

manually tested.

Can you please explain the steps?

Hi @adoroszlai , thanks for the review.
I have tested in TestHddsVolume by making failedVolume to true.
HddsVolume volume = volumeBuilder.failedVolume(true).build();
And then calling different volume stats getAvailable(),getUsed(),getReserved().

@kerneltime
Copy link
Contributor

@SaketaChalamchala @aswinshakil can you please take a look at this one?

@SaketaChalamchala
Copy link
Contributor

SaketaChalamchala commented Mar 6, 2023

I have tested in TestHddsVolume by making failedVolume to true.
HddsVolume volume = volumeBuilder.failedVolume(true).build();
And then calling different volume stats getAvailable(),getUsed(),getReserved().

@ashishkumar50 Could you add this test case in TestHddsVolume ?

Copy link
Contributor

@sumitagrawl sumitagrawl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ashishkumar50 Thanks working over this, have a comment, plz check

Copy link
Contributor

@swamirishi swamirishi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: Changes look good otherwise

@ashishkumar50
Copy link
Contributor Author

I have tested in TestHddsVolume by making failedVolume to true.
HddsVolume volume = volumeBuilder.failedVolume(true).build();
And then calling different volume stats getAvailable(),getUsed(),getReserved().

@ashishkumar50 Could you add this test case in TestHddsVolume ?

Hi @SaketaChalamchala , Thanks for the review, Added test case for this.

Copy link
Contributor

@adoroszlai adoroszlai left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @ashishkumar50 for the patch.

Copy link
Contributor

@adoroszlai adoroszlai left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @ashishkumar50 for updating the patch.

@adoroszlai adoroszlai merged commit c144a7d into apache:master Mar 20, 2023
errose28 added a commit to errose28/ozone that referenced this pull request Mar 23, 2023
* master: (43 commits)
  HDDS-8148. Improve log for Pipeline creation failure (apache#4385)
  HDDS-7853. Add support for RemoveSCM in SCMRatisServer. (apache#4358)
  HDDS-8042. Display certificate issuer in cert list command. (apache#4429)
  HDDS-8189. [Snapshot] renamedKeyTable should only track keys in buckets that has at least one active snapshot. (apache#4436)
  HDDS-8154. Perf: Reuse Mac instances in S3 token validation (apache#4433)
  HDDS-8245. Info log for keyDeletingService when nonzero number of keys are deleted. (apache#4451)
  HDDS-8233. ReplicationManager: Throttle delete container commands from over-replication handlers (apache#4447)
  HDDS-8220. [Ozone-Streaming] Trigger volume check on IOException in StreamDataChannelBase (apache#4428)
  HDDS-8173. Fix to remove enrties from RocksDB after container gets deleted. (apache#4445)
  HDDS-7975. Rebalance acceptance tests (apache#4437)
  HDDS-8152. Reduce S3 acceptance test setup time (apache#4393)
  HDDS-8172. ECUnderReplicationHandler should consider commands already sent when processing the container (apache#4435)
  HDDS-7883. [Snapshot] Accommodate FSO, key renames and implement OMSnapshotPurgeRequest for SnapshotDeletingService (apache#4407)
  HDDS-8168. Make deadlines inside MoveManager for move commands configurable (apache#4415)
  HDDS-7918. EC: ECBlockReconstructedStripeInputStream should check for spare replicas before failing an index (apache#4441)
  HDDS-8222. EndpointBase#getBucket should handle BUCKET_NOT_FOUND (apache#4431)
  HDDS-8068. Fix Exception: JMXJsonServlet, getting attribute RatisRoles of Hadoop:service=OzoneManager. (apache#4352)
  HDDS-8139. Datanodes should not drop block delete transactions based on transaction ID (apache#4384)
  HDDS-8216. EC: OzoneClientConfig is overwritten in ECKeyOutputStream (apache#4425)
  HDDS-8054. Fix NPE in metrics for failed volume (apache#4340)
  ...
k5342 pushed a commit to pfnet/ozone that referenced this pull request Aug 14, 2023
kuenishi pushed a commit to pfnet/ozone that referenced this pull request Aug 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants