Details
Description
The following crashes are observed in goxdcr system test (MB-14983)
#4
panic: runtime error: invalid memory address or nil pointer dereference [recovered]
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xb code=0x1 addr=0x2f pc=0x40f20b]
goroutine 66 [running]:
runtime.gopanic(0x8ff620, 0xc20802a050)
/usr/local/go/src/runtime/panic.go:425 +0x2a3 fp=0xc209007950 sp=0xc2090078e8
encoding/json.func·001()
/usr/local/go/src/encoding/json/decode.go:135 +0x8b fp=0xc2090079a0 sp=0xc209007950
runtime.call16(0xc209008be8, 0xc208a8ac60, 0x0)
/usr/local/go/src/runtime/asm_amd64.s:401 +0x45 fp=0xc2090079b8 sp=0xc2090079a0
runtime.gopanic(0x8ff620, 0xc20802a050)
/usr/local/go/src/runtime/panic.go:387 +0x3a8 fp=0xc209007a20 sp=0xc2090079b8
runtime.panicmem()
/usr/local/go/src/runtime/panic.go:42 +0x4e fp=0xc209007a48 sp=0xc209007a20
runtime.sigpanic()
/usr/local/go/src/runtime/sigpanic_unix.go:26 +0x274 fp=0xc209007a98 sp=0xc209007a48
runtime.mallocgc(0x20, 0x81d7a0, 0xc200000001, 0x8)
/usr/local/go/src/runtime/malloc.go:183 +0x8ab fp=0xc209007b48 sp=0xc209007a98
runtime.newarray(0x81d7a0, 0x4, 0x81d7a0)
/usr/local/go/src/runtime/malloc.go:365 +0xc1 fp=0xc209007b80 sp=0xc209007b48
reflect.MakeSlice(0x7f4f8b327cb8, 0x808ea0, 0x0, 0x4, 0x0, 0x0, 0x0)
/usr/local/go/src/reflect/value.go:2004 +0x228 fp=0xc209007bf0 sp=0xc209007b80
encoding/json.(*decodeState).array(0xc20a2a0da8, 0x808ea0, 0xc2088ff818, 0xd7)
/usr/local/go/src/encoding/json/decode.go:428 +0x8bf fp=0xc209007d98 sp=0xc209007bf0
encoding/json.(*decodeState).value(0xc20a2a0da8, 0x808ea0, 0xc2088ff818, 0xd7)
/usr/local/go/src/encoding/json/decode.go:285 +0x3ee fp=0xc209007e70 sp=0xc209007d98
encoding/json.(*decodeState).array(0xc20a2a0da8, 0x806b00, 0xc209a8f6a0, 0xd7)
/usr/local/go/src/encoding/json/decode.go:439 +0xa9b fp=0xc209008018 sp=0xc209007e70
encoding/json.(*decodeState).value(0xc20a2a0da8, 0x806b00, 0xc209a8f6a0, 0xd7)
/usr/local/go/src/encoding/json/decode.go:285 +0x3ee fp=0xc2090080f0 sp=0xc209008018
encoding/json.(*decodeState).object(0xc20a2a0da8, 0x92d500, 0xc209a8f670, 0xd9)
/usr/local/go/src/encoding/json/decode.go:605 +0x1199 fp=0xc209008430 sp=0xc2090080f0
encoding/json.(*decodeState).value(0xc20a2a0da8, 0x92d500, 0xc209a8f670, 0xd9)
/usr/local/go/src/encoding/json/decode.go:288 +0x3ce fp=0xc209008508 sp=0xc209008430
encoding/json.(*decodeState).object(0xc20a2a0da8, 0x980a60, 0xc209a8f588, 0xd9)
/usr/local/go/src/encoding/json/decode.go:605 +0x1199 fp=0xc209008848 sp=0xc209008508
encoding/json.(*decodeState).value(0xc20a2a0da8, 0x980a60, 0xc209a8f588, 0xd9)
/usr/local/go/src/encoding/json/decode.go:288 +0x3ce fp=0xc209008920 sp=0xc209008848
encoding/json.(*decodeState).array(0xc20a2a0da8, 0x8080c0, 0xc2086c75c0, 0xd7)
/usr/local/go/src/encoding/json/decode.go:439 +0xa9b fp=0xc209008ac8 sp=0xc209008920
encoding/json.(*decodeState).value(0xc20a2a0da8, 0x7f7860, 0xc209698c80, 0x16)
/usr/local/go/src/encoding/json/decode.go:285 +0x3ee fp=0xc209008ba0 sp=0xc209008ac8
encoding/json.(*decodeState).unmarshal(0xc20a2a0da8, 0x7f7860, 0xc209698c80, 0x0, 0x0)
/usr/local/go/src/encoding/json/decode.go:149 +0x1e7 fp=0xc209008c40 sp=0xc209008ba0
encoding/json.(*Decoder).Decode(0xc20a2a0d80, 0x7f7860, 0xc209698c80, 0x0, 0x0)
/usr/local/go/src/encoding/json/stream.go:53 +0x18f fp=0xc209008ce0 sp=0xc209008c40
github.com/couchbase/go-couchbase.queryRestAPI(0xc208d54380, 0xc20a2be280, 0x47, 0x7f4f8b331860, 0xc2088b1660, 0x7f0300, 0xc2086c75c0, 0x0, 0x0)
/home/couchbase/jenkins/workspace/sherlock-unix/godeps/src/github.com/couchbase/go-couchbase/pools.go:450 +0x799 fp=0xc209008ea0 sp=0xc209008ce0
github.com/couchbase/go-couchbase.(*Client).parseURLResponse(0xc20813db28, 0xc20a2be280, 0x47, 0x7f0300, 0xc2086c75c0, 0x0, 0x0)
/home/couchbase/jenkins/workspace/sherlock-unix/godeps/src/github.com/couchbase/go-couchbase/pools.go:457 +0x75 fp=0xc209008ef0 sp=0xc209008ea0
github.com/couchbase/go-couchbase.(*Pool).refresh(0xc20813db00, 0x0, 0x0)
/home/couchbase/jenkins/workspace/sherlock-unix/godeps/src/github.com/couchbase/go-couchbase/pools.go:660 +0x1a2 fp=0xc2090092c8 sp=0xc209008ef0
github.com/couchbase/go-couchbase.(*Client).GetPool(0xc20963b980, 0x9a47d0, 0x7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
/home/couchbase/jenkins/workspace/sherlock-unix/godeps/src/github.com/couchbase/go-couchbase/pools.go:691 +0x396 fp=0xc2090093f8 sp=0xc2090092c8
github.com/couchbase/goxdcr/utils.LocalPool(0xc2096c0d70, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
/home/couchbase/jenkins/workspace/sherlock-unix/goproj/src/github.com/couchbase/goxdcr/utils/utils.go:88 +0x4a7 fp=0xc209009640 sp=0xc2090093f8
github.com/couchbase/goxdcr/utils.LocalBucketUUID(0xc2096c0d70, 0xe, 0xc2080e5ae0, 0x9, 0x0, 0x0, 0x0, 0x0)
/home/couchbase/jenkins/workspace/sherlock-unix/goproj/src/github.com/couchbase/goxdcr/utils/utils.go:419 +0x73 fp=0xc209009920 sp=0xc209009640
github.com/couchbase/goxdcr/service_impl.(*ReplicationSpecService).ValidateExistingReplicationSpec(0xc2080663c0, 0xc20819a500, 0x0, 0x0, 0x0, 0x0)
/home/couchbase/jenkins/workspace/sherlock-unix/goproj/src/github.com/couchbase/goxdcr/service_impl/replication_spec_service.go:313 +0x12d fp=0xc209009c80 sp=0xc209009920
github.com/couchbase/goxdcr/service_impl.(*ReplicationSpecService).ValidateAndGC(0xc2080663c0, 0xc20819a500)
/home/couchbase/jenkins/workspace/sherlock-unix/goproj/src/github.com/couchbase/goxdcr/service_impl/replication_spec_service.go:370 +0x40 fp=0xc209009d50 sp=0xc209009c80
github.com/couchbase/goxdcr/pipeline_manager.CheckPipelines()
/home/couchbase/jenkins/workspace/sherlock-unix/goproj/src/github.com/couchbase/goxdcr/pipeline_manager/pipeline_manager.go:204 +0xcd fp=0xc209009e68 sp=0xc209009d50
github.com/couchbase/goxdcr/replication_manager.(*replicationManager).checkReplicationStatus(0xc757a0, 0xc20812c1c0)
/home/couchbase/jenkins/workspace/sherlock-unix/goproj/src/github.com/couchbase/goxdcr/replication_manager/replication_manager.go:206 +0x133 fp=0xc209009fd0 sp=0xc209009e68
runtime.goexit()
/usr/local/go/src/runtime/asm_amd64.s:2232 +0x1 fp=0xc209009fd8 sp=0xc209009fd0
#5
unexpected fault address 0x0
fatal error: fault
[signal 0xb code=0x80 addr=0x0 pc=0x40f20b]
goroutine 6214 [running]:
runtime.gothrow(0x9a6170, 0x5)
/usr/local/go/src/runtime/panic.go:503 +0x8e fp=0xc2095eb960 sp=0xc2095eb948
runtime.sigpanic()
/usr/local/go/src/runtime/sigpanic_unix.go:29 +0x265 fp=0xc2095eb9b0 sp=0xc2095eb960
runtime.mallocgc(0xd00, 0x81e5a0, 0xc200000001, 0x18)
/usr/local/go/src/runtime/malloc.go:183 +0x8ab fp=0xc2095eba60 sp=0xc2095eb9b0
runtime.newarray(0x81e5a0, 0xc3b, 0x18)
/usr/local/go/src/runtime/malloc.go:365 +0xc1 fp=0xc2095eba98 sp=0xc2095eba60
runtime.makeslice(0x80b540, 0xc3b, 0xc3b, 0x0, 0x0, 0x0)
/usr/local/go/src/runtime/slice.go:32 +0x15c fp=0xc2095ebae0 sp=0xc2095eba98
github.com/couchbase/gomemcached.(*MCRequest).Receive(0xc2095ebe78, 0x7f385008fdb0, 0xc2081681f0, 0xc2088b3fe0, 0x18, 0x18, 0xc20a27069f, 0x0, 0x0)
/home/couchbase/jenkins/workspace/sherlock-unix/godeps/src/github.com/couchbase/gomemcached/mc_req.go:154 +0x716 fp=0xc2095ebc60 sp=0xc2095ebae0
github.com/couchbase/gomemcached/client.(*UprFeed).runFeed(0xc20a2402d0, 0xc2088d9bc0)
/home/couchbase/jenkins/workspace/sherlock-unix/godeps/src/github.com/couchbase/gomemcached/client/upr_feed.go:398 +0x16a fp=0xc2095ebfd0 sp=0xc2095ebc60
runtime.goexit()
/usr/local/go/src/runtime/asm_amd64.s:2232 +0x1 fp=0xc2095ebfd8 sp=0xc2095ebfd0
created by github.com/couchbase/gomemcached/client.(*UprFeed).StartFeed
/home/couchbase/jenkins/workspace/sherlock-unix/godeps/src/github.com/couchbase/gomemcached/client/upr_feed.go:328 +0x90
#6
panic: runtime error: slice bounds out of range
goroutine 5805 [running]:
runtime.gopanic(0x8ff620, 0xc20802a010)
/usr/local/go/src/runtime/panic.go:425 +0x2a3 fp=0xc20c1cd2e8 sp=0xc20c1cd280
runtime.panicslice()
/usr/local/go/src/runtime/panic.go:18 +0x4e fp=0xc20c1cd310 sp=0xc20c1cd2e8
github.com/couchbase/gomemcached.(*MCRequest).Bytes(0xc2090e5860, 0x0, 0x0, 0x0)
/home/couchbase/jenkins/workspace/sherlock-unix/godeps/src/github.com/couchbase/gomemcached/mc_req.go:101 +0x19a fp=0xc20c1cd390 sp=0xc20c1cd310
github.com/couchbase/goxdcr/parts.(*XmemNozzle).sendSingleSetMeta(0xc20a958000, 0xa0fc00, 0xc20b561200, 0xc20c1c0020, 0x5, 0x0, 0x0)
/home/couchbase/jenkins/workspace/sherlock-unix/goproj/src/github.com/couchbase/goxdcr/parts/xmem_nozzle.go:1274 +0x2db fp=0xc20c1cd490 sp=0xc20c1cd390
github.com/couchbase/goxdcr/parts.(*XmemNozzle).resendForNewConn(0xc20a958000, 0xc2091b1a90, 0x460020, 0xc20c4c0600, 0x0, 0x0)
/home/couchbase/jenkins/workspace/sherlock-unix/goproj/src/github.com/couchbase/goxdcr/parts/xmem_nozzle.go:1700 +0x261 fp=0xc20c1cd560 sp=0xc20c1cd490
github.com/couchbase/goxdcr/parts.*XmemNozzle.(github.com/couchbase/goxdcr/parts.resendForNewConn)·fm(0xc2091b1a90, 0xc2ffff0020, 0x0, 0x0, 0x0)
/home/couchbase/jenkins/workspace/sherlock-unix/goproj/src/github.com/couchbase/goxdcr/parts/xmem_nozzle.go:1913 +0x4e fp=0xc20c1cd598 sp=0xc20c1cd560
github.com/couchbase/goxdcr/parts.(*requestBuffer).modSlot(0xc20819f300, 0xc20a950020, 0xc20c1cd680, 0xc20c8e3e00, 0x0, 0x0)
/home/couchbase/jenkins/workspace/sherlock-unix/goproj/src/github.com/couchbase/goxdcr/parts/xmem_nozzle.go:237 +0xee fp=0xc20c1cd5f0 sp=0xc20c1cd598
github.com/couchbase/goxdcr/parts.(*XmemNozzle).onSetMetaConnRepaired(0xc20a958000)
/home/couchbase/jenkins/workspace/sherlock-unix/goproj/src/github.com/couchbase/goxdcr/parts/xmem_nozzle.go:1913 +0xb2 fp=0xc20c1cd6b0 sp=0xc20c1cd5f0
github.com/couchbase/goxdcr/parts.(*XmemNozzle).repairConn(0xc20a958000, 0xc2082743c0, 0xa51f10, 0x20, 0x0, 0x0, 0x0)
/home/couchbase/jenkins/workspace/sherlock-unix/goproj/src/github.com/couchbase/goxdcr/parts/xmem_nozzle.go:1896 +0x4a9 fp=0xc20c1cd858 sp=0xc20c1cd6b0
github.com/couchbase/goxdcr/parts.(*XmemNozzle).writeToClient(0xc20a958000, 0xc2082743c0, 0xc20ba72000, 0xe468, 0x12000, 0x0, 0x0, 0x3e8)
/home/couchbase/jenkins/workspace/sherlock-unix/goproj/src/github.com/couchbase/goxdcr/parts/xmem_nozzle.go:1803 +0x46b fp=0xc20c1cd990 sp=0xc20c1cd858
github.com/couchbase/goxdcr/parts.(*XmemNozzle).sendWithRetry(0xc20a958000, 0xc2082743c0, 0x5, 0xc20ba72000, 0xe468, 0x12000, 0x0, 0x0)
/home/couchbase/jenkins/workspace/sherlock-unix/goproj/src/github.com/couchbase/goxdcr/parts/xmem_nozzle.go:1060 +0xa4 fp=0xc20c1cda18 sp=0xc20c1cd990
github.com/couchbase/goxdcr/parts.(*XmemNozzle).batchSetMetaWithRetry(0xc20a958000, 0xc20ad71500, 0x5, 0x0, 0x0)
/home/couchbase/jenkins/workspace/sherlock-unix/goproj/src/github.com/couchbase/goxdcr/parts/xmem_nozzle.go:990 +0x758 fp=0xc20c1cdc78 sp=0xc20c1cda18
github.com/couchbase/goxdcr/parts.(*XmemNozzle).sendSetMeta_internal(0xc20a958000, 0xc20ad71500, 0x0, 0x0)