Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 21.3.8
    • Fix Version/s: 21.3.8.1
    • Component/s: ssl
    • Labels:
      None

      Description

      I have some tests in Ranch that get stuck when trying to send data using an ssl socket:

      https://builds.ninenines.eu/logs/ranch/121/archlinux/ct_run.ct_ranch@archlinux0.2019-05-07_09.30.18/ninenines.ranch.sendfile_SUITE.logs/run.2019-05-07_09.30.53/suite.log.html

      These tests send a 20MB file containing random data, emulating the file:sendfile function with normal sends.

      What I can see from an initial look is that:

      • The test itself gets stuck when trying to send via ssl:send -> tls_sender:send_data
      • The tls_sender process gets stuck with the following stacktrace:

      [{prim_inet,send_recv_reply,2,[]},
       {tls_sender,send_application_data,4,
           [{file,"tls_sender.erl"},{line,432}]},
       {gen_statem,call_state_function,5,
           [{file,"gen_statem.erl"},{line,1586}]},
       {gen_statem,loop_event_state_function,6,
           [{file,"gen_statem.erl"},{line,967}]},
       {proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,249}]}]
      

      I can see this issue on Arch Linux (local and server), Ubuntu and macOS at the moment, so it's probably not platform-specific.

      There was no such problems with OTP-21.3.7, for example: https://builds.ninenines.eu/logs/ranch/120/archlinux/

      To reproduce you can do the following:

      $ git clone https://github.com/ninenines/ranch
      $ cd ranch
      $ make ct-sendfile t=ssl:filename ERLANG_OTP=OTP-21.3.8
      

      This will build OTP-21.3.8. If you already have it in the path don't include the ERLANG_OTP variable.

        Activity

        Hide
        ingela Ingela Anderton Andin added a comment -

        Could you try this branch from my gitrepo ingela/ssl/flow-ctrl-fix ?

        Show
        ingela Ingela Anderton Andin added a comment - Could you try this branch from my gitrepo ingela/ssl/flow-ctrl-fix ?
        Hide
        essen essen added a comment -

        That branch seems to match maint and OTP-21.3.8 exactly? https://github.com/erlang/otp/compare/maint...IngelaAndin:ingela/ssl/flow-ctrl-fix

        I tested anyway and yes I do have the same issue.

        Show
        essen essen added a comment - That branch seems to match maint and OTP-21.3.8 exactly? https://github.com/erlang/otp/compare/maint...IngelaAndin:ingela/ssl/flow-ctrl-fix I tested anyway and yes I do have the same issue.
        Hide
        ingela Ingela Anderton Andin added a comment - - edited

        Sorry forgot to commit, please try again. (force pushed)

        Show
        ingela Ingela Anderton Andin added a comment - - edited Sorry forgot to commit, please try again. (force pushed)
        Hide
        ingela Ingela Anderton Andin added a comment -

        Seems the patch for ERL-934 was premature it will be reverted from OTP-22 and we will make a new solution.

        Show
        ingela Ingela Anderton Andin added a comment - Seems the patch for ERL-934 was premature it will be reverted from OTP-22 and we will make a new solution.
        Show
        ingela Ingela Anderton Andin added a comment - See https://github.com/erlang/otp/pull/2224

          People

          • Assignee:
            otp_team_ps Team PS
            Reporter:
            essen essen
          • Votes:
            1 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development