Details

    • Type: Improvement Improvement
    • Status: Resolved
    • Priority: Minor Minor
    • Resolution: Fixed
    • Fix Version/s: 2.0.2
    • Component/s: Core
    • Labels:
      None

      Description

      Anecdotally, it's still too easy to OOM Cassandra even after moving sstable internals off heap.

      1. 6059.txt
        2 kB
        Jonathan Ellis

        Activity

        Hide
        Robert Coli added a comment -

        FWIW, I agree about the 5x reduction in default timeout being likely to catch many people by surprise, that was my immediate reaction when I read about it in NEWS.txt... but I also agree that 10s is arbitrary and probably too large. So +1.

        Show
        Robert Coli added a comment - FWIW, I agree about the 5x reduction in default timeout being likely to catch many people by surprise, that was my immediate reaction when I read about it in NEWS.txt... but I also agree that 10s is arbitrary and probably too large. So +1.
        Hide
        Jonathan Ellis added a comment -

        Yes

        Show
        Jonathan Ellis added a comment - Yes
        Hide
        Jeremiah Jordan added a comment -

        Did you also change the yaml?

        Show
        Jeremiah Jordan added a comment - Did you also change the yaml?
        Hide
        Jonathan Ellis added a comment -

        committed

        Show
        Jonathan Ellis added a comment - committed
        Hide
        Brandon Williams added a comment -

        Fair enough, but a 5x reduction seems a tad extreme. I don't want to bikeshed a number though, so +1.

        Show
        Brandon Williams added a comment - Fair enough, but a 5x reduction seems a tad extreme. I don't want to bikeshed a number though, so +1.
        Hide
        Jonathan Ellis added a comment -

        I respect that, but I still think it's time we fixed it:

        • Current value of 10s is mostly an accident, because we didn't want to surprise people back in 1.1? when we split the timeout values apart. At some point that logic needs to take a back seat to giving people actual good defaults.
        • We're very early in 2.0 still, mass adoption is still ahead of us.
        • Typically people doing minor version updates don't rip-and-replace cassandra.yaml so they will keep using their old settings.
        Show
        Jonathan Ellis added a comment - I respect that, but I still think it's time we fixed it: Current value of 10s is mostly an accident, because we didn't want to surprise people back in 1.1? when we split the timeout values apart. At some point that logic needs to take a back seat to giving people actual good defaults. We're very early in 2.0 still, mass adoption is still ahead of us. Typically people doing minor version updates don't rip-and-replace cassandra.yaml so they will keep using their old settings.
        Hide
        Brandon Williams added a comment -

        I'm fine with the memtable change, but the write timeout, especially in a minor, seems like it's going to surprise some people who do large batches.

        Show
        Brandon Williams added a comment - I'm fine with the memtable change, but the write timeout, especially in a minor, seems like it's going to surprise some people who do large batches.
        Hide
        Jonathan Ellis added a comment -

        Patch to reduce default memtable size from 1/3 of heap to 1/4. More importantly, reduces write timeout default from 10s to 2s – this affects how many writes will be buffered before load shedding kicks in.

        Show
        Jonathan Ellis added a comment - Patch to reduce default memtable size from 1/3 of heap to 1/4. More importantly, reduces write timeout default from 10s to 2s – this affects how many writes will be buffered before load shedding kicks in.

          People

          • Assignee:
            Jonathan Ellis
            Reporter:
            Jonathan Ellis
            Reviewer:
            Brandon Williams
          • Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development