Upgrade levelqueue to v0.4.0 (#16560) (#16561)

Fix #16546
This commit is contained in:
Lunny Xiao 2021-07-28 00:59:06 +08:00 committed by GitHub
parent 7365b4e757
commit 840d240a61
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 13 additions and 2 deletions

2
go.mod
View file

@ -10,7 +10,7 @@ require (
gitea.com/go-chi/cache v0.0.0-20210110083709-82c4c9ce2d5e
gitea.com/go-chi/captcha v0.0.0-20210110083842-e7696c336a1e
gitea.com/go-chi/session v0.0.0-20210108030337-0cb48c5ba8ee
gitea.com/lunny/levelqueue v0.3.0
gitea.com/lunny/levelqueue v0.4.0
github.com/Microsoft/go-winio v0.5.0 // indirect
github.com/NYTimes/gziphandler v1.1.1
github.com/ProtonMail/go-crypto v0.0.0-20210705153151-cc34b1f6908b // indirect

2
go.sum
View file

@ -51,6 +51,8 @@ gitea.com/go-chi/session v0.0.0-20210108030337-0cb48c5ba8ee h1:9U6HuKUBt/cGK6T/6
gitea.com/go-chi/session v0.0.0-20210108030337-0cb48c5ba8ee/go.mod h1:Ozg8IchVNb/Udg+ui39iHRYqVHSvf3C99ixdpLR8Vu0=
gitea.com/lunny/levelqueue v0.3.0 h1:MHn1GuSZkxvVEDMyAPqlc7A3cOW+q8RcGhRgH/xtm6I=
gitea.com/lunny/levelqueue v0.3.0/go.mod h1:HBqmLbz56JWpfEGG0prskAV97ATNRoj5LDmPicD22hU=
gitea.com/lunny/levelqueue v0.4.0 h1:v+bCR1lwLTBpZMshguWNhGIFLkUj+R04pgaU3TcJFS8=
gitea.com/lunny/levelqueue v0.4.0/go.mod h1:HBqmLbz56JWpfEGG0prskAV97ATNRoj5LDmPicD22hU=
gitea.com/xorm/sqlfiddle v0.0.0-20180821085327-62ce714f951a h1:lSA0F4e9A2NcQSqGqTOXqu2aRi/XEQxDCBwM8yJtE6s=
gitea.com/xorm/sqlfiddle v0.0.0-20180821085327-62ce714f951a/go.mod h1:EXuID2Zs0pAQhH8yz+DNjUbjppKQzKFAn28TMYPB6IU=
github.com/6543/go-version v1.3.1 h1:HvOp+Telns7HWJ2Xo/05YXQSB2bE0WmVgbHqwMPZT4U=

View file

@ -295,6 +295,11 @@ func (queue *Queue) LHandle(h func([]byte) error) error {
// Close closes the queue (and the underlying db is set to closeUnderlyingDB)
func (queue *Queue) Close() error {
queue.highLock.Lock()
queue.lowLock.Lock()
defer queue.highLock.Unlock()
defer queue.lowLock.Unlock()
if !queue.closeUnderlyingDB {
queue.db = nil
return nil

View file

@ -107,6 +107,8 @@ func (set *Set) Remove(value []byte) (bool, error) {
// Close closes the set (and the underlying db if set to closeUnderlyingDB)
func (set *Set) Close() error {
set.lock.Lock()
defer set.lock.Unlock()
if !set.closeUnderlyingDB {
set.db = nil
return nil

View file

@ -181,6 +181,8 @@ func (queue *UniqueQueue) Len() int64 {
func (queue *UniqueQueue) Close() error {
_ = queue.q.Close()
_ = queue.set.Close()
queue.set.lock.Lock()
defer queue.set.lock.Unlock()
if !queue.closeUnderlyingDB {
queue.db = nil
return nil

2
vendor/modules.txt vendored
View file

@ -25,7 +25,7 @@ gitea.com/go-chi/session/couchbase
gitea.com/go-chi/session/memcache
gitea.com/go-chi/session/mysql
gitea.com/go-chi/session/postgres
# gitea.com/lunny/levelqueue v0.3.0
# gitea.com/lunny/levelqueue v0.4.0
## explicit
gitea.com/lunny/levelqueue
# github.com/Azure/go-ntlmssp v0.0.0-20200615164410-66371956d46c