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

Fix a syncFile panic when LSS not opened in synchronous mode (config.SyncInterval set)

    XMLWordPrintable

Details

    • Untriaged
    • 0
    • Unknown

    Description

      Seen in flush buffer unit test

       

      --- FAIL: TestLSSFlushBufferSizePersist128K (0.11s)
      panic: runtime error: invalid memory address or nil pointer dereference [recovered]
              panic: runtime error: invalid memory address or nil pointer dereference
      [signal SIGSEGV: segmentation violation code=0x1 addr=0x78 pc=0x100850162]        /Users/saptarshi.sen/.cbdepscache/exploded/x86_64/go-1.20.4/go/src/runtime/panic.go:884 +0x213
      github.com/couchbase/plasma.syncFile({0x0, 0x0})
              /Users/saptarshi.sen/ws/couchbase/elixir/goproj/src/github.com/couchbase/plasma/util.go:666 +0x22
      github.com/couchbase/plasma.(*multiFilelog).growLog(0xc000478000)
              /Users/saptarshi.sen/ws/couchbase/elixir/goproj/src/github.com/couchbase/plasma/log.go:406 +0x132
      github.com/couchbase/plasma.(*multiFilelog).Append(0xc000478000, {0xc000220000?, 0x1000, 0xc0004669e8?})
              /Users/saptarshi.sen/ws/couchbase/elixir/goproj/src/github.com/couchbase/plasma/log.go:448 +0x130
      github.com/couchbase/plasma.(*lsStore).flush(0xc0004726c0, 0xc000528080)
              /Users/saptarshi.sen/ws/couchbase/elixir/goproj/src/github.com/couchbase/plasma/lss.go:290 +0x132
      github.com/couchbase/plasma.(*flushBuffer).Done(0xc0004726c0?)
              /Users/saptarshi.sen/ws/couchbase/elixir/goproj/src/github.com/couchbase/plasma/lss.go:1257 +0x84
      github.com/couchbase/plasma.(*lsStore).Sync(0xc0004726c0, 0x1)
              /Users/saptarshi.sen/ws/couchbase/elixir/goproj/src/github.com/couchbase/plasma/lss.go:659 +0x77
      github.com/couchbase/plasma.(*LSSCtx).LSSSync(...)
              /Users/saptarshi.sen/ws/couchbase/elixir/goproj/src/github.com/couchbase/plasma/lssctx.go:457
      github.com/couchbase/plasma.(*Plasma).Sync(0xc0003c4000, 0xe0?)
              /Users/saptarshi.sen/ws/couchbase/elixir/goproj/src/github.com/couchbase/plasma/plasma.go:1990 +0x35
      github.com/couchbase/plasma.(*Plasma).updateMaxSn(0xc0003c4000, 0x1, 0x20?)
              /Users/saptarshi.sen/ws/couchbase/elixir/goproj/src/github.com/couchbase/plasma/mvcc.go:1040 +0x218
      github.com/couchbase/plasma.(*Plasma).doInit(0xc0003c4000)
      

       

      Attachments

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

        Activity

          People

            saptarshi.sen Saptarshi Sen
            saptarshi.sen Saptarshi Sen
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty