Up to Main Index Up to Journal for July, 2017
JOURNAL FOR TUESDAY 4TH JULY, 2017
______________________________________________________________________________
SUBJECT: Weekend release delayed
DATE: Tue 4 Jul 22:04:14 BST 2017
This weekend should have seen WolfMUD v0.0.7 released. I was in the middle of
packaging the release when the server, running tests in the background, dumped
this into its terminal:
WARNING: DATA RACE
Read at 0x00c4201793c0 by goroutine 538:
code.wolfmud.org/WolfMUD.git/attr.(*Inventory).Search()
.../src/code.wolfmud.org/WolfMUD.git/attr/inventory.go:257 +0x49
code.wolfmud.org/WolfMUD.git/cmd.Junk()
.../src/code.wolfmud.org/WolfMUD.git/cmd/junk.go:30 +0x135
code.wolfmud.org/WolfMUD.git/cmd.(*state).handleCommand()
.../src/code.wolfmud.org/WolfMUD.git/cmd/state.go:184 +0xe9
code.wolfmud.org/WolfMUD.git/cmd.(*state).script()
.../src/code.wolfmud.org/WolfMUD.git/cmd/state.go:228 +0x346
code.wolfmud.org/WolfMUD.git/cmd.(*state).scriptNone()
.../src/code.wolfmud.org/WolfMUD.git/cmd/state.go:248 +0x62
code.wolfmud.org/WolfMUD.git/cmd.Cleanup()
.../src/code.wolfmud.org/WolfMUD.git/cmd/cleanup.go:58 +0x570
code.wolfmud.org/WolfMUD.git/cmd.(*state).handleCommand()
.../src/code.wolfmud.org/WolfMUD.git/cmd/state.go:184 +0xe9
code.wolfmud.org/WolfMUD.git/cmd.(*state).sync()
.../src/code.wolfmud.org/WolfMUD.git/cmd/state.go:156 +0x1a8
code.wolfmud.org/WolfMUD.git/cmd.Script()
.../src/code.wolfmud.org/WolfMUD.git/cmd/state.go:73 +0x8a
code.wolfmud.org/WolfMUD.git/event.Queue.func1()
.../src/code.wolfmud.org/WolfMUD.git/event/event.go:102 +0x7c6
Previous write at 0x00c4201793c0 by goroutine 523:
code.wolfmud.org/WolfMUD.git/attr.(*Inventory).Move()
.../src/code.wolfmud.org/WolfMUD.git/attr/inventory.go:218 +0xf31
code.wolfmud.org/WolfMUD.git/attr.(*Inventory).Add()
.../src/code.wolfmud.org/WolfMUD.git/attr/inventory.go:115 +0x6a
code.wolfmud.org/WolfMUD.git/cmd.Reset()
.../src/code.wolfmud.org/WolfMUD.git/cmd/reset.go:44 +0x1fb
code.wolfmud.org/WolfMUD.git/cmd.(*state).handleCommand()
.../src/code.wolfmud.org/WolfMUD.git/cmd/state.go:184 +0xe9
code.wolfmud.org/WolfMUD.git/cmd.(*state).sync()
.../src/code.wolfmud.org/WolfMUD.git/cmd/state.go:156 +0x1a8
code.wolfmud.org/WolfMUD.git/cmd.Script()
.../src/code.wolfmud.org/WolfMUD.git/cmd/state.go:73 +0x8a
code.wolfmud.org/WolfMUD.git/event.Queue.func1()
.../src/code.wolfmud.org/WolfMUD.git/event/event.go:102 +0x7c6
Note that I’ve shortened the paths using ‘...’ in the above snippet.
At which point I stopped packaging the release and went off to sob quietly for
a while. Since then I’ve been trying to debug the issue. Actually that’s a
lie, most of the time I’ve spent trying to reproduce the data race. I have no
idea how long this is going to take to sort out, but I’m working on it.
--
Diddymus
Up to Main Index Up to Journal for July, 2017