dump.c 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #include "stdinc.h"
  2. #include "dat.h"
  3. #include "fns.h"
  4. void
  5. printIndex(int fd, Index *ix)
  6. {
  7. int i;
  8. fprint(fd, "index=%s version=%d blockSize=%d tabSize=%d\n",
  9. ix->name, ix->version, ix->blockSize, ix->tabSize);
  10. fprint(fd, "\tbuckets=%d div=%d\n", ix->buckets, ix->div);
  11. for(i = 0; i < ix->nsects; i++)
  12. fprint(fd, "\tsect=%s for buckets [%lld,%lld)\n", ix->smap[i].name, ix->smap[i].start, ix->smap[i].stop);
  13. for(i = 0; i < ix->narenas; i++)
  14. fprint(fd, "\tarena=%s at [%lld,%lld)\n", ix->amap[i].name, ix->amap[i].start, ix->amap[i].stop);
  15. }
  16. void
  17. printArenaPart(int fd, ArenaPart *ap)
  18. {
  19. int i;
  20. fprint(fd, "arena parition=%s\n\tversion=%d blockSize=%d arenas=%d\n\tsetBase=%d setSize=%d\n",
  21. ap->part->name, ap->version, ap->blockSize, ap->narenas, ap->tabBase, ap->tabSize);
  22. for(i = 0; i < ap->narenas; i++)
  23. fprint(fd, "\tarena=%s at [%lld,%lld)\n", ap->map[i].name, ap->map[i].start, ap->map[i].stop);
  24. }
  25. void
  26. printArena(int fd, Arena *arena)
  27. {
  28. fprint(fd, "arena='%s' [%lld,%lld)\n\tversion=%d created=%d modified=%d",
  29. arena->name, arena->base, arena->base + arena->size + 2 * arena->blockSize,
  30. arena->version, arena->ctime, arena->wtime);
  31. if(arena->sealed)
  32. fprint(2, " sealed\n");
  33. else
  34. fprint(2, "\n");
  35. if(!scoreEq(zeroScore, arena->score))
  36. fprint(2, "\tscore=%V\n", arena->score);
  37. fprint(fd, "\tclumps=%,d compressed clumps=%,d data=%,lld compressed data=%,lld disk storage=%,lld\n",
  38. arena->clumps, arena->cclumps, arena->uncsize,
  39. arena->used - arena->clumps * ClumpSize,
  40. arena->used + arena->clumps * ClumpInfoSize);
  41. }