[ 
https://issues.apache.org/jira/browse/THRIFT-2500?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13988314#comment-13988314
 ] 

ASF GitHub Bot commented on THRIFT-2500:
----------------------------------------

GitHub user apesternikov opened a pull request:

    https://github.com/apache/thrift/pull/117

    THRIFT-2500

    I'm sorry, I have merged several uncommited branches here, so you might 
want to review this one last.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/apesternikov/thrift junk_resilient_protos

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/thrift/pull/117.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #117
    
----
commit f2e7186ca8d63f407dba0c56ee51afd6405926ba
Author: Aleksey Pesternikov <a...@alekseys-mbp.att.net>
Date:   2014-04-22T12:48:14Z

    add _ to generated filename if it ends with _test.go

commit a6ed88196fbf4622a3b0261bbac0fe6b258bdd36
Author: Aleksey Pesternikov <a...@alekseys-mbp.att.net>
Date:   2014-04-22T14:19:13Z

    use tcxx instead of tr1 in test/cpp

commit d1848fa05f4baefc66eb405f4b1a8657bb2869bd
Author: Aleksey Pesternikov <ap@alekseys-macbook-pro.local>
Date:   2014-04-23T01:01:03Z

    Merge branch 'master' of https://github.com/apache/thrift into 
go_integration

commit 04d22fef228d3f868b32a296a38f99ff52ee2142
Author: Aleksey Pesternikov <ap@alekseys-macbook-pro.local>
Date:   2014-04-25T00:34:24Z

    additions:
    test for client/server with several protocol/transport/ssl combinations
    bin/testclient and bin/testserver
    debug_transport
    
    fixes:
    separate Listen() and AcceptLoop() instead of Serve() in SimpleServer
    if handler function returns any unknown exception, handler closes connection

commit ed88d57d977cffea9fac8f61143801f3097ef46c
Author: Aleksey Pesternikov <a...@alekseys-mbp.att.net>
Date:   2014-04-25T13:29:54Z

    Generate lowercase package name
    lowercased pkg name in thrift files
    underline() -> lowercase()

commit 498a910c6c6753a4b1e3633eb5c9c82be33e8c7b
Author: Aleksey Pesternikov <a...@alekseys-mbp.att.net>
Date:   2014-04-25T13:32:26Z

    Merge branch 'master' into go_test_service_name

commit 25792d7218a2c32ee3c2077f65ca7d0cea7f31f5
Author: Aleksey Pesternikov <a...@alekseys-mbp.att.net>
Date:   2014-04-22T12:48:14Z

    add _ to generated filename if it ends with _test.go

commit af994b415308a2e174d57a03675fc83d7cbd43d1
Author: Aleksey Pesternikov <ap@alekseys-macbook-pro.local>
Date:   2014-04-25T00:34:24Z

    additions:
    test for client/server with several protocol/transport/ssl combinations
    bin/testclient and bin/testserver
    debug_transport
    
    fixes:
    separate Listen() and AcceptLoop() instead of Serve() in SimpleServer
    if handler function returns any unknown exception, handler closes connection

commit f22a777a5d5b4d93a8d7981e7aadc2c63919518a
Author: Aleksey Pesternikov <a...@alekseys-mbp.att.net>
Date:   2014-04-25T13:44:08Z

    Merge branch 'go_integration' of github.com:apesternikov/thrift into 
go_integration

commit 49a33c8c80ea35f923ee9aa3577780fcf41fe840
Author: Aleksey Pesternikov <a...@alekseys-mbp.att.net>
Date:   2014-04-25T13:49:05Z

    Merge branch 'master' into test_cpp_on_mac

commit 81b402ec6301f6b132c9b346ad5481f55f0aff89
Author: Aleksey Pesternikov <a...@alekseys-mbp.att.net>
Date:   2014-04-25T13:56:56Z

    operator < for ThriftTest

commit cde312d940d12077274dd0ba677ca850b5b439a7
Author: Aleksey Pesternikov <a...@alekseys-mbp.att.net>
Date:   2014-04-25T14:12:58Z

    minor formatting

commit 0a693115c2c20a2a8375f3859ff7bed261e6c8da
Author: Aleksey Pesternikov <a...@alekseys-mbp.att.net>
Date:   2014-04-25T14:13:20Z

    Merge branch 'test_cpp_on_mac' into go_integration

commit e06b5d24e8b6d429723a3c77a58c6ce903e1366a
Author: Aleksey Pesternikov <ap@alekseys-macbook-pro.local>
Date:   2014-04-25T15:19:20Z

    Merge branch 'go_test_service_name' into go_integration

commit 42d577c9812a070060c773fcd0598e58e6d6ba61
Author: Aleksey Pesternikov <ap@alekseys-macbook-pro.local>
Date:   2014-04-25T15:39:57Z

    imported THRIFT-2491
    lowercase package names

commit 491ccf8b018c046c5ced72b1e19d9ac4ec48a6f5
Author: Aleksey Pesternikov <ap@alekseys-macbook-pro.local>
Date:   2014-04-25T15:51:53Z

    --noinsane flag for c++ TestClient. works with go server now for other 
default params

commit 78db3c9a3a5742818a5de6e57f2fe9aed84919e5
Author: Aleksey Pesternikov <ap@alekseys-macbook-pro.local>
Date:   2014-04-25T16:03:23Z

    license

commit d3bd0764f8a2a9a54fbb3a18cbde5f8ac683f83a
Author: Aleksey Pesternikov <ap@alekseys-macbook-pro.local>
Date:   2014-04-26T17:16:16Z

    stress test for go

commit 69bbf0e2b148cb1f48e24f46d181cc4d5dc35786
Author: Aleksey Pesternikov <a...@alekseys-mbp.att.net>
Date:   2014-05-02T15:45:15Z

    struct should always be a pointer to avoid copying of potentially 
