From: Mike Taylor Date: Tue, 13 Mar 2007 16:12:38 +0000 (+0000) Subject: Remove fatuous attempt to destroy old result-sets. X-Git-Tag: CPAN-v1.02~54^2~484 X-Git-Url: http://git.indexdata.com/?p=irspy-moved-to-github.git;a=commitdiff_plain;h=c06d57a772adc94967666057c610286cbd1b16b1 Remove fatuous attempt to destroy old result-sets. Add comment on application's responsibilities. --- diff --git a/lib/ZOOM/IRSpy/Task/Search.pm b/lib/ZOOM/IRSpy/Task/Search.pm index 91af576..da0fc29 100644 --- a/lib/ZOOM/IRSpy/Task/Search.pm +++ b/lib/ZOOM/IRSpy/Task/Search.pm @@ -1,4 +1,4 @@ -# $Id: Search.pm,v 1.11 2007-03-09 08:57:34 mike Exp $ +# $Id: Search.pm,v 1.12 2007-03-13 16:12:38 mike Exp $ package ZOOM::IRSpy::Task::Search; @@ -44,7 +44,14 @@ sub run { my $query = $this->{query}; $this->irspy()->log("irspy_task", $conn->option("host"), " searching for '$query'"); - $this->{rs}->destroy() if defined $this->{rs}; + die "task $this has resultset?!" if defined $this->{rs}; + + ### NOTE WELL that when this task runs, it creates a result-set + # object which MUST BE DESTROYED in order to prevent large-scale + # memory leakage. So when creating a Task::Search, it is the + # APPLICATION'S RESPONSIBILITY to ensure that the callback + # invoked on success makes arrangements for the set to be + # destroyed. $this->{rs} = $conn->search_pqf($query); warn "no ZOOM-C level events queued by $this" if $conn->is_idle();