Uploaded image for project: 'Thrift'
  1. Thrift
  2. THRIFT-601

sending random data crashes thrift service

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: 0.2
    • Fix Version/s: 0.3
    • Component/s: Java - Library
    • Labels:

      Description

      Sending random data to a Java thrift service causes it to crash with extreme prejudice.

      dd if=/dev/urandom count=1 | nc $host 9160

      ... produces ...

      java.lang.OutOfMemoryError: Java heap space
      at org.apache.thrift.protocol.TBinaryProtocol.readStringBody(TBinaryProtocol.java:296)
      at org.apache.thrift.protocol.TBinaryProtocol.readMessageBegin(TBinaryProtocol.java:203)
      at org.apache.cassandra.service.Cassandra$Processor.process(Cassandra.java:615)
      at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:253)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
      at java.lang.Thread.run(Thread.java:636)

        Attachments

        1. t601-p2.patch
          1 kB
          David Reiss
        2. thrift-601.patch
          2 kB
          Esteve Fernandez
        3. thrift-601-v2.patch
          0.6 kB
          Bryan Duxbury

          Issue Links

            Activity

              People

              • Assignee:
                dreiss David Reiss
                Reporter:
                urandom Eric Evans
              • Votes:
                5 Vote for this issue
                Watchers:
                8 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: