*: simple code (#46247)
This commit is contained in:
@ -919,14 +919,13 @@ func checkEmptyTopNs(topNs []*TopN) bool {
|
||||
}
|
||||
|
||||
// SortTopnMeta sort topnMeta
|
||||
func SortTopnMeta(topnMetas []TopNMeta) []TopNMeta {
|
||||
func SortTopnMeta(topnMetas []TopNMeta) {
|
||||
slices.SortFunc(topnMetas, func(i, j TopNMeta) int {
|
||||
if i.Count != j.Count {
|
||||
return cmp.Compare(j.Count, i.Count)
|
||||
}
|
||||
return bytes.Compare(i.Encoded, j.Encoded)
|
||||
})
|
||||
return topnMetas
|
||||
}
|
||||
|
||||
// GetMergedTopNFromSortedSlice returns merged topn
|
||||
@ -935,12 +934,7 @@ func GetMergedTopNFromSortedSlice(sorted []TopNMeta, n uint32) (*TopN, []TopNMet
|
||||
}
|
||||
|
||||
func getMergedTopNFromSortedSlice(sorted []TopNMeta, n uint32) (*TopN, []TopNMeta) {
|
||||
slices.SortFunc(sorted, func(i, j TopNMeta) int {
|
||||
if i.Count != j.Count {
|
||||
return cmp.Compare(j.Count, i.Count)
|
||||
}
|
||||
return bytes.Compare(i.Encoded, j.Encoded)
|
||||
})
|
||||
SortTopnMeta(sorted)
|
||||
n = mathutil.Min(uint32(len(sorted)), n)
|
||||
|
||||
var finalTopN TopN
|
||||
|
||||
@ -347,8 +347,8 @@ func TestSortTopnMeta(t *testing.T) {
|
||||
Encoded: []byte("b"),
|
||||
Count: 2,
|
||||
}}
|
||||
sortedData := SortTopnMeta(data)
|
||||
require.Equal(t, uint64(2), sortedData[0].Count)
|
||||
SortTopnMeta(data)
|
||||
require.Equal(t, uint64(2), data[0].Count)
|
||||
}
|
||||
|
||||
func TestMergePartTopN2GlobalTopNWithHists(t *testing.T) {
|
||||
|
||||
@ -970,7 +970,10 @@ func MergeGlobalStatsTopNByConcurrency(mergeConcurrency, mergeBatchSize int, wra
|
||||
}
|
||||
|
||||
globalTopN, popedTopn := statistics.GetMergedTopNFromSortedSlice(sorted, n)
|
||||
return globalTopN, statistics.SortTopnMeta(append(leftTopn, popedTopn...)), wrapper.AllHg, nil
|
||||
|
||||
result := append(leftTopn, popedTopn...)
|
||||
statistics.SortTopnMeta(result)
|
||||
return globalTopN, result, wrapper.AllHg, nil
|
||||
}
|
||||
|
||||
func (h *Handle) getTableByPhysicalID(is infoschema.InfoSchema, physicalID int64) (table.Table, bool) {
|
||||
|
||||
Reference in New Issue
Block a user