Brad Fitzpatrick
|
3962744450
|
util/deephash: prevent infinite loop on map cycle
Fixes #2340
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
|
2021-07-07 10:57:46 -07:00 |
|
Brad Fitzpatrick
|
aceaa70b16
|
util/deephash: move funcs to methods
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
|
2021-07-07 08:17:18 -07:00 |
|
Brad Fitzpatrick
|
e0258ffd92
|
util/deephash: use keyed struct literal, fix vet
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
|
2021-07-05 21:31:30 -07:00 |
|
Brad Fitzpatrick
|
58f2ef6085
|
util/deephash: add a benchmark and some benchmark data
No code changes.
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
|
2021-07-05 21:21:52 -07:00 |
|
Brad Fitzpatrick
|
9ae3bd0939
|
util/deephash: export a Hash func for use by the control plane
name old time/op new time/op delta
Hash-6 69.4µs ± 6% 68.4µs ± 4% ~ (p=0.286 n=9+9)
HashMapAcyclic-6 115µs ± 5% 115µs ± 4% ~ (p=1.000 n=10+10)
name old alloc/op new alloc/op delta
Hash-6 2.29kB ± 0% 1.88kB ± 0% -18.13% (p=0.000 n=10+10)
HashMapAcyclic-6 2.53kB ± 0% 2.53kB ± 0% ~ (all equal)
name old allocs/op new allocs/op delta
Hash-6 58.0 ± 0% 54.0 ± 0% -6.90% (p=0.000 n=10+10)
HashMapAcyclic-6 202 ± 0% 202 ± 0% ~ (all equal)
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
|
2021-07-05 11:41:44 -07:00 |
|
Brad Fitzpatrick
|
700badd8f8
|
util/deephash: move internal/deephash to util/deephash
No code changes. Just a minor package doc addition about lack of API
stability.
|
2021-07-02 21:33:02 -07:00 |
|