Uploaded image for project: 'Couchbase C client library libcouchbase'
  1. Couchbase C client library libcouchbase
  2. CCBC-113

libcouchbase receives assert(relocate_packets: Assertion `!dst->connected' failed.) if server is stopped during active connection

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: 2.0.0beta2
    • Fix Version/s: 2.0.0beta3
    • Component/s: library
    • Security Level: Public
    • Labels:
      None
    • Environment:
      CentOs 6.2, 64-Bit

      Description

      Received:

      relocate_packets: Assertion `!dst->connected' failed.
      Aborted

      When sending commands (store and get) in mass to a connection on which the corresponding beta 2.0 server is shutdown normally.
      Basically, just keep sending commands to the connection and shut down the server (only one in the cluster) and you will see this.
      Doesn't happen everytime, but most times.

      Since my application cannot exit, this is a workstoppage for me.

      I am having lots of issues with the library being able to properly handle connecting and disconnecting from a server that is
      going up/down via normal command sequence as root.

      No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

        Hide
        mnunberg Mark Nunberg added a comment -

        To clarify, are you running a one-node cluster?

        Show
        mnunberg Mark Nunberg added a comment - To clarify, are you running a one-node cluster?
        Hide
        mleib Michael Leib added a comment -

        I have a 2-node cluster, but my hostline when I start the library only specifies one of them. Not trying to do failover to the other node.

        Show
        mleib Michael Leib added a comment - I have a 2-node cluster, but my hostline when I start the library only specifies one of them. Not trying to do failover to the other node.
        Hide
        mnunberg Mark Nunberg added a comment -

        Ok, I've seen CCBC-104 occur in this setting as well. (Just want to reference that here)

        Show
        mnunberg Mark Nunberg added a comment - Ok, I've seen CCBC-104 occur in this setting as well. (Just want to reference that here)
        Hide
        avsej Sergey Avseyev added a comment -

        You are right, I may not make such assertions in the code

        https://github.com/couchbase/libcouchbase/blob/4029b9966f3fae9cd6feffbcccc9ba6c97e6dabd/src/instance.c#L526

        I think it is safe to remove the destination server assertion here, because later in the lcb_server_send_packets() we are ensuring that server socket is open

        https://github.com/couchbase/libcouchbase/blob/4029b9966f3fae9cd6feffbcccc9ba6c97e6dabd/src/server.c#L622

        I removed it in this patch http://review.couchbase.org/22266

        Show
        avsej Sergey Avseyev added a comment - You are right, I may not make such assertions in the code https://github.com/couchbase/libcouchbase/blob/4029b9966f3fae9cd6feffbcccc9ba6c97e6dabd/src/instance.c#L526 I think it is safe to remove the destination server assertion here, because later in the lcb_server_send_packets() we are ensuring that server socket is open https://github.com/couchbase/libcouchbase/blob/4029b9966f3fae9cd6feffbcccc9ba6c97e6dabd/src/server.c#L622 I removed it in this patch http://review.couchbase.org/22266

          People

          • Assignee:
            avsej Sergey Avseyev
            Reporter:
            mleib Michael Leib
          • Votes:
            1 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Gerrit Reviews

              There are no open Gerrit changes