Closed ignoramous closed 2 years ago
We've seen at least once concurrent access exceptions.
Ex A:
03-04 02:03:34.742 29143 6825 I GoLog : file read successful : /data/data/com.celzero.bravedns/files/1607700204580/td.txt 03-04 02:03:34.743 29143 6825 I GoLog : file byte length : 43826870 03-04 02:03:34.744 29143 29419 I GoLog : file read successful : /data/data/com.celzero.bravedns/files/1607700204580/td.txt 03-04 02:03:34.744 29143 29419 I GoLog : file byte length : 43826870 03-04 02:03:35.092 29143 29419 D RethinkDNS: RethinkVPNService : isScreenLockEnabled: false 03-04 02:03:35.093 29143 29419 D RethinkDNS: RethinkVPNService Response for the block: 74.125.24.95 %After% 10113, false,10.111.222.1, 48550, 74.125.24.95, 443 03-04 02:03:35.093 29143 32254 D RethinkDNS: IPTracker - Package for uid : 10113, 1 03-04 02:03:35.336 29143 29419 I GoLog : file read successful : /data/data/com.celzero.bravedns/files/1607700204580/rd.txt 03-04 02:03:35.336 29143 29419 I GoLog : file byte length : 2967446 03-04 02:03:35.336 29143 29419 I GoLog : file read successful : /data/data/com.celzero.bravedns/files/1607700204580/rd.txt 03-04 02:03:35.336 29143 29419 I GoLog : file byte length : 2967446 03-04 02:03:35.354 29143 29230 I GoLog : new proxy connection for target: tcp:74.125.24.95:443 03-04 02:03:35.377 29143 29230 I GoLog : TD_buf Length : 21913435 03-04 02:03:35.377 29143 29230 I GoLog : RD_buf Length : 1483723 03-04 02:03:35.377 29143 29230 I GoLog : TD_buf Length : 21913435 03-04 02:03:35.377 29143 29230 I GoLog : RD_buf Length : 1483723 03-04 02:03:35.377 29143 0 E Go : fatal error: concurrent map writes 03-04 02:03:35.377 29143 29230 E GoLog : fatal error: concurrent map writes 03-04 02:03:35.379 29143 0 E Go : 03-04 02:03:35.379 29143 0 E Go : goroutine 17 [running, locked to thread]: 03-04 02:03:35.381 29143 0 E Go : runtime.throw(0x73dd2ba58d, 0x15) 03-04 02:03:35.381 29143 0 E Go : /home/jitpack/build/golang/go/src/runtime/panic.go:1116 +0x4c fp=0x4000257e60 sp=0x4000257e30 pc=0x73dcff3f2c 03-04 02:03:35.382 29143 0 E Go : runtime.mapassign_fast64(0x73dd363e80, 0x40003c6300, 0x10, 0x0) 03-04 02:03:35.382 29143 0 E Go : /home/jitpack/build/golang/go/src/runtime/map_fast64.go:101 +0x304 fp=0x4000257ea0 sp=0x4000257e60 pc=0x73dcfd4bc4 03-04 02:03:35.382 29143 0 E Go : github.com/celzero/gotrie/trie.(*BS).Init(0x73dd5f2520, 0x4001056000, 0x16a3cb, 0x16a3cb, 0x18, 0x0) 03-04 02:03:35.382 29143 0 E Go : /tmp/gomobile-work-713396512/pkg/mod/github.com/celzero/gotrie@v0.0.0-20201019185855-82d11a96233f/trie/bitstring.go:19 +0xec fp=0x4000257f00 sp=0x4000257ea0 pc=0x73dd2108ac 03-04 02:03:35.382 29143 0 E Go : github.com/celzero/gotrie/trie.(*RankDirectory).Init(0x73dd5f2520, 0x4001056000, 0x16a3cb, 0x16a3cb, 0x400af08000, 0x14e5f5b, 0x14e5f5b, 0x37ba8f1, 0x400, 0x20, ...) 03-04 02:03:35.382 29143 0 E Go : /tmp/gomobile-work-713396512/pkg/mod/github.com/celzero/gotrie@v0.0.0-20201019185855-82d11a96233f/trie/rankdirectory.go:20 +0x64 fp=0x4000257f50 sp=0x4000257f00 pc=0x73dd219154 03-04 02:03:35.382 29143 0 E Go : github.com/celzero/gotrie/trie.Build(0x4000286000, 0x3a, 0x4000286040, 0x3a, 0x400030c0f0, 0x44, 0x4000286080, 0x40, 0x0, 0x0, ...) 03-04 02:03:35.382 29143 0 E Go : /tmp/gomobile-work-713396512/pkg/mod/github.com/celzero/gotrie@v0.0.0-20201019185855-82d11a96233f/trie/build.go:48 +0x518 fp=0x40002598d0 sp=0x4000257f50 pc=0x73dd212cf8 03-04 02:03:35.382 29143 0 E Go : github.com/Jigsaw-Code/outline-go-tun2socks/intra/dnsx.NewBraveDNSLocal(0x4000286000, 0x3a, 0x4000286040, 0x3a, 0x400030c0f0, 0x44, 0x4000286080, 0x40, 0x4000224138, 0x73dd26c4a4, ...) 03-04 02:03:35.382 29143 0 E Go : /home/jitpack/build/intra/dnsx/bravedns.go:229 +0x130 fp=0x400025dcd0 sp=0x40002598d0 pc=0x73dd21a960 03-04 02:03:35.382 29143 0 E Go : main.proxydnsx__NewBraveDNSLocal(0x73e3df0700, 0x3a, 0x73e3f0a400, 0x3a, 0x744e210e40, 0x44, 0x73e3df0000, 0x40, 0x400008e058) 03-04 02:03:35.382 29143 0 E Go : /tmp/gomobile-work-713396512/src/gobind/go_dnsxmain.go:216 +0xd8 fp=0x400025dd90 sp=0x400025dcd0 pc=0x73dd27e058 03-04 02:03:35.382 29143 0 E Go : main._cgoexpwrap_31d7a0a27f33_proxydnsx__NewBraveDNSLocal(0x73e3df0700, 0x3a, 0x73e3f0a400, 0x3a, 0x744e210e40, 0x44, 0x73e3df0000, 0x40, 0x73e3df0000) 03-04 02:03:35.382 29143 0 E Go : _cgo_gotypes.go:2112 +0x58 fp=0x400025ddf0 sp=0x400025dd90 pc=0x73dd276558 03-04 02:03:35.382 29143 0 E Go : runtime.call128(0x0, 0x73f9373608, 0x73f9373708) 03-04 02:03:35.382 29143 0 E Go : /home/jitpack/build/golang/go/src/runtime/asm_arm64.s:421 +0x6c fp=0x400025de90 sp=0x400025ddf0 pc=0x73dd0216cc 03-04 02:03:35.382 29143 0 E Go : runtime.cgocallbackg1(0x0) 03-04 02:03:35.382 29143 0 E Go : /home/jitpack/build/golang/go/src/runtime/cgocall.go:332 +0x12c fp=0x400025df40 sp=0x400025de90 pc=0x73dcfc7f5c 03-04 02:03:35.382 29143 0 E Go : runtime.cgocallbackg(0x0) 03-04 02:03:35.382 29143 0 E Go : /home/jitpack/build/golang/go/src/runtime/cgocall.go:207 +0x88 fp=0x400025dfb0 sp=0x400025df40 pc=0x73dcfc7db8 03-04 02:03:35.382 29143 0 E Go : runtime.cgocallback_gofunc(0x0, 0x0, 0x0, 0x4000183500) 03-04 02:03:35.382 29143 0 E Go : /home/jitpack/build/golang/go/src/runtime/asm_arm64.s:1061 +0x94 fp=0x400025dfe0 sp=0x400025dfb0 pc=0x73dd023354 03-04 02:03:35.382 29143 0 E Go : runtime.goexit() 03-04 02:03:35.382 29143 0 E Go : /home/jitpack/build/golang/go/src/runtime/asm_arm64.s:1136 +0x4 fp=0x400025dfe0 sp=0x400025dfe0 pc=0x73dd023424 03-04 02:03:35.382 29143 0 E Go :
Global variable issue fixed at https://github.com/celzero/gotrie/commit/d9d0dcea9cbdb7738628cea0668c5fb99b959a9d
We've seen at least once concurrent access exceptions.
Ex A: