waiducom avatar

紧急求助-circular dependency occurred 发生循环依赖

🕢 by waiducom

@ego008 在吗?

线上运行1.0版本的突然出现了下面的错误,断线几个小时了,小白实在搞不定

错误信息如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
./goyoubbs
2021/10/08 18:53:37 MainDomain: 
panic: assertion failed: write: circular dependency occurred

goroutine 1 [running]:
github.com/boltdb/bolt._assert(...)
        /root/go/pkg/mod/github.com/boltdb/bolt@v1.3.1/db.go:1029
github.com/boltdb/bolt.(*node).write(0xc000331260, 0xc000348000)
        /root/go/pkg/mod/github.com/boltdb/bolt@v1.3.1/node.go:226 +0x452
github.com/boltdb/bolt.(*node).spill(0xc000331260, 0xc0002bf7a0, 0x9)
        /root/go/pkg/mod/github.com/boltdb/bolt@v1.3.1/node.go:378 +0x2b5
github.com/boltdb/bolt.(*Bucket).spill(0xc0002d81d8, 0x2506e2e, 0x10c9500)
        /root/go/pkg/mod/github.com/boltdb/bolt@v1.3.1/bucket.go:570 +0x473
github.com/boltdb/bolt.(*Tx).Commit(0xc0002d81c0, 0x0, 0x0)
        /root/go/pkg/mod/github.com/boltdb/bolt@v1.3.1/tx.go:163 +0xf2
github.com/boltdb/bolt.(*DB).Update(0xc00000c5a0, 0xc0002bfb30, 0x0, 0x0)
        /root/go/pkg/mod/github.com/boltdb/bolt@v1.3.1/db.go:605 +0xf6
github.com/ego008/youdb.(*DB).Hset(0xc0000107b8, 0xa7635b, 0x8, 0xc000334260, 0xd, 0xd, 0xc00032ed40, 0x14, 0x20, 0x8, ...)
        /root/go/pkg/mod/github.com/ego008/youdb@v0.0.0-20200223095330-0a16a0a292d3/youdb.go:72 +0x1bb
goyoubbs/system.(*Application).Init(0xc00030c3c0, 0xc000010790, 0x7ffdbec8fe24, 0xa)
        /root/go/goyoubbs/system/core.go:134 +0x50b
main.main()

💘 相关文章

评论

共14条关于"紧急求助-circular dependency occurred 发生循环依赖"的评论

ego008 avatar
#1 ego008 回复

circular dependency occurred 发生循环依赖

前几天看你网站还好好的,程序做了哪些修改?

ego008 avatar
#2 ego008 回复

刚测试在线的代码,正常

Bash:
1
2
3
4
5
wget https://github.com/ego008/goyoubbs/archive/refs/tags/v1.0.zip
unzip goyoubbs-1.0.zip
cd goyoubbs-1.0
go mod tidy
go run main.go

截屏2021-10-08 下午9.18.jpg

waiducom avatar
#3 waiducom 回复

我也不知道呢~现在断线好几个小时了,好不容易有点流量,,估计明天又k站了~我把1.0升级到2.0后

因为我还有一个2.0的gobbs,发现不能同时运行两个2.0的gobbs,即使端口不同也一样

只要同时运行两个2.0程序,就会立马挂断一个2.0的程序~哎,快要奔溃了~

ego008 avatar
#4 ego008 回复

可以运行多个 2.0 程序,我有个 VPS 上就跑了三个 2.0

截屏2021-10-09 上午12.03.jpg

应该是其它问题,找一下原因。

waiducom avatar
#5 waiducom 回复

@ego008 #4 嗯 还在测试,守护进程使用了systemctl 或supersord 结果还是一样 只能跑一个进程~

另外想问一下gobbs有没有重启或停止命令呢?比如像nginx那样

waiducom avatar
#6 waiducom 回复

@ego008 #4 搞定了 除了刚开始1.0莫名其妙出现的错误 没有找到原因外

目前可以同时运行两个2.0的版本了,出现错误是因为我直接复制supervisor的配置文件

除了修改了进程路径外,忘记修改supervisor配置文件里的名字,导致两个supervisor的配置文件名一样。

waiducom avatar
#7 waiducom 回复

@ego008 #4 想问一下 我编辑了model/page_base.qtpl 文件添加了侧边栏自定义HTML内容,然后重新编译

但是不知道为什么发现自定义添加的内容就是没有生效~

waiducom avatar
#10 waiducom 回复

@ego008 #8 想问一下获取文章第一张图片的语句是什么?我看了文章模版和文章处理程序都没有找到~请教一下,谢谢。

waiducom avatar
#12 waiducom 回复

@ego008 #11 发现一个新问题,就是我服务器国内的数据实时同步到国外,但是我发现国外服务器的数据却不是实时更新的,好奇怪啊,我把数据百分百完整同步到了国外服务器,同步完后也重启了goyoubbs进程。。。。可数据就不是实时的。

Bash: rsync
1
2
3
4
5
6
7
8
9
10
11
12
rsync -azoprv /var/www/domain/ server:/var/www/domain/
sending incremental file list
localdb/
localdb/013678.ldb
localdb/013685.log
localdb/CURRENT
localdb/CURRENT.bak
localdb/LOG
localdb/MANIFEST-013686

sent 831,608 bytes  received 5,727 bytes  88,140.53 bytes/sec
total size is 1,207,039,650  speedup is 1,441.53

写一条评论

Based on Golang + fastHTTP + sdb | go1.17.1 Processed in 1ms