fix sort bug

This commit is contained in:
Chris Lu 2018-11-18 21:59:53 -08:00
parent 469863f7f0
commit ee3fe07acf

View file

@ -96,10 +96,10 @@ func ViewFromChunks(chunks []*filer_pb.FileChunk, offset int64, size int) (views
func logPrintf(name string, visibles []*visibleInterval) {
/*
log.Printf("%s len %d", name, len(visibles))
for _, v := range visibles {
log.Printf("%s: => %+v", name, v)
}
log.Printf("%s len %d", name, len(visibles))
for _, v := range visibles {
log.Printf("%s: => %+v", name, v)
}
*/
}
@ -151,14 +151,17 @@ func mergeIntoVisibles(visibles, newVisibles []*visibleInterval, chunk *filer_pb
}
newVisibles = append(newVisibles, newV)
for i := len(newVisibles) - 1; i > 0; i-- {
if newV.start < newVisibles[i-1].start {
logPrintf(" append", newVisibles)
for i := len(newVisibles) - 1; i >= 0; i-- {
if i > 0 && newV.start < newVisibles[i-1].start {
newVisibles[i] = newVisibles[i-1]
} else {
newVisibles[i] = newV
break
}
}
logPrintf(" sorted", newVisibles)
return newVisibles
}
@ -175,9 +178,10 @@ func nonOverlappingVisibleIntervals(chunks []*filer_pb.FileChunk) (visibles []*v
t := visibles[:0]
visibles = newVislbles
newVislbles = t
}
logPrintf("visibles", visibles)
logPrintf("add", visibles)
}
return
}