[Dancer-users] status code needs to be an integer greater than or equal to 100...

Puneet Kishor punk.kish at gmail.com
Mon Jan 17 18:55:21 CET 2011


found the cause, but not the reason. Could someone explain please?

The following works

     my $dbh = DBI->connect(
         "dbi:SQLite:dbname=$db","","",
         {RaiseError => 1, AutoCommit => 1}
     ) or die $DBI::errstr;

but the following fails (note AutoCommit => 0)

     my $dbh = DBI->connect(
         "dbi:SQLite:dbname=$db","","",
         {RaiseError => 1, AutoCommit => 0}
     ) or die $DBI::errstr;


Puneet Kishor wrote:
> I ran the program on the command line, and then accessed it via curl, so
> here is the entire error stream. Quite unhelpful, as it appears to me.
> The error gets triggered as soon as I do a $sth->execute.
>
> Trace begun at
> /usr/local/lib/perl5/site_perl/5.12.1/Plack/Middleware/StackTrace.pm
> line 22
> Plack::Middleware::StackTrace::__ANON__('status code needs to be an
> integer greater than or equal to 100 at
> /usr/local/lib/perl5/site_perl/5.12.1/Plack/Middleware/StackTrace.pm
> line 27^J') called at /usr/local/lib/perl5/5.12.1/Carp.pm line 62
> Carp::croak('status code needs to be an integer greater than or equal to
> 100') called at
> /usr/local/lib/perl5/site_perl/5.12.1/Plack/Middleware/Lint.pm line 103
>
> Plack::Middleware::Lint::validate_res('Plack::Middleware::Lint=HASH(0x100891780)',
> 'ARRAY(0x10087cc38)') called at
> /usr/local/lib/perl5/site_perl/5.12.1/Plack/Middleware/Lint.pm line 25
>
> Plack::Middleware::Lint::call('Plack::Middleware::Lint=HASH(0x100891780)',
> 'HASH(0x100cbbb98)') called at
> /usr/local/lib/perl5/site_perl/5.12.1/Plack/Component.pm line 39
> Plack::Component::__ANON__('HASH(0x100cbbb98)') called at
> /usr/local/lib/perl5/site_perl/5.12.1/Plack/Middleware/StackTrace.pm
> line 27
> Plack::Middleware::StackTrace::__ANON__ at
> /usr/local/lib/perl5/site_perl/5.12.1/Try/Tiny.pm line 71
> eval {...} at /usr/local/lib/perl5/site_perl/5.12.1/Try/Tiny.pm line 67
> Try::Tiny::try('CODE(0x100d4f5d8)', 'Try::Tiny::Catch=REF(0x100cbbfb8)')
> called at
> /usr/local/lib/perl5/site_perl/5.12.1/Plack/Middleware/StackTrace.pm
> line 27
>
> Plack::Middleware::StackTrace::call('Plack::Middleware::StackTrace=HASH(0x100d4f458)',
> 'HASH(0x100cbbb98)') called at
> /usr/local/lib/perl5/site_perl/5.12.1/Plack/Component.pm line 39
> Plack::Component::__ANON__('HASH(0x100cbbb98)') called at
> /usr/local/lib/perl5/site_perl/5.12.1/Plack/Handler/CGI.pm line 37
>
> Plack::Handler::CGI::run('Plack::Handler::CGI=HASH(0x100cbbe80)',
> 'CODE(0x100d4f3f8)') called at
> /usr/local/lib/perl5/site_perl/5.12.1/Plack/Loader.pm line 83
> Plack::Loader::run('Plack::Loader=HASH(0x100880e10)',
> 'Plack::Handler::CGI=HASH(0x100cbbe80)') called at
> /usr/local/lib/perl5/site_perl/5.12.1/Plack/Runner.pm line 256
> Plack::Runner::run('Plack::Runner=HASH(0x10080fe30)') called at
> /usr/local/lib/perl5/site_perl/5.12.1/Plack/Runner.pm line 231
> Plack::Runner::run('Plack::Runner',
> '/Users/punkish/Sites/humanesettlements/humanesettlements.pl') called at
> /Users/punkish/Sites/humanesettlements/public/dispatch.cgi line 4
>
> Puneet Kishor wrote:
>> I am quite frustrated with Dancer's error reporting, perhaps the only
>> part of it that needs improvement, since the rest of Dancer is so
>> wonderful.
>>
>>
>> I am getting the dreaded, "status code needs to be an integer greater
>> than or equal to 100 at
>> /usr/local/lib/perl5/site_perl/5.12.1/Plack/Middleware/StackTrace.pm
>> line 27" message in my browser, all nicely and neatly formatted. I can't
>> for the life of me figure out what is triggering this, so the only
>> recourse I have is to comment my code completely and then uncomment
>> lines one by one. Any suggestions on how I can make this process more
>> scientific and quick?
>>
>> Besides this, the problem is that Dancer seems to report messages in
>> different ways depending on when the error is trapped. Sometimes, I get
>> this nicely formatted message, colors and all, in my browser. Sometimes,
>> I get just a plain text message in my browser. Sometimes, I get the
>> "Internal Server Error" and then I have to pore through the Apache logs.
>> This inconsistency makes for difficulty.
>>
>> Many thanks,
>>
>
>
>



-- 
Puneet Kishor


More information about the Dancer-users mailing list