Uploaded image for project: 'Couchbase .NET client library'
  1. Couchbase .NET client library
  2. NCBC-314

Runaway worker process when cluster node shutdown - SessionState provider

    Details

    • Type: Bug
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None

      Description

      http://www.couchbase.com/communities/q-and-a/runaway-worker-process-when-cluster-node-shutdown-sessionstate-provider

      >>Hi All,

      I am experiencing a problem that has multiple symptoms and all in all seems very strange.

      I have a single Windows Server 2012, IIS8 EC2 instance hosting an ASP .Net WebForms site using .Net Fx 4.0. This is configured to use a Couchbase 2.1.1 community edition (build-764-rel) cluster of 2 nodes.

      The Client components are: CouchBaseNetClient 1.2.9 and CouchBaseAspNet 1.2.1 both installed from NuGet.

      The Problem:

      If I shutdown one of the nodes (either one, same problem) to simulate failure; then the following are observed.

      The connected browser clients get redirected to a 404 page when they try to postback.

      If I re-enter the home page url in the browser and navigate there, the server does not repsond to the get request and the server's w3wp process jumps to 50% and just sits there. If I browse to the site from another client, the w3wp processor usage jumps to 100% - eventually these requests timeout on the browser but the processor use remains the same on the server.

      Stopping and starting the app pool seems to have no effect, a full iisreset is required. When I then access the site again after an iisreset, any pages that use session state timeout.

      The system cannot be restored to working condition until the dropped Couchbase node is returned to the cluster.

      This problem happens when exclusiveAccess is set to true or false.

      The web.confg entries are included below:

      Web.config:

      <sessionState customProvider="Couchbase" mode="Custom" timeout="10">
      <providers>
      <add name="Couchbase" type="Couchbase.AspNet.SessionState.CouchbaseSessionStateProvider, Couchbase.AspNet"
      exclusiveAccess="false" />
      </providers>
      </sessionState>
      </system.web>
      <couchbase>
      <servers bucket="default" bucketPassword="passwd">
      <add uri="http://cache1.domain.com:8091/pools" />
      <add uri="http://cache2.domain.com:8091/pools" />
      </servers>
      </couchbase>
      <code>

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

        Activity

        Hide
        jmorris Jeff Morris added a comment -

        Saakshi -

        Can you try to replicate this?

        -Jeff

        Show
        jmorris Jeff Morris added a comment - Saakshi - Can you try to replicate this? -Jeff

          People

          • Assignee:
            saakshi.manocha Saakshi Manocha
            Reporter:
            jmorris Jeff Morris
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:

              Gerrit Reviews

              There are no open Gerrit changes