I maintain sites that use email validation services through a http api. I
use the Mojolicious delay non-blocking code. In the last day or so, I have
had my delay processes hanging resulting in 502 errors (hypnotoad reverse
proxy with nginx) and at time the http service returning numerous blank
records. I blamed them at first, but when I switched to non-blocking code,
it worked fine. I boiled down my code to a command line program:
Mojo::IOLoop::Delay->new->steps(
sub {
my $delay = shift;
$ua->get( $bv . $_ => $delay->begin ) for @emails;
},
sub {
my $delay = shift;
for my $tx ( @_ ) {
my $res = $tx->res->json;
say Dumper $res;
}
}
)->wait;
At times it works great, and at other times I get errors:
Segmentation fault (core dumped)
and
*** Error in `perl': double free or corruption (out): 0x00007f9c40000910 ***
Aborted (core dumped)
Some of you may know exactly what the problem is, but I can only guess. Is
this something to do with Perl itself? For a workstation and server I use
Ubuntu 14.04 and it is happening on both. I update as updates happen. I
noticed in the apt log that libc6, libc6-dev updated a few days back. Since
I use perlbrew, do I need to recompile my perl after certain packages are
updated? Currentlty, I am using the most up-to-date Mojolicious. I read the
changes before updating and test out on my workstation first, but I have
not had a Perl problem before and I am not sure I am managing things
correctly.
Thanks for any advice,
Scott K.
--
You received this message because you are subscribed to the Google Groups
"Mojolicious" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/mojolicious.
For more options, visit https://groups.google.com/d/optout.