Comments (7)
Did it stop doing this after you restarted it? Or is it reproducible?
You might want to run the server with the environment variable GOTRACEBACK=2
set, and then you can send a SIGQUIT
to the process to get a stack trace. It'd be helpful to know what the server think's it's doing. The bug is probably something simple.
from upspin.
The stack trace that I got from sending SIGQUIT
to the server looks like this.
2019/09/23 16:04:42.460464 rpc/storeserver: "[email protected]": store.Get("3C4F7032C8A6C66B48280D82452AD0A16F95AA1053B6D8BD19AFD0AD5B4D91F7")
SIGQUIT: quit
PC=0x45c3d3 m=0 sigcode=0
goroutine 10 [syscall]:
runtime.notetsleepg(0xe5e020, 0x12a05ba26, 0x731401)
/usr/local/go/src/runtime/lock_futex.go:227 +0x34 fp=0xc00013b760 sp=0xc00013b730 pc=0x40c484
runtime.timerproc(0xe5e000)
/usr/local/go/src/runtime/time.go:311 +0x2ea fp=0xc00013b7d8 sp=0xc00013b760 pc=0x44bb1a
runtime.goexit()
/usr/local/go/src/runtime/asm_amd64.s:1337 +0x1 fp=0xc00013b7e0 sp=0xc00013b7d8 pc=0x45a571
created by runtime.(*timersBucket).addtimerLocked
/usr/local/go/src/runtime/time.go:169 +0x10e
goroutine 1 [IO wait]:
internal/poll.runtime_pollWait(0x7fbaca3e1018, 0x72, 0x0)
/usr/local/go/src/runtime/netpoll.go:182 +0x56
internal/poll.(*pollDesc).wait(0xc000020218, 0x72, 0x0, 0x0, 0x9cd8c5)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:87 +0x9b
internal/poll.(*pollDesc).waitRead(...)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Accept(0xc000020200, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/usr/local/go/src/internal/poll/fd_unix.go:384 +0x1ba
net.(*netFD).accept(0xc000020200, 0xe5aac0, 0x7fbacc8d26d0, 0x3)
/usr/local/go/src/net/fd_unix.go:238 +0x42
net.(*TCPListener).accept(0xc0000100e0, 0xc0000ddca8, 0x42d3d1, 0x9f2298)
/usr/local/go/src/net/tcpsock_posix.go:139 +0x32
net.(*TCPListener).Accept(0xc0000100e0, 0xc00d5af90c, 0xd5af90c000ddce0, 0x5d88ed06, 0xc0000ddce0)
/usr/local/go/src/net/tcpsock.go:260 +0x48
crypto/tls.(*listener).Accept(0xc00000eb60, 0xc0000ddd30, 0x18, 0xc000000180, 0x7464b4)
/usr/local/go/src/crypto/tls/tls.go:62 +0x37
net/http.(*Server).Serve(0xc0000232b0, 0xa8dc20, 0xc00000eb60, 0x0, 0x0)
/usr/local/go/src/net/http/server.go:2859 +0x22d
upspin.io/cloud/https.ListenAndServe(0xc000026060, 0xc000020180)
/go/src/upspin.io/cloud/https/https.go:268 +0x646
upspin.io/cloud/https.ListenAndServeFromFlags(0xc000026060)
/go/src/upspin.io/cloud/https/https.go:146 +0x39
main.main()
/go/src/upspin.io/cmd/upspinserver/main.go:20 +0x27
goroutine 19 [syscall]:
os/signal.signal_recv(0x0)
/usr/local/go/src/runtime/sigqueue.go:139 +0x9c
os/signal.loop()
/usr/local/go/src/os/signal/signal_unix.go:23 +0x22
created by os/signal.init.0
/usr/local/go/src/os/signal/signal_unix.go:29 +0x41
upspin.io/shutdown.init.0.func1(0xc0000ae660) [2363/41051]
/go/src/upspin.io/shutdown/shutdown.go:73 +0x41
created by upspin.io/shutdown.init.0
/go/src/upspin.io/shutdown/shutdown.go:72 +0xc8
goroutine 4 [runnable]:
crypto/elliptic.p256PointAddAsm(0xc000259a60, 0xc, 0xc, 0xc00025a218, 0xc, 0xc, 0xc000259ac0, 0xc, 0xc, 0x1f)
/usr/local/go/src/crypto/elliptic/p256_asm_amd64.s:2045 +0x747
crypto/elliptic.(*p256Point).p256ScalarMult(0xc00025a218, 0xc00025a198, 0x4, 0x4)
/usr/local/go/src/crypto/elliptic/p256_asm.go:569 +0x989
crypto/elliptic.p256Curve.CombinedMult(0xc000066500, 0xc002a12be0, 0xc002a12c00, 0xc001926700, 0x20, 0x20, 0xc001926720, 0x20, 0x20, 0x3f, ...)
/usr/local/go/src/crypto/elliptic/p256_asm.go:255 +0x310
crypto/ecdsa.Verify(0xc002a12c60, 0xc0019266e0, 0x20, 0x20, 0xc002a12ae0, 0xc002a12b00, 0x5ac09ef3)
/usr/local/go/src/crypto/ecdsa/ecdsa.go:262 +0x404
upspin.io/pack/ee.ee.Unpack(0xa94e80, 0xc00000e900, 0xc0060d85a0, 0xc000096f10, 0x1400000000000000, 0xa96d00, 0xe768c8)
/go/src/upspin.io/pack/ee/ee.go:313 +0xfe8
upspin.io/client/clientutil.ReadAll(0xa94e80, 0xc00000e900, 0xc0060d85a0, 0x59, 0x0, 0x0, 0x977840, 0x9)
/go/src/upspin.io/client/clientutil/readall.go:41 +0x1da
upspin.io/dir/server/tree.(*Tree).load(0xc000176200, 0xc0060d85a0, 0x0, 0x0, 0xa)
/go/src/upspin.io/dir/server/tree/blocks.go:127 +0xa8
upspin.io/dir/server/tree.(*Tree).loadKids(0xc000176200, 0xc0060d85a0, 0x0, 0x0)
/go/src/upspin.io/dir/server/tree/tree.go:437 +0x180
upspin.io/dir/server/tree.(*Tree).traverse(0xc000176200, 0xc0060d85a0, 0xb, 0xc0003e6280, 0x0, 0x0)
/go/src/upspin.io/dir/server/tree/tree.go:870 +0x305
upspin.io/dir/server/tree.(*Tree).traverse(0xc000176200, 0xc002253900, 0xa, 0xc0003e6280, 0x0, 0x0)
/go/src/upspin.io/dir/server/tree/tree.go:884 +0x27c
upspin.io/dir/server/tree.(*Tree).traverse(0xc000176200, 0xc008493ea0, 0x9, 0xc0003e6280, 0x0, 0x0)
/go/src/upspin.io/dir/server/tree/tree.go:884 +0x27c
upspin.io/dir/server/tree.(*Tree).traverse(0xc000176200, 0xc0036b1e00, 0x8, 0xc0003e6280, 0x0, 0x0)
/go/src/upspin.io/dir/server/tree/tree.go:884 +0x27c
upspin.io/dir/server/tree.(*Tree).traverse(0xc000176200, 0xc0083a7720, 0x7, 0xc0003e6280, 0x0, 0x0)
/go/src/upspin.io/dir/server/tree/tree.go:884 +0x27c
upspin.io/dir/server/tree.(*Tree).traverse(0xc000176200, 0xc0093e6aa0, 0x6, 0xc0003e6280, 0x0, 0x0)
/go/src/upspin.io/dir/server/tree/tree.go:884 +0x27c
upspin.io/dir/server/tree.(*Tree).traverse(0xc000176200, 0xc009414000, 0x5, 0xc0003e6280, 0x0, 0x0)
/go/src/upspin.io/dir/server/tree/tree.go:884 +0x27c
upspin.io/dir/server/tree.(*Tree).traverse(0xc000176200, 0xc0093708c0, 0x4, 0xc0003e6280, 0x0, 0x0)
/go/src/upspin.io/dir/server/tree/tree.go:884 +0x27c
upspin.io/dir/server/tree.(*Tree).traverse(0xc000176200, 0xc000097680, 0x3, 0xc0003e6280, 0x0, 0x0)
/go/src/upspin.io/dir/server/tree/tree.go:884 +0x27c
upspin.io/dir/server/tree.(*Tree).traverse(0xc000176200, 0xc0003ef0e0, 0x2, 0xc0003e6280, 0x0, 0x1)
/go/src/upspin.io/dir/server/tree/tree.go:884 +0x27c
upspin.io/dir/server/tree.(*Tree).traverse(0xc000176200, 0xc000379180, 0x1, 0xc0003e6280, 0x10, 0x10)
/go/src/upspin.io/dir/server/tree/tree.go:884 +0x27c
upspin.io/dir/server/tree.(*Tree).traverse(0xc000176200, 0xc0001685a0, 0x0, 0xc0003e6280, 0x9cad61, 0x7fbaca33b308)
/go/src/upspin.io/dir/server/tree/tree.go:884 +0x27c
upspin.io/dir/server/tree.(*Tree).String(0xc000176200, 0x0, 0x0)
/go/src/upspin.io/dir/server/tree/tree.go:854 +0xe8
fmt.(*pp).handleMethods(0xc0000e6180, 0xc000000073, 0x4c1b01)
/usr/local/go/src/fmt/print.go:616 +0x29b
fmt.(*pp).printArg(0xc0000e6180, 0x9bbc40, 0xc000176200, 0xc000000073)
/usr/local/go/src/fmt/print.go:699 +0x20a
fmt.(*pp).doPrintf(0xc0000e6180, 0x9d9403, 0x19, 0xc0003e6270, 0x1, 0x1)
/usr/local/go/src/fmt/print.go:1016 +0x158
fmt.Sprintf(0x9d9403, 0x19, 0xc0003e6270, 0x1, 0x1, 0x9f22a8, 0xe76b70) [2309/41051]
/usr/local/go/src/fmt/print.go:214 +0x66
log.(*Logger).Printf(0xc0000b8190, 0x9d9403, 0x19, 0xc0003e6270, 0x1, 0x1)
/usr/local/go/src/log/log.go:179 +0x53
upspin.io/log.(*logger).Printf(0xe76908, 0x9d9403, 0x19, 0xc0003e6270, 0x1, 0x1)
/go/src/upspin.io/log/log.go:158 +0xbf
upspin.io/dir/server/tree.(*Tree).recoverFromLog(0xc000176200, 0xc000176200, 0xc000150120)
/go/src/upspin.io/dir/server/tree/tree.go:818 +0xa45
upspin.io/dir/server/tree.New(0xa94e80, 0xc00000e900, 0xc000176180, 0x0, 0xa94d00, 0xc00017c140)
/go/src/upspin.io/dir/server/tree/tree.go:127 +0x48b
upspin.io/dir/server.(*server).loadTreeFor(0xc0001920c0, 0xc000172160, 0x14, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/go/src/upspin.io/dir/server/server.go:882 +0x645
upspin.io/dir/server.(*server).shouldSnapshot(0xc0001920c0, 0xc000128960, 0x14, 0xc000128960, 0x0, 0x0, 0x1)
/go/src/upspin.io/dir/server/snapshot.go:159 +0x1dc
upspin.io/dir/server.(*server).snapshotAll(0xc0001920c0, 0x0, 0x0)
/go/src/upspin.io/dir/server/snapshot.go:119 +0x2d7
upspin.io/dir/server.(*server).snapshotLoop(0xc0001920c0)
/go/src/upspin.io/dir/server/snapshot.go:78 +0x40
created by upspin.io/dir/server.(*server).startSnapshotLoop
/go/src/upspin.io/dir/server/snapshot.go:70 +0x80
goroutine 5 [sleep]:
runtime.goparkunlock(...)
/usr/local/go/src/runtime/proc.go:307
time.Sleep(0x1bf08eb000)
/usr/local/go/src/runtime/time.go:105 +0x159
upspin.io/dir/server.(*server).groupRefreshLoop(0xc0001920c0)
/go/src/upspin.io/dir/server/access.go:289 +0x124
created by upspin.io/dir/server.New
/go/src/upspin.io/dir/server/server.go:202 +0x99d
goroutine 6 [semacquire]:
sync.runtime_SemacquireMutex(0xc0001b405c, 0x0)
/usr/local/go/src/runtime/sema.go:71 +0x3d
sync.(*Mutex).Lock(0xc0001b4058)
/usr/local/go/src/sync/mutex.go:134 +0x109
upspin.io/dir/server.(*server).userLock(0xc0001920c0, 0xc0000241e0, 0x10, 0x0)
/go/src/upspin.io/dir/server/userlock.go:18 +0x86
upspin.io/dir/server.(*server).loadTreeFor(0xc0001920c0, 0xc000028200, 0x10, 0xc000051d00, 0x1, 0x1, 0x0, 0x0, 0x0)
/go/src/upspin.io/dir/server/server.go:841 +0x208
upspin.io/dir/server.(*server).lookup(0xc0001920c0, 0xc000028200, 0x1e, 0x1, 0xc000051e40, 0x1, 0x1, 0x0, 0x0, 0x0)
/go/src/upspin.io/dir/server/server.go:268 +0x139
upspin.io/dir/server.(*server).lookupWithPermissions(0xc0001920c0, 0x9d40dd, 0x11, 0xc000028200, 0x1e, 0xc000051e40, 0x1, 0x1, 0xc0001dc000, 0x0, ...)
/go/src/upspin.io/dir/server/server.go:220 +0x256
upspin.io/dir/server.(*server).Lookup(0xc0001920c0, 0xc000028200, 0x1e, 0x0, 0x0, 0x0)
/go/src/upspin.io/dir/server/server.go:211 +0xf1
upspin.io/serverutil/perm.(*Perm).lookup(0xc000186120, 0xc000028200, 0x1e, 0x40784b, 0xc000026060, 0x0)
/go/src/upspin.io/serverutil/perm/perm.go:323 +0x18a
upspin.io/serverutil/perm.(*Perm).Update(0xc000186120, 0x0, 0x0)
/go/src/upspin.io/serverutil/perm/perm.go:230 +0x41
upspin.io/serverutil/perm.newPerm.func1(0xc000026060, 0xc000186120, 0x9d9e5f, 0x1a)
/go/src/upspin.io/serverutil/perm/perm.go:108 +0x49
created by upspin.io/serverutil/perm.newPerm
/go/src/upspin.io/serverutil/perm/perm.go:106 +0x165
goroutine 7 [IO wait]:
internal/poll.runtime_pollWait(0x7fbaca3e0f48, 0x72, 0x0)
/usr/local/go/src/runtime/netpoll.go:182 +0x56
internal/poll.(*pollDesc).wait(0xc000020298, 0x72, 0x0, 0x0, 0x9cd8c5)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:87 +0x9b
internal/poll.(*pollDesc).waitRead(...)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Accept(0xc000020280, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/usr/local/go/src/internal/poll/fd_unix.go:384 +0x1ba
net.(*netFD).accept(0xc000020280, 0xc00002c000, 0xe5aac0, 0x7fbacc8d2008)
/usr/local/go/src/net/fd_unix.go:238 +0x42
net.(*TCPListener).accept(0xc0000100e8, 0xc000052e70, 0x40de68, 0x30)
/usr/local/go/src/net/tcpsock_posix.go:139 +0x32
net.(*TCPListener).Accept(0xc0000100e8, 0x9907e0, 0xc000178d20, 0x9312e0, 0xe47b20)
/usr/local/go/src/net/tcpsock.go:260 +0x48
net/http.(*Server).Serve(0xc0000231e0, 0xa8e9a0, 0xc0000100e8, 0x0, 0x0)
/usr/local/go/src/net/http/server.go:2859 +0x22d
upspin.io/cloud/https.ListenAndServe.func3(0xc0000231e0, 0xa8e9a0, 0xc0000100e8)
/go/src/upspin.io/cloud/https/https.go:235 +0x43
created by upspin.io/cloud/https.ListenAndServe
/go/src/upspin.io/cloud/https/https.go:234 +0xa26
goroutine 36 [chan receive]:
upspin.io/dir/server/serverlog.(*root).saveLoop(0xc00012a480, 0xa908a0, 0xc000054260)
/go/src/upspin.io/dir/server/serverlog/log.go:198 +0x8b
created by upspin.io/dir/server/serverlog.newRoot
/go/src/upspin.io/dir/server/serverlog/log.go:181 +0x340
goroutine 26 [IO wait]:
internal/poll.runtime_pollWait(0x7fbaca3e0e78, 0x72, 0xffffffffffffffff)
/usr/local/go/src/runtime/netpoll.go:182 +0x56
internal/poll.(*pollDesc).wait(0xc000176418, 0x72, 0xd000, 0xd042, 0xffffffffffffffff)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:87 +0x9b
internal/poll.(*pollDesc).waitRead(...)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0xc000176400, 0xc000608000, 0xd042, 0xd042, 0x0, 0x0, 0x0)
/usr/local/go/src/internal/poll/fd_unix.go:169 +0x19b
net.(*netFD).Read(0xc000176400, 0xc000608000, 0xd042, 0xd042, 0x203000, 0x40d5d9, 0xc004569da0)
/usr/local/go/src/net/fd_unix.go:202 +0x4f
net.(*conn).Read(0xc0001420b0, 0xc000608000, 0xd042, 0xd042, 0x0, 0x0, 0x0)
/usr/local/go/src/net/net.go:177 +0x69
crypto/tls.(*atLeastReader).Read(0xc002a12a60, 0xc000608000, 0xd042, 0xd042, 0xc004569da0, 0x41491e, 0xc00004d938)
/usr/local/go/src/crypto/tls/conn.go:761 +0x60
bytes.(*Buffer).ReadFrom(0xc00012c958, 0xa84980, 0xc002a12a60, 0x40b6e5, 0x942080, 0x9b0c00)
/usr/local/go/src/bytes/buffer.go:207 +0xbd
crypto/tls.(*Conn).readFromUntil(0xc00012c700, 0xa84d60, 0xc0001420b0, 0x5, 0xc0001420b0, 0x203001)
/usr/local/go/src/crypto/tls/conn.go:783 +0xf8
crypto/tls.(*Conn).readRecordOrCCS(0xc00012c700, 0x9f2200, 0xc00012c838, 0xc00004db88)
/usr/local/go/src/crypto/tls/conn.go:590 +0x125
crypto/tls.(*Conn).readRecord(...)
/usr/local/go/src/crypto/tls/conn.go:558
crypto/tls.(*Conn).Read(0xc00012c700, 0xc0003d8000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
/usr/local/go/src/crypto/tls/conn.go:1236 +0x137
net/http.(*persistConn).Read(0xc000160a20, 0xc0003d8000, 0x1000, 0x1000, 0xc00004dc88, 0x406d15, 0xc000026780)
/usr/local/go/src/net/http/transport.go:1524 +0x7b
bufio.(*Reader).fill(0xc0000afa40)
/usr/local/go/src/bufio/bufio.go:100 +0x10f
bufio.(*Reader).Peek(0xc0000afa40, 0x1, 0x0, 0x0, 0x1, 0xc004baa000, 0x0)
/usr/local/go/src/bufio/bufio.go:138 +0x4f
net/http.(*persistConn).readLoop(0xc000160a20)
/usr/local/go/src/net/http/transport.go:1677 +0x1a3
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1357 +0xae8
goroutine 22 [IO wait]:
internal/poll.runtime_pollWait(0x7fbaca3e0da8, 0x72, 0xffffffffffffffff)
/usr/local/go/src/runtime/netpoll.go:182 +0x56
internal/poll.(*pollDesc).wait(0xc0000b2618, 0x72, 0x200, 0x205, 0xffffffffffffffff)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:87 +0x9b
internal/poll.(*pollDesc).waitRead(...)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0xc0000b2600, 0xc000290000, 0x205, 0x205, 0x0, 0x0, 0x0)
/usr/local/go/src/internal/poll/fd_unix.go:169 +0x19b
net.(*netFD).Read(0xc0000b2600, 0xc000290000, 0x205, 0x205, 0x203001, 0xc00007ec00, 0x300000002)
/usr/local/go/src/net/fd_unix.go:202 +0x4f
net.(*conn).Read(0xc0000ac0b0, 0xc000290000, 0x205, 0x205, 0x0, 0x0, 0x0)
/usr/local/go/src/net/net.go:177 +0x69
crypto/tls.(*atLeastReader).Read(0xc0040f3180, 0xc000290000, 0x205, 0x205, 0xc0000b2600, 0xc000202000, 0xc0000db9d8)
/usr/local/go/src/crypto/tls/conn.go:761 +0x60
bytes.(*Buffer).ReadFrom(0xc000075758, 0xa84980, 0xc0040f3180, 0x40b6e5, 0x942080, 0x9b0c00)
/usr/local/go/src/bytes/buffer.go:207 +0xbd
crypto/tls.(*Conn).readFromUntil(0xc000075500, 0xa84d60, 0xc0000ac0b0, 0x5, 0xc0000ac0b0, 0xc0000b2600)
/usr/local/go/src/crypto/tls/conn.go:783 +0xf8
crypto/tls.(*Conn).readRecordOrCCS(0xc000075500, 0x9f2200, 0xc000075638, 0x73bc1a)
/usr/local/go/src/crypto/tls/conn.go:590 +0x125
crypto/tls.(*Conn).readRecord(...)
/usr/local/go/src/crypto/tls/conn.go:558
crypto/tls.(*Conn).Read(0xc000075500, 0xc0003ca000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
/usr/local/go/src/crypto/tls/conn.go:1236 +0x137
net/http.(*connReader).Read(0xc000099230, 0xc0003ca000, 0x1000, 0x1000, 0x5fa8c1, 0xc0000ac0b0, 0xbf5a59359b7aaa67)
/usr/local/go/src/net/http/server.go:787 +0x107
bufio.(*Reader).fill(0xc00012a5a0)
/usr/local/go/src/bufio/bufio.go:100 +0x10f
bufio.(*Reader).Peek(0xc00012a5a0, 0x4, 0x12afccf7e8, 0xe59b80, 0x0, 0x0, 0xe59b80)
/usr/local/go/src/bufio/bufio.go:138 +0x4f
net/http.(*conn).serve(0xc000096fa0, 0xa905a0, 0xc000066040)
/usr/local/go/src/net/http/server.go:1903 +0x9bf
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:2884 +0x2f4
goroutine 27 [select]:
net/http.(*persistConn).writeLoop(0xc000160a20)
/usr/local/go/src/net/http/transport.go:1958 +0x113
created by net/http.(*Transport).dialConn
/usr/local/go/src/net/http/transport.go:1358 +0xb0d
rax 0xfffffffffffffffc
rbx 0x3b9a9226
rcx 0x45c3d3
rdx 0x0
rdi 0xe5e020
rsi 0x80
rbp 0xc00013b6e8
rsp 0xc00013b6a0
r8 0x0
r9 0x0
r10 0xc00013b6d8
r11 0x202
r12 0x4
r13 0x12
r14 0xa73425
r15 0x0
rip 0x45c3d3
rflags 0x202
cs 0x33
fs 0x0
gs 0x0
from upspin.
I see this behavior upon each restart. The server keeps on moving data around and attempts to do something useful in the meantime are starved. Some would eventually be fulfilled but it is a far cry from being able to do something useful.
from upspin.
from upspin.
Oh, I see it now.
This is because of the --log=debug
option I used on the server startup command line. It's trying to printf
the entire tree... which is large.
note from the stack trace above: https://github.com/upspin/upspin/blob/master/dir/server/tree/tree.go#L818
upspin.io/dir/server/tree.(*Tree).recoverFromLog(0xc000176200, 0xc000176200, 0xc000150120)
/go/src/upspin.io/dir/server/tree/tree.go:818 +0xa45
and here: https://github.com/upspin/upspin/blob/master/dir/server/tree/tree.go#L854
upspin.io/dir/server/tree.(*Tree).String(0xc000176200, 0x0, 0x0)
/go/src/upspin.io/dir/server/tree/tree.go:854 +0xe8
It does not seem practical to traverse the entire tree just to do some printf debugging, at least not in a running server.
from upspin.
FWIW, restarting the server with --log=info
removes the issue.
from upspin.
from upspin.
Related Issues (20)
- Account creation on ACMEv1 is disabled HOT 14
- Group Access to dir server HOT 5
- Out of memory while deleting files
- go get instructions need updating HOT 2
- Incorrect quarantine extension on files opened in mount HOT 1
- double compressed download archive HOT 6
- https://key.upspin.io/ down? HOT 5
- If `prevErr.isZero()` is `true`, it will skip writing current error string. HOT 2
- certificate expired
- upspin-ui shows 404 error HOT 3
- non-trivial typo in overview doc (I think?) HOT 4
- Why custom types instead of primitives? HOT 2
- keygen needs investigation HOT 3
- client/file: *File.ReadAt doesn't return io.EOF when file is read to the end HOT 1
- client/file: *File.Read incorrect offset when short read HOT 5
- client/file: TestFileSeek is slow HOT 1
- Handling distributed storage HOT 1
- docs on upspin.io out of date; fixed at head; docs need to be pushed HOT 1
- dircache.watcher never times out on non-existing hosts
- doc/access_control.md: glob patterns aren't quoted, giving italics HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from upspin.