partition tables using date
[APKPM.git] / persistant_worker.pl
index 60b60b1..f601009 100755 (executable)
@@ -36,7 +36,7 @@ warn "variant: $variant max_processes: $max_processes\n";
 
 my $driver = Gearman::Driver->new(
        server   => 'localhost:4730',
-       interval => 15,
+       interval => 3,
        loglevel   => 'DEBUG',
        logfile    => "log/$variant.log",
 ) || die $!;
@@ -70,13 +70,13 @@ foreach my $ip ( keys %$poll ) {
 
        $driver->add_job({
                max_processes => $max_procs,
-               min_processes => 0,
+               min_processes => 1,
                name            => $method,
                worker          => $worker,
                methods    => [
                        {
                                decode => 'd_json',
-#                              encode => 'e_json',
+                               encode => 'e_json',
                                name   => $method,
                                body   => sub {
 
@@ -100,10 +100,10 @@ foreach my $ip ( keys %$poll ) {
 
                if ( $@ ) {
                        $redis->sadd("$variant.$ip.error" => $@);
-                       return "error: $@";
+                       return { error => $@ };
                } elsif ( ! $hash ) {
                        $redis->sadd("$variant.$ip.empty" => $port);
-                       return "empty";
+                       return { error => 'empty' };
                } else {
                        $redis->sadd("$variant.$ip.ok" => $port);
                }
@@ -117,7 +117,7 @@ foreach my $ip ( keys %$poll ) {
                        h => $hash,
                });
 
-               return "ok $username $ip $port"; # body end
+               return $hash; # body end
 
 # XXX -- worker body
                                },