devmadhuu commented on PR #11866:
URL: https://github.com/apache/ozone/pull/11866#issuecomment-6623770266

   > Thanks @devmadhuu for working on this.
   > 
   > I have a question regarding storage types (not sure if this has already 
been covered): What happens to containers created before storage policy/storage 
type support, do they get assigned a storage type after an upgrade, or do they 
remain null? Will the storage type always be considered when picking source and 
target nodes?
   
   Thanks @sarvekshayr for asking this question. Containers created before 
storage-type support are not rewritten or backfilled when the cluster is 
upgraded. Their stored replica storageType can remain null. A datanode report 
can still include the separate `volumeStorageType`, which tells SCM the 
configured type of the volume holding that replica.
   
   This PR uses SCM’s per-storage-type datanode usage reports for assessment 
and estimation. Those figures describe volume usage, so PR A does not need 
every existing container’s stored `storageType` to be populated. If a datanode 
provides no per-type usage, the existing overall assessment is retained; if 
reports are only partially available, the assessment warns and the per-type 
estimate is rejected.
   
   Also this PR does not change the running balancer’s source or target 
selection. That is follow-up work. When that work selects a replica whose 
stored `storageType` is null, it should use that replica’s reported 
`volumeStorageType` where available. For example, if an old replica reports 
`storageType = null` and `volumeStorageType = SSD`, a type-aware move should 
copy it to `SSD` rather than assume `DISK`. If the physical volume type is 
unavailable too, the code needs an explicit rule instead of silently guessing.
   
   Repair is also handled in a follow-up. A newly repaired copy can have its 
selected destination type stored in its metadata; this does not backfill the 
older replicas. The repair path must use the source replica’s reported volume 
type when its stored type is null, and handle conflicting or missing reports by 
either showing and reporting in its mis-classification report category. Until 
those follow-up changes land, this PR should be understood as assessment and 
estimation support, not a guarantee that all balancing moves or repairs 
preserve physical storage type.


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


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

Reply via email to