Simple Sinatra app speed based failure?

I have a simple Sinatra based app:
  https://github.com/makhidkarun/ftl_tools

That calls some defaults if data is not provided:
  https://github.com/makhidkarun/ftl_tools/blob/master/lib/ftl_tools/crewgen.rb#L60-L64

This morning I noticed that one set of basic tests would randomly (one, both, neither) fail:
  https://github.com/makhidkarun/ftl_tools/blob/master/spec/unit/crewgen_spec.rb

At first I thought my RSpec-fu was weak, but using curl to test gave interesting results:
  https://github.com/makhidkarun/ftl_tools/blob/master/logs/speed_errors.txt

In the speed_errors.txt log, the end column is "Current Speed". When the speed is between 49K and 70K, the form returns what it's supposed to. However, when the speed is in excess of 300K, the form does not return properly, and the spec will either show a data failure, or a return code failure.

Thoughts?

Leam

What error code is returned? Is this with only a single request to that
endpoint or is the app potentially being overwhelmed with inbound requests?

···

On Thu, Jul 18, 2019 at 5:10 AM Leam Hall <leamhall@gmail.com> wrote:

I have a simple Sinatra based app:
        https://github.com/makhidkarun/ftl_tools

That calls some defaults if data is not provided:

https://github.com/makhidkarun/ftl_tools/blob/master/lib/ftl_tools/crewgen.rb#L60-L64

This morning I noticed that one set of basic tests would randomly (one,
both, neither) fail:

https://github.com/makhidkarun/ftl_tools/blob/master/spec/unit/crewgen_spec.rb

At first I thought my RSpec-fu was weak, but using curl to test gave
interesting results:

https://github.com/makhidkarun/ftl_tools/blob/master/logs/speed_errors.txt

In the speed_errors.txt log, the end column is "Current Speed". When the
speed is between 49K and 70K, the form returns what it's supposed to.
However, when the speed is in excess of 300K, the form does not return
properly, and the spec will either show a data failure, or a return code
failure.

Thoughts?

Leam

Unsubscribe: <mailto:ruby-talk-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt;

Chris, I'm the only one making requests, and that is via the command line and the up arrow. It would have to be pretty non-performant for that.

Here's an error listing:

https://github.com/makhidkarun/ftl_tools/blob/master/logs/speed_full_error.txt

I appreciate any insight you can provide!

Leam

···

On 7/18/19 7:18 AM, Chris Roerig wrote:

What error code is returned? Is this with only a single request to that endpoint or is the app potentially being overwhelmed with inbound requests?

On Thu, Jul 18, 2019 at 5:10 AM Leam Hall <leamhall@gmail.com > <mailto:leamhall@gmail.com>> wrote:

    I have a simple Sinatra based app:
    https://github.com/makhidkarun/ftl_tools

    That calls some defaults if data is not provided:
    https://github.com/makhidkarun/ftl_tools/blob/master/lib/ftl_tools/crewgen.rb#L60-L64

    This morning I noticed that one set of basic tests would randomly (one,
    both, neither) fail:
    https://github.com/makhidkarun/ftl_tools/blob/master/spec/unit/crewgen_spec.rb

    At first I thought my RSpec-fu was weak, but using curl to test gave
    interesting results:
    https://github.com/makhidkarun/ftl_tools/blob/master/logs/speed_errors.txt

    In the speed_errors.txt log, the end column is "Current Speed". When
    the
    speed is between 49K and 70K, the form returns what it's supposed to.
    However, when the speed is in excess of 300K, the form does not return
    properly, and the spec will either show a data failure, or a return
    code
    failure.

    Thoughts?

    Leam

    Unsubscribe: <mailto:ruby-talk-request@ruby-lang.org
    <mailto:ruby-talk-request@ruby-lang.org>?subject=unsubscribe>
    <http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt;

Unsubscribe: <mailto:ruby-talk-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt;

