tka: stable text representation of AUMHash
This makes debugging easier, you can pass an AUMHash to a printf and get a string that is easy to debug. Also rearrange how directories/files work in the FS store: use the first two characters of the string representation as the prefix directory, and use the entire AUMHash string as the file name. This is again to aid debugging: you can `ls` a directory and line up what prints out easily with what you get from a printf in debug code. Signed-off-by: David Crawshaw <crawshaw@tailscale.com>
This commit is contained in:

committed by
David Crawshaw

parent
40ec8617ac
commit
15b8665787
@ -146,13 +146,17 @@ func TestTailchonkFS_Commit(t *testing.T) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
if got, want := chonk.filename(aum.Hash()), "HJX3LPJJQVRFSQX4QONESBU4DUO5JPORA66ZUCFS6NHZWDZTP4"; got != want {
|
||||
t.Errorf("aum filename = %q, want %q", got, want)
|
||||
dir, base := chonk.aumDir(aum.Hash())
|
||||
if got, want := dir, filepath.Join(chonk.base, "VU"); got != want {
|
||||
t.Errorf("aum dir=%s, want %s", got, want)
|
||||
}
|
||||
if _, err := os.Stat(filepath.Join(chonk.base, "ad", "HJX3LPJJQVRFSQX4QONESBU4DUO5JPORA66ZUCFS6NHZWDZTP4")); err != nil {
|
||||
if want := "VU5G7NN5FGCWEWKC7SBZUSIGTQOR3VF52ED33GQIWLZU7GYPGN7Q"; base != want {
|
||||
t.Errorf("aum base=%s, want %s", base, want)
|
||||
}
|
||||
if _, err := os.Stat(filepath.Join(dir, base)); err != nil {
|
||||
t.Errorf("stat of AUM file failed: %v", err)
|
||||
}
|
||||
if _, err := os.Stat(filepath.Join(chonk.base, "67", "226TIYPDKQWKFD5MXUI3GRVDSDFXRBABNINTFIT5ADMCLZ464U")); err != nil {
|
||||
if _, err := os.Stat(filepath.Join(chonk.base, "M7", "M7LL2NDB4NKCZIUPVS6RDM2GUOIMW6EEAFVBWMVCPUANQJPHT3SQ")); err != nil {
|
||||
t.Errorf("stat of AUM parent failed: %v", err)
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user