[freeside-commits] freeside/FS/bin freeside-torrus-srvderive, 1.22, 1.23
Ivan,,,
ivan at wavetail.420.am
Sun Feb 27 13:31:55 PST 2011
Update of /home/cvs/cvsroot/freeside/FS/bin
In directory wavetail.420.am:/tmp/cvs-serv2057/FS/bin
Modified Files:
freeside-torrus-srvderive
Log Message:
add start of torrus srvderive daemon, RT#10574
Index: freeside-torrus-srvderive
===================================================================
RCS file: /home/cvs/cvsroot/freeside/FS/bin/freeside-torrus-srvderive,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -w -d -r1.22 -r1.23
--- freeside-torrus-srvderive 27 Feb 2011 20:54:11 -0000 1.22
+++ freeside-torrus-srvderive 27 Feb 2011 21:31:53 -0000 1.23
@@ -51,10 +51,14 @@
AND srvexport.srv_date = other.srv_date
AND ABS( $_date - $other_date ) <= 60
)
+";
+
+my $orderlimit = "
ORDER BY srv_date, srv_time
LIMIT 100
";
+
while (1) {
my $found = 0;
@@ -63,6 +67,24 @@
my $serviceid = $torrus_srvderive->serviceid;
+ my @serviceids = $torrus_srvderive->component_serviceids;
+
+ my @in = ();
+ for my $dir ('_IN', '_OUT') {
+ push @in, map dbh->quote("$_$dir"), @serviceids;
+ }
+ my $in = join(',', @in);
+
+ my $ssql = "
+ $sql AND EXISTS (
+ SELECT 1 FROM srvexport AS other
+ WHERE other.serviceid IN ($in)
+ AND srvexport.srv_date = other.srv_date
+ AND ABS( $_date - $other_date ) <= 60
+ )
+ $orderlimit
+ ";
+
warn $sql if $DEBUG > 2;
my $sth = dbh->prepare($sql) or die $DBI::errstr; #better recovery?
$sth->execute($serviceid, $serviceid) or die $sth->errstr;
@@ -79,8 +101,6 @@
if $DEBUG;
$found++;
- my @serviceids = $torrus_srvderive->component_serviceids;
-
for my $dir ('_IN', '_OUT') {
my $sin = join(',', map dbh->quote("$_$dir"), @serviceids);
More information about the freeside-commits
mailing list