Also, the Sinatra console error. The first log was from the command line.:

https://github.com/makhidkarun/ftl_tools/blob/master/logs/speed_error_sinatra_console.txt

Thanks!

Leam

···

On 7/18/19 7:27 AM, Leam Hall wrote:

Chris, I'm the only one making requests, and that is via the command line and the up arrow. It would have to be pretty non-performant for that.

Here's an error listing:

https://github.com/makhidkarun/ftl_tools/blob/master/logs/speed_full_error.txt

I appreciate any insight you can provide!

Leam

On 7/18/19 7:18 AM, Chris Roerig wrote:

What error code is returned? Is this with only a single request to that endpoint or is the app potentially being overwhelmed with inbound requests?

On Thu, Jul 18, 2019 at 5:10 AM Leam Hall <leamhall@gmail.com >> <mailto:leamhall@gmail.com>> wrote:

I have a simple Sinatra based app:
https://github.com/makhidkarun/ftl_tools

That calls some defaults if data is not provided:

    https://github.com/makhidkarun/ftl_tools/blob/master/lib/ftl_tools/crewgen.rb#L60-L64

This morning I noticed that one set of basic tests would randomly \(one,
both, neither\) fail:

    https://github.com/makhidkarun/ftl_tools/blob/master/spec/unit/crewgen_spec.rb

At first I thought my RSpec\-fu was weak, but using curl to test gave
interesting results:

    https://github.com/makhidkarun/ftl_tools/blob/master/logs/speed_errors.txt

In the speed\_errors\.txt log, the end column is &quot;Current Speed&quot;\. When
the
speed is between 49K and 70K, the form returns what it&#39;s supposed to\.
However, when the speed is in excess of 300K, the form does not return
properly, and the spec will either show a data failure, or a return
code
failure\.

Thoughts?

Leam

Unsubscribe: &lt;mailto:ruby-talk-request@ruby-lang.org
&lt;mailto:ruby-talk-request@ruby-lang.org&gt;?subject=unsubscribe&gt;
&lt;http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt;

Unsubscribe: <mailto:ruby-talk-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt;

Perhaps I'm being thick, but I don't see where you are setting @person in a route at all?

Sorry, juggling 6 things at work right now, or I would have a deeper look.

···

-----Original Message-----
From: ruby-talk [mailto:ruby-talk-bounces@ruby-lang.org] On Behalf Of Leam Hall
Sent: 18 July 2019 12:30
To: Ruby users
Subject: Re: Simple Sinatra app speed based failure?

Also, the Sinatra console error. The first log was from the command line.:

https://github.com/makhidkarun/ftl_tools/blob/master/logs/speed_error_sinatra_console.txt

Thanks!

Leam

On 7/18/19 7:27 AM, Leam Hall wrote:

Chris, I'm the only one making requests, and that is via the command
line and the up arrow. It would have to be pretty non-performant for that.

Here's an error listing:

https://github.com/makhidkarun/ftl_tools/blob/master/logs/speed_full_error.txt

I appreciate any insight you can provide!

Leam

On 7/18/19 7:18 AM, Chris Roerig wrote:

What error code is returned? Is this with only a single request to
that endpoint or is the app potentially being overwhelmed with inbound
requests?

On Thu, Jul 18, 2019 at 5:10 AM Leam Hall <leamhall@gmail.com >> <mailto:leamhall@gmail.com>> wrote:

    I have a simple Sinatra based app:
    https://github.com/makhidkarun/ftl_tools

    That calls some defaults if data is not provided:

https://github.com/makhidkarun/ftl_tools/blob/master/lib/ftl_tools/crewgen.rb#L60-L64

    This morning I noticed that one set of basic tests would randomly
(one,
    both, neither) fail:

https://github.com/makhidkarun/ftl_tools/blob/master/spec/unit/crewgen_spec.rb

    At first I thought my RSpec-fu was weak, but using curl to test gave
    interesting results:

