Forum Discussion

JRahm's avatar
JRahm
Icon for Admin rankAdmin
Sep 22, 2005

Memory leak in these iRules?

We had a failure yesterday where all connections came to a halt until I failed over. We were at 5500 long-lived active connections, and b memory show indicated no more than 250M of memory used (we have 4G on our 6400). Yet we got this message in our log:

Sep 21 10:56:07 tmm tmm[25037]: 011e0002:4: sweeper_update: aggressive mode activated. (827847/973824 pages)

We hit the low water mark on the reaper, though the system didn't indicate this at all. I have a case opened, but I thought maybe someone here could check the rules for memory leak?


rule client_server_record {
   when LB_SELECTED {
   if { not (([IP::client_addr] eq "ip1") || ([IP::client_addr] eq "ip2")) } {
      log "Client [IP::client_addr] is on Server [LB::server addr]"
   }
}
}
rule pool1-iRule {
   when CLIENT_ACCEPTED {
   if { [active_members pool1] == 0 } {
      discard
      } else {
          use pool pool1
           if { not (([IP::client_addr] eq "ip1") || ([IP::client_addr] eq "ip2")) } {
              persist source_addr 28800
           }
      }
}
}

Both rules are applied to a vip that also has a single node snat pool associated to it. The persist table is slightly more than double the active connections usually, so it was approx 11000. Thanks for any insight into my rules.