size-unbounded structs

commit bfaa863955bb05ebcf37465998d6f7f69341fd95
Author: Aleksey Pesternikov <a...@alekseys-mbp.att.net>
Date:   2014-05-02T21:01:59Z

    Merge branch 'master' into go_integration
    
    Conflicts:
        lib/go/test/Makefile.am

commit 6a4959b07266facb3ab7ea5058ed180aa6bb6882
Author: Aleksey Pesternikov <a...@alekseys-mbp.att.net>
Date:   2014-05-02T21:02:51Z

    Merge branch 'master' into junk_resilient_protos

commit 2cbb79c609e18db946f854fc99e25b7f10c46623
Author: Aleksey Pesternikov <a...@alekseys-mbp.att.net>
Date:   2014-05-02T21:03:08Z

    Merge branch 'go_integration' into junk_resilient_protos

commit 1bb25c4a48845e112847ca8293402f0294d8f597
Author: Aleksey Pesternikov <a...@alekseys-mbp.att.net>
Date:   2014-05-02T21:40:59Z

    recover from panic in processor

commit 8d1427a2c3c183d499442dc1f0437292e6641ac3
Author: Aleksey Pesternikov <a...@alekseys-mbp.att.net>
Date:   2014-05-02T21:41:52Z

    some sanity checks in binary protocol

commit 666cc87a51f86ca5940225c36716bbad467c6e73
Author: Aleksey Pesternikov <a...@alekseys-mbp.att.net>
Date:   2014-05-02T21:53:59Z

    some sanity checks in compact protocol

----


> sending random data crashes thrift(golang) service
> --------------------------------------------------
>
>                 Key: THRIFT-2500
>                 URL: https://issues.apache.org/jira/browse/THRIFT-2500
>             Project: Thrift
>          Issue Type: Bug
>          Components: Go - Library
>    Affects Versions: 0.9.1
>            Reporter: LiMing
>            Priority: Critical
>              Labels: gsoc
>
> Sending random data to a go thrift service causes it to crash with extreme 
> prejudice.
> dd if=/dev/urandom count=1 | nc $host 9160
> ... produces ...
> throw: runtime: out of memory
> {code}
> goroutine 8 [running]:
> git.apache.org/thrift.git/lib/go/thrift.(*TFramedTransport).readFrame(0xf8400b1020,
>  0x7fb7cd49eb00, 0xf84007f000, 0x40894d)
>         
> /home/liming/go/src/nefs/thrift_util/go_test/src/git.apache.org/thrift.git/lib/go/thrift/framed_transport.go:118
>  +0x2bf
> git.apache.org/thrift.git/lib/go/thrift.(*TFramedTransport).Read(0xf8400b1020,
>  0xf8400b1072, 0x800000004, 0x26eb068, 0xf84005bc00, ...)
>         
> /home/liming/go/src/nefs/thrift_util/go_test/src/git.apache.org/thrift.git/lib/go/thrift/framed_transport.go:77
>  +0xe2
> io.ReadAtLeast(0xf840062810, 0xf8400b1020, 0xf8400b1072, 0x800000004, 0x4, 
> ...)
>         /usr/lib/go/src/pkg/io/io.go:254 +0xc3
> io.ReadFull(0xf840062810, 0xf8400b1020, 0xf8400b1072, 0x800000004, 
> 0xf8400b1020, ...)
>         /usr/lib/go/src/pkg/io/io.go:273 +0x69
> git.apache.org/thrift.git/lib/go/thrift.(*TBinaryProtocol).readAll(0xf8400b1060,
>  0xf8400b1072, 0x800000004, 0x41513c, 0xf8400b1040, ...)
>         
> /home/liming/go/src/nefs/thrift_util/go_test/src/git.apache.org/thrift.git/lib/go/thrift/binary_protocol.go:430
>  +0x5f
> git.apache.org/thrift.git/lib/go/thrift.(*TBinaryProtocol).ReadI32(0xf8400b1060,
>  0x0, 0x0, 0x0, 0x8, ...)
>         
> /home/liming/go/src/nefs/thrift_util/go_test/src/git.apache.org/thrift.git/lib/go/thrift/binary_protocol.go:379
>  +0x66
> git.apache.org/thrift.git/lib/go/thrift.(*TBinaryProtocol).ReadMessageBegin(0xf8400b1060,
>  0x0, 0x0, 0x0, 0x0, ...)
>         
> /home/liming/go/src/nefs/thrift_util/go_test/src/git.apache.org/thrift.git/lib/go/thrift/binary_protocol.go:222
>  +0x64
> tutorial.(*AddServiceProcessor).Process(0xf84005cb00, 0xf8400af000, 
> 0xf8400b1060, 0xf8400af000, 0xf8400b1080, ...)
>         
> /home/liming/go/src/nefs/thrift_util/go_test/src/tutorial/add_service.go:137 
> +0x5a
> thrift_util.(*TNefsServer).processRequest(0xf84005de80, 0xf84005f900, 
> 0xf84005bae0, 0x0, 0x0, ...)
>         
> /home/liming/go/src/nefs/thrift_util/go_test/src/thrift_util/nefs_server.go:212
>  +0x316
> thrift_util._func_001(0xf840074278, 0xf84006d8e0, 0x0, 0x0)
>         
> /home/liming/go/src/nefs/thrift_util/go_test/src/thrift_util/nefs_server.go:182
>  +0x37
> created by thrift_util.(*TNefsServer).Serve
>         
> /home/liming/go/src/nefs/thrift_util/go_test/src/thrift_util/nefs_server.go:186
>  +0x46e
> {code}



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to