https://github.com/makhidkarun/ftl_tools/blob/master/logs/speed_errors.txt

    In the speed_errors.txt log, the end column is "Current Speed". When
    the
    speed is between 49K and 70K, the form returns what it's supposed to.
    However, when the speed is in excess of 300K, the form does not
return
    properly, and the spec will either show a data failure, or a return
    code
    failure.

    Thoughts?

    Leam

    Unsubscribe: <mailto:ruby-talk-request@ruby-lang.org
    <mailto:ruby-talk-request@ruby-lang.org>?subject=unsubscribe>
    <http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt;

Unsubscribe: <mailto:ruby-talk-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt;

Unsubscribe: <mailto:ruby-talk-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt;

Click here to view Company Information and Confidentiality Notice.<http://www.jameshall.co.uk/index.php/small-print/email-disclaimer&gt;

Please note that we have updated our privacy policy in line with new data protection regulations. Please refer to our website to view the ways in which we handle your data.

Hi.
When @ship.hull_size less than 200 there is no Medic on your ship, and on
view @crew['medic'] is nil

···

чт, 18 июл. 2019 г. в 14:10, Leam Hall <leamhall@gmail.com>:

I have a simple Sinatra based app:
        https://github.com/makhidkarun/ftl_tools

That calls some defaults if data is not provided:

https://github.com/makhidkarun/ftl_tools/blob/master/lib/ftl_tools/crewgen.rb#L60-L64

This morning I noticed that one set of basic tests would randomly (one,
both, neither) fail:

https://github.com/makhidkarun/ftl_tools/blob/master/spec/unit/crewgen_spec.rb

At first I thought my RSpec-fu was weak, but using curl to test gave
interesting results:

https://github.com/makhidkarun/ftl_tools/blob/master/logs/speed_errors.txt

In the speed_errors.txt log, the end column is "Current Speed". When the
speed is between 49K and 70K, the form returns what it's supposed to.
However, when the speed is in excess of 300K, the form does not return
properly, and the spec will either show a data failure, or a return code
failure.

Thoughts?

Leam

Unsubscribe: <mailto:ruby-talk-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt;

AH-HA!!! You are correct. I changed the math for the ship build and ran the code a bunch of times. Everything worked.

I need to deal with the issue better, but at least now I know where the issue is.

Thank you!

Leam

···

On 7/18/19 9:13 AM, h Kleiser wrote:

Hi.
When @ship.hull_size less than 200 there is no Medic on your ship, and on view @crew['medic'] is nil

чт, 18 июл. 2019 г. в 14:10, Leam Hall <leamhall@gmail.com <mailto:leamhall@gmail.com>>:

    I have a simple Sinatra based app:
    https://github.com/makhidkarun/ftl_tools

    That calls some defaults if data is not provided:
    https://github.com/makhidkarun/ftl_tools/blob/master/lib/ftl_tools/crewgen.rb#L60-L64

    This morning I noticed that one set of basic tests would randomly (one,
    both, neither) fail:
    https://github.com/makhidkarun/ftl_tools/blob/master/spec/unit/crewgen_spec.rb

    At first I thought my RSpec-fu was weak, but using curl to test gave
    interesting results:
    https://github.com/makhidkarun/ftl_tools/blob/master/logs/speed_errors.txt

    In the speed_errors.txt log, the end column is "Current Speed". When
    the
    speed is between 49K and 70K, the form returns what it's supposed to.
    However, when the speed is in excess of 300K, the form does not return
    properly, and the spec will either show a data failure, or a return
    code
    failure.

    Thoughts?

    Leam

    Unsubscribe: <mailto:ruby-talk-request@ruby-lang.org
    <mailto:ruby-talk-request@ruby-lang.org>?subject=unsubscribe>
    <http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt;

Unsubscribe: <mailto:ruby-talk-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt;