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

Panic during index scan for large index keys > 15K (entryCache.Update)

    XMLWordPrintable

Details

    • Untriaged
    • Unknown

    Description

      Steps:
      1. Create a document {k1:

      {k11: val11, k12: val12}

      , k2: val2}, where val12 is a json and is very large (~80KB)
      2. Create Index on (k1.k11, k1).
      3. Run select query from n1ql.

      Following panic will be seen in indexer logs.

      panic: runtime error: slice bounds out of range [recovered]
              panic: runtime error: slice bounds out of range
       
      goroutine 1804 [running]:
      panic(0x4a3a3e0, 0xc420016100)
              /Users/amithk/.cbdepscache/exploded/x86_64/go-1.7.6/go/src/runtime/panic.go:500 +0x1a1 fp=0xc4249a9190 sp=0xc4249a9100
      github.com/couchbase/indexing/secondary/indexer.(*IndexScanSource).Routine.func1(0xc426de4d20)
              goproj/src/github.com/couchbase/indexing/secondary/indexer/scan_pipeline.go:133 +0xcf fp=0xc4249a91e8 sp=0xc4249a9190
      runtime.call32(0x0, 0x4c64de0, 0xc42709f530, 0x800000008)
              /Users/amithk/.cbdepscache/exploded/x86_64/go-1.7.6/go/src/runtime/asm_amd64.s:479 +0x4c fp=0xc4249a9218 sp=0xc4249a91e8
      panic(0x4a3a3e0, 0xc420016100)
              /Users/amithk/.cbdepscache/exploded/x86_64/go-1.7.6/go/src/runtime/panic.go:458 +0x243 fp=0xc4249a92a8 sp=0xc4249a9218
      runtime.panicslice()
              /Users/amithk/.cbdepscache/exploded/x86_64/go-1.7.6/go/src/runtime/panic.go:34 +0x6d fp=0xc4249a92d8 sp=0xc4249a92a8
      github.com/couchbase/indexing/secondary/indexer.(*entryCache).Update(0xc423086300, 0x7735044, 0x15208, 0x15208, 0xc426b1ba10, 0x2, 0x2, 0x0, 0x0, 0x0)
              goproj/src/github.com/couchbase/indexing/secondary/indexer/scan_pipeline.go:1333 +0x1dd fp=0xc4249a9378 sp=0xc4249a92d8
      github.com/couchbase/indexing/secondary/indexer.filterScanRow2(0x7735044, 0x15208, 0x15208, 0x521f5e0, 0xc4275b98c0, 0x521f520, 0x52094f0, 0x3, 0x4b8de30, 0xb, ...)
              goproj/src/github.com/couchbase/indexing/secondary/indexer/scan_pipeline.go:588 +0x40f fp=0xc4249a9558 sp=0xc4249a9378
      github.com/couchbase/indexing/secondary/indexer.(*IndexScanSource).Routine.func3(0x7735044, 0x15208, 0x15208, 0xc424811818, 0x4014e08)
              goproj/src/github.com/couchbase/indexing/secondary/indexer/scan_pipeline.go:221 +0x1214 fp=0xc4249a97c0 sp=0xc4249a9558
      github.com/couchbase/indexing/secondary/indexer.scanSingleSlice.func2(0x7735044, 0x15208, 0x15208, 0x15208, 0x1)
              goproj/src/github.com/couchbase/indexing/secondary/indexer/scan_scatter.go:196 +0x16e fp=0xc4249a9848 sp=0xc4249a97c0
      github.com/couchbase/indexing/secondary/indexer.(*plasmaSnapshot).Iterate(0xc423abb900, 0x521b500, 0xc4275b9800, 0x521f5e0, 0xc4275b98c0, 0x521f520, 0x52094f0, 0x3, 0x4c655b8, 0xc426b1b9e0, ...)
              goproj/src/github.com/couchbase/indexing/secondary/indexer/plasma_slice.go:1977 +0x305 fp=0xc4249a98c8 sp=0xc4249a9848
      github.com/couchbase/indexing/secondary/indexer.(*plasmaSnapshot).Range(0xc423abb900, 0x521b500, 0xc4275b9800, 0x521f5e0, 0xc4275b98c0, 0x521f520, 0x52094f0, 0x3, 0xc426b1b9e0, 0x4059000000000001, ...)
              goproj/src/github.com/couchbase/indexing/secondary/indexer/plasma_slice.go:1919 +0xb2 fp=0xc4249a9938 sp=0xc4249a98c8
      github.com/couchbase/indexing/secondary/indexer.scanSingleSlice(0xc427554000, 0x521f5e0, 0xc4275b98c0, 0x521f520, 0x52094f0, 0x3, 0x4b8de30, 0xb, 0xc4275b6910, 0x1, ...)
              goproj/src/github.com/couchbase/indexing/secondary/indexer/scan_scatter.go:206 +0x41b fp=0xc4249a9a00 sp=0xc4249a9938
      github.com/couchbase/indexing/secondary/indexer.scanOne(0xc427554000, 0x521f5e0, 0xc4275b98c0, 0x521f520, 0x52094f0, 0x3, 0x4b8de30, 0xb, 0xc4275b6910, 0x1, ...)
              goproj/src/github.com/couchbase/indexing/secondary/indexer/scan_scatter.go:148 +0x11e fp=0xc4249a9b18 sp=0xc4249a9a00
      github.com/couchbase/indexing/secondary/indexer.scatter(0xc427554000, 0x521f5e0, 0xc4275b98c0, 0x521f520, 0x52094f0, 0x3, 0x4b8de30, 0xb, 0xc4275b6910, 0x1, ...)
              goproj/src/github.com/couchbase/indexing/secondary/indexer/scan_scatter.go:55 +0xc6 fp=0xc4249a9bc8 sp=0xc4249a9b18
      github.com/couchbase/indexing/secondary/indexer.(*IndexScanSource).Routine(0xc426de4d20, 0x0, 0x0)
              goproj/src/github.com/couchbase/indexing/secondary/indexer/scan_pipeline.go:336 +0x810 fp=0xc4249a9f18 sp=0xc4249a9bc8
      github.com/couchbase/indexing/secondary/pipeline.(*Pipeline).runIt.func1(0xc4275b9940, 0xc4275b5b90)
              /Users/amithk/idxcorrupt/goproj/src/github.com/couchbase/indexing/secondary/pipeline/pipeline.go:75 +0x45 fp=0xc4249a9f80 sp=0xc4249a9f18
      runtime.goexit()
              /Users/amithk/.cbdepscache/exploded/x86_64/go-1.7.6/go/src/runtime/asm_amd64.s:2086 +0x1 fp=0xc4249a9f88 sp=0xc4249a9f80
      created by github.com/couchbase/indexing/secondary/pipeline.(*Pipeline).runIt
              /Users/amithk/idxcorrupt/goproj/src/github.com/couchbase/indexing/secondary/pipeline/pipeline.go:80 +0x66
      
      

      Attachments

        For Gerrit Dashboard: MB-30221
        # Subject Branch Project Status CR V

        Activity

          People

            prasanna.gholap Prasanna Gholap [X] (Inactive)
            amit.kulkarni Amit Kulkarni
            Votes:
            0 Vote for this issue
            Watchers:
            8 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty