go-gitea / gitea

Git with a cup of tea! Painless self-hosted all-in-one software development service, including Git hosting, code review, team collaboration, package registry and CI/CD
https://gitea.com
MIT License
44.6k stars 5.45k forks source link

HTTP 500 when entering project page #2920

Closed kumashiro closed 6 years ago

kumashiro commented 6 years ago

Description

After rebuild from master, entering any project page triggers HTTP error 500. go get -u was run before rebuild, memcached and Gitea were restarted, sessions directory cleared before startup, browser cache and cookies were also destroyed. Relevant log:

[Macaron] 2017-11-15 12:35:52: Started GET /ORG/project for 192.168.0.10
[Macaron] PANIC: interface conversion: interface {} is string, not int64
/home/gitbuild/opt/go/src/runtime/panic.go:491 (0x433de2)
gopanic: reflectcall(nil, unsafe.Pointer(d.fn), deferArgs(d), uint32(d.siz), uint32(d.siz))
/home/gitbuild/opt/go/src/runtime/iface.go:172 (0x416e26)
panicdottypeE: panic(&TypeAssertionError{iface.string(), haveString, want.string(), ""})
/home/gitbuild/.go/src/code.gitea.io/gitea/modules/cache/cache.go:63 (0xc85cef)
GetInt64: return conn.Get(key).(int64), nil
/home/gitbuild/.go/src/code.gitea.io/gitea/modules/context/repo.go:116 (0xdd54d4)
(*Repository).GetCommitsCount: return cache.GetInt64(r.Repository.GetCommitsCountCacheKey(contextName, r.IsViewBranch || r.IsViewTag), func() (int64, error) {
/home/gitbuild/.go/src/code.gitea.io/gitea/modules/context/repo.go:632 (0xddcc4a)
RepoRefByType.func1: ctx.Repo.CommitsCount, err = ctx.Repo.GetCommitsCount()
/home/gitbuild/opt/go/src/runtime/asm_amd64.s:509 (0x4631da)
call32: CALLFN(·call32, 32)
/home/gitbuild/opt/go/src/reflect/value.go:434 (0x4cc605)
Value.call: call(frametype, fn, args, uint32(frametype.size), uint32(retOffset))
/home/gitbuild/opt/go/src/reflect/value.go:302 (0x4cbbe3)
Value.Call: return v.call("Call", in)
/home/gitbuild/.go/src/code.gitea.io/gitea/vendor/github.com/go-macaron/inject/inject.go:177 (0x7e5a18)
(*injector).callInvoke: return reflect.ValueOf(f).Call(in), nil
/home/gitbuild/.go/src/code.gitea.io/gitea/vendor/github.com/go-macaron/inject/inject.go:137 (0x7e5319)
(*injector).Invoke: return inj.callInvoke(f, t, t.NumIn())
/home/gitbuild/.go/src/code.gitea.io/gitea/vendor/gopkg.in/macaron.v1/context.go:113 (0x81411d)
(*Context).run: vals, err := c.Invoke(c.handler())
/home/gitbuild/.go/src/code.gitea.io/gitea/vendor/gopkg.in/macaron.v1/context.go:104 (0x814055)
(*Context).Next: c.run()
/home/gitbuild/.go/src/code.gitea.io/gitea/vendor/github.com/go-macaron/session/session.go:186 (0x86af26)
Sessioner.func1: ctx.Next()
/home/gitbuild/opt/go/src/runtime/asm_amd64.s:509 (0x4631da)
call32: CALLFN(·call32, 32)
/home/gitbuild/opt/go/src/reflect/value.go:434 (0x4cc605)
Value.call: call(frametype, fn, args, uint32(frametype.size), uint32(retOffset))
/home/gitbuild/opt/go/src/reflect/value.go:302 (0x4cbbe3)
Value.Call: return v.call("Call", in)
/home/gitbuild/.go/src/code.gitea.io/gitea/vendor/github.com/go-macaron/inject/inject.go:177 (0x7e5a18)
(*injector).callInvoke: return reflect.ValueOf(f).Call(in), nil
/home/gitbuild/.go/src/code.gitea.io/gitea/vendor/github.com/go-macaron/inject/inject.go:137 (0x7e5319)
(*injector).Invoke: return inj.callInvoke(f, t, t.NumIn())
/home/gitbuild/.go/src/code.gitea.io/gitea/vendor/gopkg.in/macaron.v1/context.go:113 (0x81411d)
(*Context).run: vals, err := c.Invoke(c.handler())
/home/gitbuild/.go/src/code.gitea.io/gitea/vendor/gopkg.in/macaron.v1/context.go:104 (0x814055)
(*Context).Next: c.run()
/home/gitbuild/.go/src/code.gitea.io/gitea/vendor/gopkg.in/macaron.v1/recovery.go:161 (0x826b5a)
Recovery.func1: c.Next()
/home/gitbuild/opt/go/src/runtime/asm_amd64.s:509 (0x4631da)
call32: CALLFN(·call32, 32)
/home/gitbuild/opt/go/src/reflect/value.go:434 (0x4cc605)
Value.call: call(frametype, fn, args, uint32(frametype.size), uint32(retOffset))
/home/gitbuild/opt/go/src/reflect/value.go:302 (0x4cbbe3)
Value.Call: return v.call("Call", in)
/home/gitbuild/.go/src/code.gitea.io/gitea/vendor/github.com/go-macaron/inject/inject.go:177 (0x7e5a18)
(*injector).callInvoke: return reflect.ValueOf(f).Call(in), nil
/home/gitbuild/.go/src/code.gitea.io/gitea/vendor/github.com/go-macaron/inject/inject.go:137 (0x7e5319)
(*injector).Invoke: return inj.callInvoke(f, t, t.NumIn())
/home/gitbuild/.go/src/code.gitea.io/gitea/vendor/gopkg.in/macaron.v1/context.go:113 (0x81411d)
(*Context).run: vals, err := c.Invoke(c.handler())
/home/gitbuild/.go/src/code.gitea.io/gitea/vendor/gopkg.in/macaron.v1/context.go:104 (0x814055)
(*Context).Next: c.run()
/home/gitbuild/.go/src/code.gitea.io/gitea/vendor/gopkg.in/macaron.v1/logger.go:43 (0x825e2b)
Logger.func1: ctx.Next()
/home/gitbuild/opt/go/src/runtime/asm_amd64.s:509 (0x4631da)
call32: CALLFN(·call32, 32)
/home/gitbuild/opt/go/src/reflect/value.go:434 (0x4cc605)
Value.call: call(frametype, fn, args, uint32(frametype.size), uint32(retOffset))
/home/gitbuild/opt/go/src/reflect/value.go:302 (0x4cbbe3)
Value.Call: return v.call("Call", in)
/home/gitbuild/.go/src/code.gitea.io/gitea/vendor/github.com/go-macaron/inject/inject.go:177 (0x7e5a18)
(*injector).callInvoke: return reflect.ValueOf(f).Call(in), nil
/home/gitbuild/.go/src/code.gitea.io/gitea/vendor/github.com/go-macaron/inject/inject.go:137 (0x7e5319)
(*injector).Invoke: return inj.callInvoke(f, t, t.NumIn())
/home/gitbuild/.go/src/code.gitea.io/gitea/vendor/gopkg.in/macaron.v1/context.go:113 (0x81411d)
(*Context).run: vals, err := c.Invoke(c.handler())
/home/gitbuild/.go/src/code.gitea.io/gitea/vendor/gopkg.in/macaron.v1/router.go:184 (0x827e42)
(*Router).Handle.func1: c.run()
/home/gitbuild/.go/src/code.gitea.io/gitea/vendor/gopkg.in/macaron.v1/router.go:288 (0x8200db)
(*Router).ServeHTTP: h(rw, req, p)
/home/gitbuild/.go/src/code.gitea.io/gitea/vendor/gopkg.in/macaron.v1/macaron.go:177 (0x818297)
(*Macaron).ServeHTTP: m.Router.ServeHTTP(rw, req)
/home/gitbuild/.go/src/code.gitea.io/gitea/vendor/github.com/gorilla/context/context.go:141 (0xae8cba)
ClearHandler.func1: h.ServeHTTP(w, r)
/home/gitbuild/opt/go/src/net/http/server.go:1918 (0x6dcd63)
HandlerFunc.ServeHTTP: f(w, r)
/home/gitbuild/opt/go/src/net/http/server.go:2619 (0x6dfa43)
serverHandler.ServeHTTP: handler.ServeHTTP(rw, req)
/home/gitbuild/opt/go/src/net/http/server.go:1801 (0x6dbc3c)
(*conn).serve: serverHandler{c.server}.ServeHTTP(w, w.req)
/home/gitbuild/opt/go/src/runtime/asm_amd64.s:2337 (0x465a40)
goexit: BYTE$0x90// NOP
[Macaron] 2017-11-15 12:35:52: Completed /ORG/project 500 Internal Server Error in 15.570157ms
lunny commented 6 years ago

It seems it's related with #2774 @lafriks