More explicit error-reporting on search failure, to find problem reported by overnigh...
authorMike Taylor <mike@indexdata.com>
Tue, 18 Dec 2007 11:59:42 +0000 (11:59 +0000)
committerMike Taylor <mike@indexdata.com>
Tue, 18 Dec 2007 11:59:42 +0000 (11:59 +0000)
lib/ZOOM/IRSpy/Connection.pm
lib/ZOOM/IRSpy/Task/Search.pm

index 5ee0726..61aa856 100644 (file)
@@ -1,4 +1,4 @@
-# $Id: Connection.pm,v 1.18 2007-12-12 10:47:21 mike Exp $
+# $Id: Connection.pm,v 1.19 2007-12-18 11:59:42 mike Exp $
 
 package ZOOM::IRSpy::Connection;
 
@@ -47,7 +47,12 @@ sub create {
     $this->{tasks} = [];
 
     my $query = cql_target($id);
-    my $rs = $irspy->{conn}->search(new ZOOM::Query::CQL($query));
+    my $rs;
+    eval {
+       $rs = $irspy->{conn}->search(new ZOOM::Query::CQL($query));
+    }; if ($@) {
+       die "registry search for record '$id' had error: '$@'";
+    }
     my $n = $rs->size();
     $this->log("irspy", "query '$query' found $n record", $n==1 ? "" : "s");
     ### More than 1 hit is always an error and indicates duplicate
index 6c81e01..68397c0 100644 (file)
@@ -1,4 +1,4 @@
-# $Id: Search.pm,v 1.15 2007-05-01 16:30:42 mike Exp $
+# $Id: Search.pm,v 1.16 2007-12-18 11:59:42 mike Exp $
 
 package ZOOM::IRSpy::Task::Search;
 
@@ -66,7 +66,12 @@ sub run {
     #  APPLICATION'S RESPONSIBILITY to ensure that the callback
     #  invoked on success OR FAILURE makes arrangements for the set
     #  to be destroyed.
-    $this->{rs} = $conn->search($query);
+    eval {
+       $this->{rs} = $conn->search($query);
+    }; if ($@) {
+       die "remote search '$query' had error: '$@'";
+    }
+
     warn "no ZOOM-C level events queued by $this"
        if $conn->is_idle();