fix perf edge case with multiple large packages not just one, RT#26097
authorIvan Kohler <ivan@freeside.biz>
Tue, 7 Jan 2014 05:45:48 +0000 (21:45 -0800)
committerIvan Kohler <ivan@freeside.biz>
Tue, 7 Jan 2014 05:45:48 +0000 (21:45 -0800)
FS/FS/cust_main/Packages.pm

index 3c96fc7..9fdf22e 100644 (file)
@@ -333,6 +333,7 @@ sub sort_packages {
     return 0  if !$a_num_cust_svc && !$b_num_cust_svc;
     return -1 if  $a_num_cust_svc && !$b_num_cust_svc;
     return 1  if !$a_num_cust_svc &&  $b_num_cust_svc;
+    return 0 if $a_num_cust_svc + $b_num_cust_svc > 20; #for perf, just give up
     my @a_cust_svc = $a->cust_svc_unsorted;
     my @b_cust_svc = $b->cust_svc_unsorted;
     return 0  if !scalar(@a_cust_svc) && !scalar(@b_cust_svc);