Blob


1 #include "stdinc.h"
2 #include "dat.h"
3 #include "fns.h"
5 void
6 printindex(int fd, Index *ix)
7 {
8 int i;
10 fprint(fd, "index=%s version=%d blocksize=%d tabsize=%d\n",
11 ix->name, ix->version, ix->blocksize, ix->tabsize);
12 fprint(fd, "\tbuckets=%d div=%d\n", ix->buckets, ix->div);
13 for(i = 0; i < ix->nsects; i++)
14 fprint(fd, "\tsect=%s for buckets [%lld,%lld)\n", ix->smap[i].name, ix->smap[i].start, ix->smap[i].stop);
15 for(i = 0; i < ix->narenas; i++)
16 fprint(fd, "\tarena=%s at [%lld,%lld)\n", ix->amap[i].name, ix->amap[i].start, ix->amap[i].stop);
17 }
19 void
20 printarenapart(int fd, ArenaPart *ap)
21 {
22 int i;
24 fprint(fd, "arena partition=%s\n\tversion=%d blocksize=%d arenas=%d\n\tsetbase=%d setsize=%d\n",
25 ap->part->name, ap->version, ap->blocksize, ap->narenas, ap->tabbase, ap->tabsize);
26 for(i = 0; i < ap->narenas; i++)
27 fprint(fd, "\tarena=%s at [%lld,%lld)\n", ap->map[i].name, ap->map[i].start, ap->map[i].stop);
28 }
30 void
31 printarena(int fd, Arena *arena)
32 {
33 fprint(fd, "arena='%s' [%lld,%lld)\n\tversion=%d created=%d modified=%d",
34 arena->name, arena->base, arena->base + arena->size + 2 * arena->blocksize,
35 arena->version, arena->ctime, arena->wtime);
36 if(arena->sealed)
37 fprint(2, " sealed\n");
38 else
39 fprint(2, "\n");
40 if(scorecmp(zeroscore, arena->score) != 0)
41 fprint(2, "\tscore=%V\n", arena->score);
43 fprint(fd, "\tclumps=%,d compressed clumps=%,d data=%,lld compressed data=%,lld disk storage=%,lld\n",
44 arena->clumps, arena->cclumps, arena->uncsize,
45 arena->used - arena->clumps * ClumpSize,
46 arena->used + arena->clumps * ClumpInfoSize);
47 }