X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=FS%2Fbin%2Ffreeside-cdrd;h=a3c67f919228017d8d750dc7224789d6367a816b;hp=2cf75f31c7966437df78a1ff01fc7760c857d6ee;hb=ac8410cdb67639afeb84c84e975fffadf3e6cce1;hpb=ca9154e5112d1f564c217fb958b3b979013b5967 diff --git a/FS/bin/freeside-cdrd b/FS/bin/freeside-cdrd index 2cf75f31c..a3c67f919 100644 --- a/FS/bin/freeside-cdrd +++ b/FS/bin/freeside-cdrd @@ -39,24 +39,27 @@ my $extra_sql = " AND optionvalue = '1' ". " AND ( susp IS NULL OR susp = 0)". " AND ( cancel IS NULL OR cancel = 0)". - " AND 0 < ( - SELECT COUNT(*) FROM svc_phone LEFT JOIN cust_svc USING (svcnum) + " AND EXISTS ( + SELECT 1 FROM svc_phone LEFT JOIN cust_svc USING (svcnum) WHERE cust_pkg.pkgnum = cust_svc.pkgnum - AND 0 < ( SELECT COUNT(*) FROM cdr - WHERE ( freesidestatus IS NULL OR freesidestatus = '' ) - AND ( charged_party = svc_phone.phonenum - OR charged_party = svc_phone.countrycode - || svc_phone.phonenum - OR src = svc_phone.phonenum - OR src = svc_phone.countrycode - || svc_phone.phonenum - ) - ) + AND EXISTS ( SELECT 1 FROM cdr + WHERE ( freesidestatus IS NULL OR freesidestatus = '' ) + AND ( charged_party = svc_phone.phonenum + OR charged_party = svc_phone.countrycode + || svc_phone.phonenum + OR src = svc_phone.phonenum + OR src = svc_phone.countrycode + || svc_phone.phonenum + ) + LIMIT 1 + ) + LIMIT 1 ) - AND 0 = ( - SELECT COUNT(*) FROM queue + AND NOT EXISTS ( + SELECT 1 FROM queue WHERE queue.job = 'FS::cust_main::queued_bill' AND queue.custnum = cust_pkg.custnum + LIMIT 1 ) "; @@ -108,7 +111,7 @@ while (1) { } myexit() if sigterm() || sigint(); - sleep 1 unless $found; + sleep 5 unless $found; } @@ -117,10 +120,10 @@ while (1) { sub _shouldrun { my $extra_sql = - ' AND 0 < ( SELECT COUNT(*) FROM cust_pkg - WHERE cust_pkg.pkgpart = part_pkg.pkgpart - AND ( cust_pkg.cancel IS NULL OR cust_pkg.cancel = 0 ) - ) + ' AND EXISTS ( SELECT 1 FROM cust_pkg + WHERE cust_pkg.pkgpart = part_pkg.pkgpart + AND ( cust_pkg.cancel IS NULL OR cust_pkg.cancel = 0 ) + ) '; my @part_pkg =