mirror of
https://github.com/pgsty/minio.git
synced 2026-07-19 12:10:24 +03:00
optimize double reads by reusing results from checkUploadIDExists() (#15692)
Move to using `xl.meta` data structure to keep temporary partInfo, this allows for a future change where we move to different parts to different drives.
This commit is contained in:
@@ -234,6 +234,26 @@ type FileInfo struct {
|
||||
Checksum []byte `msg:"cs,allownil"`
|
||||
}
|
||||
|
||||
// WriteQuorum returns expected write quorum for this FileInfo
|
||||
func (fi FileInfo) WriteQuorum(dquorum int) int {
|
||||
if fi.Deleted {
|
||||
return dquorum
|
||||
}
|
||||
quorum := fi.Erasure.DataBlocks
|
||||
if fi.Erasure.DataBlocks == fi.Erasure.ParityBlocks {
|
||||
quorum++
|
||||
}
|
||||
return quorum
|
||||
}
|
||||
|
||||
// ReadQuorum returns expected read quorum for this FileInfo
|
||||
func (fi FileInfo) ReadQuorum(dquorum int) int {
|
||||
if fi.Deleted {
|
||||
return dquorum
|
||||
}
|
||||
return fi.Erasure.DataBlocks
|
||||
}
|
||||
|
||||
// Equals checks if fi(FileInfo) matches ofi(FileInfo)
|
||||
func (fi FileInfo) Equals(ofi FileInfo) (ok bool) {
|
||||
if !fi.MetadataEquals(ofi) {
|
||||
|
||||
Reference in New Issue
Block a user