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

sending random data crashes thrift service

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Critical
    • Resolution: Fixed
    • 0.2
    • 0.3
    • Java - Library

    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

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

              Dates

                Created:
                Updated:
                Resolved: