@@ -20,7 +20,7 @@ import (
2020 "bytes"
2121 "encoding/hex"
2222 "fmt"
23- "io/ioutil "
23+ "io/fs "
2424 "os"
2525 "path/filepath"
2626 "sort"
@@ -277,7 +277,7 @@ func getInfo(fileInfos []os.FileInfo, tid uint64) int64 {
277277func tableInfo (dir , valueDir string , db * badger.DB ) {
278278 // we want all tables with keys count here.
279279 tables := db .Tables ()
280- fileInfos , err := ioutil . ReadDir (dir )
280+ fileInfos , err := readDir (dir )
281281 y .Check (err )
282282
283283 fmt .Println ()
@@ -310,6 +310,23 @@ func tableInfo(dir, valueDir string, db *badger.DB) {
310310 fmt .Println ()
311311}
312312
313+ func readDir (dir string ) ([]fs.FileInfo , error ) {
314+ entries , err := os .ReadDir (dir )
315+ if err != nil {
316+ return nil , err
317+ }
318+ infos := make ([]fs.FileInfo , 0 , len (entries ))
319+ for _ , entry := range entries {
320+ var info fs.FileInfo
321+ info , err = entry .Info ()
322+ if err != nil {
323+ return nil , err
324+ }
325+ infos = append (infos , info )
326+ }
327+ return infos , err
328+ }
329+
313330func printInfo (dir , valueDir string ) error {
314331 if dir == "" {
315332 return fmt .Errorf ("--dir not supplied" )
@@ -333,10 +350,11 @@ func printInfo(dir, valueDir string) error {
333350 fp .Close ()
334351 fp = nil
335352
336- fileinfos , err := ioutil . ReadDir (dir )
353+ fileinfos , err := readDir (dir )
337354 if err != nil {
338355 return err
339356 }
357+
340358 fileinfoByName := make (map [string ]os.FileInfo )
341359 fileinfoMarked := make (map [string ]bool )
342360 for _ , info := range fileinfos {
@@ -402,10 +420,11 @@ func printInfo(dir, valueDir string) error {
402420
403421 valueDirFileinfos := fileinfos
404422 if valueDir != dir {
405- valueDirFileinfos , err = ioutil . ReadDir (valueDir )
423+ valueDirFileinfos , err = readDir (valueDir )
406424 if err != nil {
407425 return err
408426 }
427+
409428 }
410429
411430 // If valueDir is different from dir, holds extra files in the value dir.
0 commit comments