Skip to content

Instantly share code, notes, and snippets.

@bbozo
Created November 14, 2012 09:34
Show Gist options
  • Save bbozo/4071215 to your computer and use it in GitHub Desktop.
Save bbozo/4071215 to your computer and use it in GitHub Desktop.
Zeus server crashes when a file is modified and zeus server is still loading
$ zeus start
Starting Zeus server
[ready] [crashed] [running] [connecting] [waiting]
boot
└── default_bundle
├── development_environment
│ └── prerake
└── test_environment
├── test_helper
└── cucumber_environment
Available Commands: [waiting] [crashed] [ready]
zeus server (alias: s)
zeus destroy (alias: d)
zeus generate (alias: g)
zeus dbconsole
zeus console (alias: c)
zeus runner (alias: r)
zeus rake
zeus test (alias: rspec, testrb)
zeus cucumber
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xb code=0x1 addr=0x8 pc=0x48b1cd]
goroutine 2162 [running]:
sync/atomic.CompareAndSwapUint32(0x8, 0x100000000, 0x200000002, 0xf840050540, 0x4735b0, ...)
/usr/local/go/src/pkg/sync/atomic/asm_amd64.s:12 +0xd
sync.(*Mutex).Lock(0x8, 0xf840041870)
/usr/local/go/src/pkg/sync/mutex.go:40 +0x35
github.com/burke/zeus/go/unixsocket.(*Usock).ReadMessage(0x0, 0x0, 0x0, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/unixsocket/unixsocket.go:121 +0x50
github.com/burke/zeus/go/zeusmaster.(*SlaveNode).handleMessages(0xf84006b180, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:343 +0x29
created by github.com/burke/zeus/go/zeusmaster.(*SlaveNode).doCrashedOrReadyState
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:221 +0x9b
goroutine 1 [chan receive]:
github.com/burke/zeus/go/zeusmaster.Run(0x7fff926e0101, 0x100000005)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/zeusmaster.go:51 +0x372
main.main()
/Users/burke/go/src/github.com/burke/zeus/go/cmd/zeus/zeus.go:37 +0x2a1
goroutine 2 [syscall]:
created by runtime.main
/usr/local/go/src/pkg/runtime/proc.c:221
goroutine 3 [syscall]:
os/signal.loop()
/usr/local/go/src/pkg/os/signal/signal_unix.go:20 +0x1c
created by os/signal.init·1
/usr/local/go/src/pkg/os/signal/signal_unix.go:26 +0x2f
goroutine 4 [select]:
github.com/burke/zeus/go/zeusmaster.StartSlaveMonitor(0xf840041870, 0xf840001af0, 0x0, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavemonitor.go:48 +0x2fb
created by github.com/burke/zeus/go/zeusmaster.Run
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/zeusmaster.go:32 +0x17b
goroutine 5 [select]:
github.com/burke/zeus/go/zeusmaster.StartClientHandler(0xf840041870, 0xf840001b40, 0x0, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/clienthandler.go:42 +0x232
created by github.com/burke/zeus/go/zeusmaster.Run
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/zeusmaster.go:33 +0x19f
goroutine 6 [select]:
github.com/burke/zeus/go/zeusmaster.StartFileMonitor(0xf840041870, 0xf840001b90, 0x0, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/filemonitor.go:37 +0x1bf
created by github.com/burke/zeus/go/zeusmaster.Run
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/zeusmaster.go:34 +0x1c3
goroutine 7 [runnable]:
syscall.Syscall()
/usr/local/go/src/pkg/syscall/asm_linux_amd64.s:36 +0x64
github.com/burke/ttyutils.ioctl(0x1, 0x5413, 0xf840058508, 0x7fd9f7b4cfa0, 0x4004047f8, ...)
/Users/burke/go/src/github.com/burke/ttyutils/ttyutils_linux.go:47 +0x4b
github.com/burke/ttyutils.Winsize(0xf840058008, 0x7fd9f7b31720, 0x411002, 0xf84011ffe8)
/Users/burke/go/src/github.com/burke/ttyutils/ttyutils_linux.go:24 +0x69
github.com/burke/zeus/go/zeusmaster.(*StatusChart).lengthOfOutput(0xf840001eb0, 0x0, 0x0, 0xf84006aba0)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/statuslogger.go:123 +0x28
github.com/burke/zeus/go/zeusmaster.(*StatusChart).draw(0xf840001eb0, 0xf84006aba0)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/statuslogger.go:104 +0x6f
github.com/burke/zeus/go/zeusmaster.StartStatusChart(0xf840041870, 0xf840001be0, 0x0, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/statuslogger.go:70 +0x4c5
created by github.com/burke/zeus/go/zeusmaster.Run
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/zeusmaster.go:35 +0x1e7
goroutine 8 [chan receive]:
github.com/burke/zeus/go/zeusmaster._func_005(0xf8400581d0, 0xf8400581a8, 0xf8400581b0, 0xf8400581b8, 0xf8400581c0, ...)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/zeusmaster.go:42 +0x31
created by github.com/burke/zeus/go/zeusmaster.Run
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/zeusmaster.go:44 +0x314
goroutine 9 [chan receive]:
github.com/burke/zeus/go/zeusmaster._func_006(0xf8400581a8, 0xf8400581b0, 0xf8400581b8, 0xf8400581c0, 0xf8400581c8, ...)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/zeusmaster.go:47 +0x31
created by github.com/burke/zeus/go/zeusmaster.Run
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/zeusmaster.go:49 +0x356
goroutine 10 [finalizer wait]:
created by runtime.gc
/usr/local/go/src/pkg/runtime/mgc0.c:882
goroutine 11 [syscall]:
created by addtimer
/usr/local/go/src/pkg/runtime/ztime_amd64.c:72
goroutine 12 [syscall]:
syscall.Syscall6()
/usr/local/go/src/pkg/syscall/asm_linux_amd64.s:40 +0x5
syscall.EpollWait(0xf80000000f, 0xf8400e8010, 0xa0000000a, 0xffffffff, 0xc, ...)
/usr/local/go/src/pkg/syscall/zerrors_linux_amd64.go:1781 +0xa1
net.(*pollster).WaitFD(0xf8400e8000, 0xf840040c00, 0x0, 0x0, 0x0, ...)
/usr/local/go/src/pkg/net/fd_linux.go:146 +0x110
net.(*pollServer).Run(0xf840040c00, 0x0)
/usr/local/go/src/pkg/net/fd.go:236 +0xe4
created by net.newPollServer
/usr/local/go/src/pkg/net/newpollserver.go:35 +0x382
goroutine 13 [chan receive]:
net.(*pollServer).WaitRead(0xf840040c00, 0xf840065510, 0xf840041150, 0xb, 0x1, ...)
/usr/local/go/src/pkg/net/fd.go:268 +0x73
net.(*netFD).ReadMsg(0xf840065510, 0xf8401bbc00, 0x40000000400, 0xf84012ff40, 0x2000000020, ...)
/usr/local/go/src/pkg/net/fd.go:486 +0x2d5
net.(*UnixConn).ReadMsgUnix(0xf840058410, 0xf8401bbc00, 0x40000000400, 0xf84012ff40, 0x2000000020, ...)
/usr/local/go/src/pkg/net/unixsock_posix.go:274 +0x144
github.com/burke/zeus/go/unixsocket.(*Usock).readFromSocket(0xf8400f70c0, 0x0, 0x0, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/unixsocket/unixsocket.go:186 +0xf4
github.com/burke/zeus/go/unixsocket.(*Usock).ReadFD(0xf8400f70c0, 0xf800000000, 0x0, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/unixsocket/unixsocket.go:109 +0xaa
github.com/burke/zeus/go/zeusmaster._func_004(0xf8400581f0, 0xf840058418, 0x0, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavemonitor.go:35 +0x28
created by github.com/burke/zeus/go/zeusmaster.StartSlaveMonitor
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavemonitor.go:41 +0x195
goroutine 14 [semacquire]:
sync.runtime_Semacquire(0xf840058440, 0xf840058440)
/usr/local/go/src/pkg/runtime/zsema_amd64.c:146 +0x25
sync.(*Cond).Wait(0xf840040040, 0xf800000001)
/usr/local/go/src/pkg/sync/cond.go:67 +0xaa
github.com/burke/zeus/go/zeusmaster.(*SlaveNode).WaitUntilReadyOrCrashed(0xf84006b300, 0x42e770)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:64 +0x133
github.com/burke/zeus/go/zeusmaster.(*SlaveNode).doWaitingState(0xf84006b3c0, 0x1, 0x50f454, 0x5700000001)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:148 +0x51
github.com/burke/zeus/go/zeusmaster.(*SlaveNode).Run(0xf84006b3c0, 0xf840050550, 0x0, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:121 +0x2cf
created by github.com/burke/zeus/go/zeusmaster.StartSlaveMonitor
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavemonitor.go:44 +0x203
goroutine 15 [chan receive]:
github.com/burke/zeus/go/zeusmaster.(*SlaveNode).doUnbootedState(0xf84006b180, 0xf840050550, 0x0, 0x5500000000, 0x0, ...)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:169 +0x3c7
github.com/burke/zeus/go/zeusmaster.(*SlaveNode).Run(0xf84006b180, 0xf840050550, 0x0, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:123 +0x271
created by github.com/burke/zeus/go/zeusmaster.StartSlaveMonitor
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavemonitor.go:44 +0x203
goroutine 16 [select]:
github.com/burke/zeus/go/zeusmaster.(*SlaveNode).doCrashedOrReadyState(0xf84006b000, 0x1, 0x50f264, 0x5200000001)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:228 +0x274
github.com/burke/zeus/go/zeusmaster.(*SlaveNode).Run(0xf84006b000, 0xf840050550, 0x0, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:129 +0x208
created by github.com/burke/zeus/go/zeusmaster.StartSlaveMonitor
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavemonitor.go:44 +0x203
goroutine 17 [runnable]:
github.com/burke/zeus/go/zeusmaster.(*SlaveNode).doCrashedOrReadyState(0xf84006b0c0, 0x1, 0x50f264, 0x5200000001)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:228 +0x274
github.com/burke/zeus/go/zeusmaster.(*SlaveNode).Run(0xf84006b0c0, 0xf840050550, 0x0, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:129 +0x208
created by github.com/burke/zeus/go/zeusmaster.StartSlaveMonitor
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavemonitor.go:44 +0x203
goroutine 18 [semacquire]:
sync.runtime_Semacquire(0xf840058398, 0xf840058398)
/usr/local/go/src/pkg/runtime/zsema_amd64.c:146 +0x25
sync.(*Cond).Wait(0xf8400402c0, 0xf800000001)
/usr/local/go/src/pkg/sync/cond.go:67 +0xaa
github.com/burke/zeus/go/zeusmaster.(*SlaveNode).WaitUntilReadyOrCrashed(0xf84006b180, 0x42e770)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:64 +0x133
github.com/burke/zeus/go/zeusmaster.(*SlaveNode).doWaitingState(0xf84006b240, 0x1, 0x50f454, 0x5700000001)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:148 +0x51
github.com/burke/zeus/go/zeusmaster.(*SlaveNode).Run(0xf84006b240, 0xf840050550, 0x0, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:121 +0x2cf
created by github.com/burke/zeus/go/zeusmaster.StartSlaveMonitor
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavemonitor.go:44 +0x203
goroutine 19 [chan receive]:
github.com/burke/zeus/go/zeusmaster.(*SlaveNode).doUnbootedState(0xf84006b480, 0xf840050550, 0x0, 0x5500000000, 0x0, ...)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:169 +0x3c7
github.com/burke/zeus/go/zeusmaster.(*SlaveNode).Run(0xf84006b480, 0xf840050550, 0x0, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:123 +0x271
created by github.com/burke/zeus/go/zeusmaster.StartSlaveMonitor
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavemonitor.go:44 +0x203
goroutine 20 [chan receive]:
net.(*pollServer).WaitRead(0xf840040c00, 0xf840152bd0, 0xf840041150, 0xb, 0x1, ...)
/usr/local/go/src/pkg/net/fd.go:268 +0x73
net.(*netFD).ReadMsg(0xf840152bd0, 0xf840290000, 0x40000000400, 0xf84012fb40, 0x2000000020, ...)
/usr/local/go/src/pkg/net/fd.go:486 +0x2d5
net.(*UnixConn).ReadMsgUnix(0xf840058060, 0xf840290000, 0x40000000400, 0xf84012fb40, 0x2000000020, ...)
/usr/local/go/src/pkg/net/unixsock_posix.go:274 +0x144
github.com/burke/zeus/go/unixsocket.(*Usock).readFromSocket(0xf840111f40, 0x0, 0x0, 0x40fa47)
/Users/burke/go/src/github.com/burke/zeus/go/unixsocket/unixsocket.go:186 +0xf4
github.com/burke/zeus/go/unixsocket.(*Usock).ReadMessage(0xf840111f40, 0x0, 0xf800000000, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/unixsocket/unixsocket.go:128 +0xc5
github.com/burke/zeus/go/zeusmaster.(*SlaveNode).doBootingState(0xf84006b300, 0x0, 0x0, 0x4200000001)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:185 +0x43
github.com/burke/zeus/go/zeusmaster.(*SlaveNode).Run(0xf84006b300, 0xf840050550, 0x0, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:125 +0x10b
created by github.com/burke/zeus/go/zeusmaster.StartSlaveMonitor
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavemonitor.go:44 +0x203
goroutine 21 [chan receive]:
net.(*pollServer).WaitRead(0xf840040c00, 0xf8400fa000, 0xf840041150, 0xb, 0x1, ...)
/usr/local/go/src/pkg/net/fd.go:268 +0x73
net.(*netFD).accept(0xf8400fa000, 0x46b623, 0x0, 0xf8400439f0, 0xf840058040, ...)
/usr/local/go/src/pkg/net/fd.go:622 +0x20d
net.(*UnixListener).AcceptUnix(0xf840042e20, 0xf8400fd000, 0xf840357780, 0x0)
/usr/local/go/src/pkg/net/unixsock_posix.go:350 +0x4d
github.com/burke/zeus/go/zeusmaster._func_001(0xf8400582f0, 0xf8400584b0, 0x0, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/clienthandler.go:32 +0x28
created by github.com/burke/zeus/go/zeusmaster.StartClientHandler
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/clienthandler.go:39 +0x15a
goroutine 22 [syscall]:
syscall.Syscall6()
/usr/local/go/src/pkg/syscall/asm_linux_amd64.s:40 +0x5
syscall.wait4(0x5b03, 0xf8400585d8, 0x0, 0xf840130000, 0x1, ...)
/usr/local/go/src/pkg/syscall/zerrors_linux_amd64.go:1599 +0x81
syscall.Wait4(0x5b03, 0x7fd9f784bd8c, 0x0, 0xf840130000, 0x488bd7, ...)
/usr/local/go/src/pkg/syscall/syscall_linux.go:178 +0x6a
os.(*Process).wait(0xf840124800, 0xf840058590, 0x0, 0x0, 0x488e79, ...)
/usr/local/go/src/pkg/os/exec_unix.go:22 +0xe1
os.(*Process).Wait(0xf840124800, 0x0, 0x0, 0x7fd9f784be60)
/usr/local/go/src/pkg/os/doc.go:43 +0x25
os/exec.(*Cmd).Wait(0xf84010e000, 0x0, 0x0, 0x0)
/usr/local/go/src/pkg/os/exec/exec.go:302 +0x1b7
os/exec.(*Cmd).Run(0xf84010e000, 0x4e2e40, 0xf8400ff180, 0xf840053870)
/usr/local/go/src/pkg/os/exec/exec.go:226 +0x6d
os/exec.(*Cmd).CombinedOutput(0xf84010e000, 0x0, 0x0, 0x0)
/usr/local/go/src/pkg/os/exec/exec.go:346 +0x246
github.com/burke/zeus/go/zeusmaster.babysitRootProcess(0xf84010e000, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:328 +0x25
created by github.com/burke/zeus/go/zeusmaster.(*SlaveNode).doUnbootedState
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:164 +0x38b
goroutine 23 [syscall]:
syscall.Syscall()
/usr/local/go/src/pkg/syscall/asm_linux_amd64.s:15 +0x5
syscall.Read(0x7fd90000000b, 0xf840113000, 0x80000000800, 0xf840047700, 0x0, ...)
/usr/local/go/src/pkg/syscall/zerrors_linux_amd64.go:2137 +0x78
os.(*File).read(0xf8400583a0, 0xf840113000, 0x80000000800, 0x4a4298, 0x0, ...)
/usr/local/go/src/pkg/os/file_unix.go:163 +0x58
os.(*File).Read(0xf8400583a0, 0xf840113000, 0x80000000800, 0xa0000002c, 0x0, ...)
/usr/local/go/src/pkg/os/file.go:95 +0x83
github.com/burke/zeus/go/zeusmaster._func_002()
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/filemonitor.go:80 +0x84
created by github.com/burke/zeus/go/zeusmaster.startWrapper
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/filemonitor.go:90 +0x207
goroutine 24 [syscall]:
syscall.Syscall6()
/usr/local/go/src/pkg/syscall/asm_linux_amd64.s:40 +0x5
syscall.wait4(0x5b00, 0xf840058470, 0x0, 0xf8400656c0, 0x1, ...)
/usr/local/go/src/pkg/syscall/zerrors_linux_amd64.go:1599 +0x81
syscall.Wait4(0x5b00, 0x7fd9f782be64, 0x0, 0xf8400656c0, 0x0, ...)
/usr/local/go/src/pkg/syscall/syscall_linux.go:178 +0x6a
os.(*Process).wait(0xf840100400, 0x0, 0x0, 0x0, 0x488e79, ...)
/usr/local/go/src/pkg/os/exec_unix.go:22 +0xe1
os.(*Process).Wait(0xf840100400, 0x0, 0x0, 0x0)
/usr/local/go/src/pkg/os/doc.go:43 +0x25
os/exec.(*Cmd).Wait(0xf8400e5000, 0x0, 0x0, 0x40f470)
/usr/local/go/src/pkg/os/exec/exec.go:302 +0x1b7
github.com/burke/zeus/go/zeusmaster._func_003(0xf8400582e8, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/filemonitor.go:93 +0x29
created by github.com/burke/zeus/go/zeusmaster.startWrapper
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/filemonitor.go:95 +0x21e
goroutine 25 [syscall]:
syscall.Syscall()
/usr/local/go/src/pkg/syscall/asm_linux_amd64.s:15 +0x5
syscall.Read(0xc, 0xf840052e00, 0x20000000200, 0x0, 0x0, ...)
/usr/local/go/src/pkg/syscall/zerrors_linux_amd64.go:2137 +0x78
os.(*File).read(0xf840058588, 0xf840052e00, 0x20000000200, 0x4a3c90, 0x0, ...)
/usr/local/go/src/pkg/os/file_unix.go:163 +0x58
os.(*File).Read(0xf840058588, 0xf840052e00, 0x20000000200, 0x0, 0x0, ...)
/usr/local/go/src/pkg/os/file.go:95 +0x83
bytes.(*Buffer).ReadFrom(0xf8400ff180, 0xf840043f60, 0xf840058588, 0x0, 0x0, ...)
/usr/local/go/src/pkg/bytes/buffer.go:153 +0x199
io.Copy(0xf840053870, 0xf8400ff180, 0xf840043f60, 0xf840058588, 0x0, ...)
/usr/local/go/src/pkg/io/io.go:340 +0xc2
os/exec._func_003(0xf840050850, 0xf840058460, 0x48ac36, 0x0, 0x0, ...)
/usr/local/go/src/pkg/os/exec/exec.go:201 +0x5a
os/exec._func_004(0xf8400584c8, 0xf840111800, 0x0, 0x0)
/usr/local/go/src/pkg/os/exec/exec.go:268 +0x1e
created by os/exec.(*Cmd).Start
/usr/local/go/src/pkg/os/exec/exec.go:269 +0x65c
goroutine 27 [chan receive]:
net.(*pollServer).WaitRead(0xf840040c00, 0xf840152000, 0xf840041150, 0xb, 0x1, ...)
/usr/local/go/src/pkg/net/fd.go:268 +0x73
net.(*netFD).ReadMsg(0xf840152000, 0xf8401f5000, 0x40000000400, 0xf840042b60, 0x2000000020, ...)
/usr/local/go/src/pkg/net/fd.go:486 +0x2d5
net.(*UnixConn).ReadMsgUnix(0xf8400587c8, 0xf8401f5000, 0x40000000400, 0xf840042b60, 0x2000000020, ...)
/usr/local/go/src/pkg/net/unixsock_posix.go:274 +0x144
github.com/burke/zeus/go/unixsocket.(*Usock).readFromSocket(0xf840153000, 0x0, 0x0, 0xf8401f22bb)
/Users/burke/go/src/github.com/burke/zeus/go/unixsocket/unixsocket.go:186 +0xf4
github.com/burke/zeus/go/unixsocket.(*Usock).ReadMessage(0xf840153000, 0x0, 0x0, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/unixsocket/unixsocket.go:128 +0xc5
github.com/burke/zeus/go/zeusmaster.(*SlaveNode).handleMessages(0xf84006b000, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:343 +0x29
created by github.com/burke/zeus/go/zeusmaster.(*SlaveNode).doCrashedOrReadyState
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:221 +0x9b
goroutine 364 [chan receive]:
net.(*pollServer).WaitRead(0xf840040c00, 0xf840130f30, 0xf840041150, 0xb, 0x1, ...)
/usr/local/go/src/pkg/net/fd.go:268 +0x73
net.(*netFD).ReadMsg(0xf840130f30, 0xf840290c00, 0x40000000400, 0xf84028f5a0, 0x2000000020, ...)
/usr/local/go/src/pkg/net/fd.go:486 +0x2d5
net.(*UnixConn).ReadMsgUnix(0xf8400582b8, 0xf840290c00, 0x40000000400, 0xf84028f5a0, 0x2000000020, ...)
/usr/local/go/src/pkg/net/unixsock_posix.go:274 +0x144
github.com/burke/zeus/go/unixsocket.(*Usock).readFromSocket(0xf8401ec800, 0x0, 0x0, 0xf8401f3cd1)
/Users/burke/go/src/github.com/burke/zeus/go/unixsocket/unixsocket.go:186 +0xf4
github.com/burke/zeus/go/unixsocket.(*Usock).ReadMessage(0xf8401ec800, 0x0, 0x0, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/unixsocket/unixsocket.go:128 +0xc5
github.com/burke/zeus/go/zeusmaster.(*SlaveNode).handleMessages(0xf84006b0c0, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:343 +0x29
created by github.com/burke/zeus/go/zeusmaster.(*SlaveNode).doCrashedOrReadyState
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:221 +0x9b
goroutine 1651 [chan receive]:
net.(*pollServer).WaitRead(0xf840040c00, 0xf8400fa900, 0xf840041150, 0xb, 0x1, ...)
/usr/local/go/src/pkg/net/fd.go:268 +0x73
net.(*netFD).ReadMsg(0xf8400fa900, 0xf8402a6800, 0x40000000400, 0xf84027ffa0, 0x2000000020, ...)
/usr/local/go/src/pkg/net/fd.go:486 +0x2d5
net.(*UnixConn).ReadMsgUnix(0xf840058dd8, 0xf8402a6800, 0x40000000400, 0xf84027ffa0, 0x2000000020, ...)
/usr/local/go/src/pkg/net/unixsock_posix.go:274 +0x144
github.com/burke/zeus/go/unixsocket.(*Usock).readFromSocket(0xf84026fc40, 0x0, 0x0, 0xf8401e8502)
/Users/burke/go/src/github.com/burke/zeus/go/unixsocket/unixsocket.go:186 +0xf4
github.com/burke/zeus/go/unixsocket.(*Usock).ReadMessage(0xf84026fc40, 0x0, 0x0, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/unixsocket/unixsocket.go:128 +0xc5
github.com/burke/zeus/go/zeusmaster.(*SlaveNode).handleMessages(0xf84006b300, 0x0)
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:343 +0x29
created by github.com/burke/zeus/go/zeusmaster.(*SlaveNode).doCrashedOrReadyState
/Users/burke/go/src/github.com/burke/zeus/go/zeusmaster/slavenode.go:221 +0x9b
#!/bin/sh
export RAILS_ENV
export RAILS_CMD=${RAILS_CMD-rails}
export GENERATOR_PARAMERERS="$* --no-stylesheets --force"
export TEMPLATE_PATH="templates/"
echo
echo " ***** stash all local changes"
echo
git add .
git stash
echo
echo " ***** run the generator using $RAILS_CMD command, using parameters: '$GENERATOR_PARAMERERS'"
echo
sh -c "$RAILS_CMD generate scaffold $GENERATOR_PARAMERERS"
echo
echo " ***** fix whatever the overzealous --force broke by default (like erasing the original migration)"
echo
git checkout -f db/migrate && echo " OK"
echo
echo " ***** move generated files to $TEMPLATE_PATH"
echo
GENERATED_FILES=$(git status --porcelain | cut -d\ -f 3-)
tar -c $GENERATED_FILES | tar -C templates/ -xv
echo
echo " ***** clean working tree back into original state"
echo
git checkout $GENERATED_FILES
git stash pop
git reset HEAD
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment