mirror of
https://github.com/TeaOSLab/EdgeNode.git
synced 2025-11-07 02:20:25 +08:00
优化代码
This commit is contained in:
@@ -10,7 +10,7 @@ import (
|
|||||||
teaconst "github.com/TeaOSLab/EdgeNode/internal/const"
|
teaconst "github.com/TeaOSLab/EdgeNode/internal/const"
|
||||||
"github.com/TeaOSLab/EdgeNode/internal/events"
|
"github.com/TeaOSLab/EdgeNode/internal/events"
|
||||||
"github.com/TeaOSLab/EdgeNode/internal/remotelogs"
|
"github.com/TeaOSLab/EdgeNode/internal/remotelogs"
|
||||||
"github.com/TeaOSLab/EdgeNode/internal/utils/fileutils"
|
"github.com/TeaOSLab/EdgeNode/internal/utils/fs"
|
||||||
_ "github.com/mattn/go-sqlite3"
|
_ "github.com/mattn/go-sqlite3"
|
||||||
"net/url"
|
"net/url"
|
||||||
"strings"
|
"strings"
|
||||||
@@ -21,7 +21,7 @@ import (
|
|||||||
var errDBIsClosed = errors.New("the database is closed")
|
var errDBIsClosed = errors.New("the database is closed")
|
||||||
|
|
||||||
type DB struct {
|
type DB struct {
|
||||||
locker *fileutils.Locker
|
locker *fsutils.Locker
|
||||||
rawDB *sql.DB
|
rawDB *sql.DB
|
||||||
dsn string
|
dsn string
|
||||||
|
|
||||||
@@ -49,7 +49,7 @@ func open(dsn string, lock bool) (*DB, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// locker
|
// locker
|
||||||
var locker *fileutils.Locker
|
var locker *fsutils.Locker
|
||||||
if lock {
|
if lock {
|
||||||
var path = dsn
|
var path = dsn
|
||||||
var queryIndex = strings.Index(dsn, "?")
|
var queryIndex = strings.Index(dsn, "?")
|
||||||
@@ -57,7 +57,7 @@ func open(dsn string, lock bool) (*DB, error) {
|
|||||||
path = path[:queryIndex]
|
path = path[:queryIndex]
|
||||||
}
|
}
|
||||||
path = strings.TrimSpace(strings.TrimPrefix(path, "file:"))
|
path = strings.TrimSpace(strings.TrimPrefix(path, "file:"))
|
||||||
locker = fileutils.NewLocker(path)
|
locker = fsutils.NewLocker(path)
|
||||||
err := locker.Lock()
|
err := locker.Lock()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
remotelogs.Warn("DB", "lock '"+path+"' failed: "+err.Error())
|
remotelogs.Warn("DB", "lock '"+path+"' failed: "+err.Error())
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
// Copyright 2023 Liuxiangchao iwind.liu@gmail.com. All rights reserved. Official site: https://goedge.cn .
|
// Copyright 2023 Liuxiangchao iwind.liu@gmail.com. All rights reserved. Official site: https://goedge.cn .
|
||||||
|
|
||||||
package fileutils
|
package fsutils
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"os"
|
"os"
|
||||||
@@ -1,22 +1,22 @@
|
|||||||
// Copyright 2023 Liuxiangchao iwind.liu@gmail.com. All rights reserved. Official site: https://goedge.cn .
|
// Copyright 2023 Liuxiangchao iwind.liu@gmail.com. All rights reserved. Official site: https://goedge.cn .
|
||||||
|
|
||||||
package fileutils_test
|
package fsutils_test
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"github.com/TeaOSLab/EdgeNode/internal/utils/fileutils"
|
"github.com/TeaOSLab/EdgeNode/internal/utils/fs"
|
||||||
"testing"
|
"testing"
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestLocker_Lock(t *testing.T) {
|
func TestLocker_Lock(t *testing.T) {
|
||||||
var path = "/tmp/file-test"
|
var path = "/tmp/file-test"
|
||||||
var locker = fileutils.NewLocker(path)
|
var locker = fsutils.NewLocker(path)
|
||||||
err := locker.Lock()
|
err := locker.Lock()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
}
|
}
|
||||||
_ = locker.Release()
|
_ = locker.Release()
|
||||||
|
|
||||||
var locker2 = fileutils.NewLocker(path)
|
var locker2 = fsutils.NewLocker(path)
|
||||||
err = locker2.Lock()
|
err = locker2.Lock()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
Reference in New Issue
Block a user