Uploaded image for project: 'Couchbase Server'
  1. Couchbase Server
  2. MB-34230

protect the code from nil map in GetRemoteDoc()

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Major
    • 6.0.2, 6.5.0
    • 6.0.1, 6.5.0
    • query
    • None
    • Untriaged
    • Unknown

    Description

      defensive fix

      _time=2019-05-03T17:26:07.869+00:00 _level=SEVERE _msg=panic: assignment to entry in nil map
       
      request text:
      <ud>select prepareds.* from system:prepareds</ud>
       
      stack:
      goroutine 22042215 [running]:
      github.com/couchbase/query/execution.(*Context).Recover(0xc43e4e5a20)
              goproj/src/github.com/couchbase/query/execution/context.go:522 +0xbc
      panic(0xe3cd20, 0xc43d4f1120)
              /home/couchbase/.cbdepscache/exploded/x86_64/go-1.8.5/go/src/runtime/panic.go:489 +0x2cf
      github.com/couchbase/query/value.objectValue.SetField(0x0, 0xfa3ef4, 0x4, 0xdf0180, 0xc43d4f1110, 0xc53ee8da18, 0xc43d4f1110)
              goproj/src/github.com/couchbase/query/value/object.go:251 +0xd1
      github.com/couchbase/query/value.(*annotatedValue).SetField(0xc5bc4e0fc0, 0xfa3ef4, 0x4, 0xdf0180, 0xc43d4f1110, 0xc53ee8d9f0, 0x5471d3)
              <autogenerated>:89 +0x78
      github.com/couchbase/query/datastore/system.(*preparedsKeyspace).Fetch.func1(0x0)
              goproj/src/github.com/couchbase/query/datastore/system/system_keyspace_prepareds.go:87 +0x190
      github.com/couchbase/query/server/http.(*systemRemoteHttp).GetRemoteDoc(0xc42008e740, 0xc448f7c9e0, 0x12, 0xc5bc4e04e0, 0x24, 0xfa99dc, 0x9, 0xfa3a6c, 0x4, 0xc5bc4e0510, ...)
              goproj/src/github.com/couchbase/query/server/http/system_remote.go:257 +0x323
      github.com/couchbase/query/datastore/system.(*preparedsKeyspace).Fetch(0xc4206aea20, 0xc5d0943000, 0x10, 0x40, 0xc5761fd440, 0x18a24a0, 0xc43e4e5a20, 0x0, 0x0, 0x0, ...)
              goproj/src/github.com/couchbase/query/datastore/system/system_keyspace_prepareds.go:96 +0x322
      github.com/couchbase/query/execution.(*Fetch).flushBatch(0xc43d4d54a0, 0xc43e4e5a20, 0x190e600)
              goproj/src/github.com/couchbase/query/execution/fetch.go:115 +0x533
      github.com/couchbase/query/execution.(*base).enbatchSize(0xc43d4d54a0, 0x18d9280, 0xc5d51a38c0, 0x18a2500, 0xc43d4d54a0, 0x10, 0xc43e4e5a20, 0xc5d51a38c0)
              goproj/src/github.com/couchbase/query/execution/base.go:707 +0x1a2
      github.com/couchbase/query/execution.(*Fetch).processItem(0xc43d4d54a0, 0x18d9280, 0xc5d51a38c0, 0xc43e4e5a20, 0x1)
              goproj/src/github.com/couchbase/query/execution/fetch.go:60 +0x6a
      github.com/couchbase/query/execution.(*base).runConsumer.func1()
              goproj/src/github.com/couchbase/query/execution/base.go:547 +0x25d
      github.com/couchbase/query/util.(*Once).Do(0xc43d4d5598, 0xc43b0b3738)
              goproj/src/github.com/couchbase/query/util/sync.go:51 +0x68
      github.com/couchbase/query/execution.(*base).runConsumer(0xc43d4d54a0, 0x189fc40, 0xc43d4d54a0, 0xc43e4e5a20, 0x0, 0x0)
              goproj/src/github.com/couchbase/query/execution/base.go:552 +0xaf
      github.com/couchbase/query/execution.(*Fetch).RunOnce(0xc43d4d54a0, 0xc43e4e5a20, 0x0, 0x0)
              goproj/src/github.com/couchbase/query/execution/fetch.go:56 +0x5c
      created by github.com/couchbase/query/execution.(*base).runConsumer.func1
              goproj/src/github.com/couchbase/query/execution/base.go:537 +0x2f6
      

      Attachments

        Activity

          People

            mihir.kamdar Mihir Kamdar (Inactive)
            Sitaram.Vemulapalli Sitaram Vemulapalli
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              PagerDuty