Uploaded image for project: 'Apache Cassandra'
  1. Apache Cassandra
  2. CASSANDRA-1160

race with insufficiently constructed Gossiper

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Low
    • Resolution: Fixed
    • 0.6.3, 0.7 beta 1
    • None
    • None
    • Low

    Description

      Gossiper.start needs to be integrated into the constructor. Currently you can have threads using the gossiper instance before start finishes (or even starts?), resulting in tracebacks like this:

      ERROR [GMFD:1] 2010-06-02 10:45:49,878 CassandraDaemon.java (line 78) Fatal exception in thread Thread[GMFD:1,5,main]
      java.lang.AssertionError
      at org.apache.cassandra.net.Header.<init>(Header.java:56)
      at org.apache.cassandra.net.Header.<init>(Header.java:74)
      at org.apache.cassandra.net.Message.<init>(Message.java:58)
      at org.apache.cassandra.gms.Gossiper.makeGossipDigestAckMessage(Gossiper.java:294)
      at org.apache.cassandra.gms.Gossiper$GossipDigestSynVerbHandler.doVerb(Gossiper.java:935)
      at org.apache.cassandra.net.MessageDeliveryTask.run(MessageDeliveryTask.java:40)
      at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
      at java.lang.Thread.run(Thread.java:619)
      ERROR [GMFD:2] 2010-06-02 10:45:49,880 CassandraDaemon.java (line 78) Fatal exception in thread Thread[GMFD:2,5,main]
      java.lang.AssertionError
      at org.apache.cassandra.net.Header.<init>(Header.java:56)
      at org.apache.cassandra.net.Header.<init>(Header.java:74)
      at org.apache.cassandra.net.Message.<init>(Message.java:58)
      at org.apache.cassandra.gms.Gossiper.makeGossipDigestAckMessage(Gossiper.java:294)
      at org.apache.cassandra.gms.Gossiper$GossipDigestSynVerbHandler.doVerb(Gossiper.java:935)
      at org.apache.cassandra.net.MessageDeliveryTask.run(MessageDeliveryTask.java:40)
      at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
      at java.lang.Thread.run(Thread.java:619)

      Attachments

        1. 0004-cassandra-0.6-1160.patch
          28 kB
          Matthew F. Dennis
        2. 0003-cassandra-0.6-1160.patch
          27 kB
          Matthew F. Dennis
        3. 0002-cassandra-0.6-1160.patch
          20 kB
          Matthew F. Dennis
        4. 0001-cassandra-0.6-1160.patch
          38 kB
          Matthew F. Dennis

        Issue Links

          Activity

            People

              mdennis Matthew F. Dennis
              jbellis Jonathan Ellis
              Matthew F. Dennis
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: