Bug ID 468083: An LB_FAILED iRule that references an undefined value can cause Traffic Management Microkernel (TMM) failover.

Last Modified: Apr 10, 2019

Bug Tracker

Affected Product:  See more info
BIG-IP LTM(all modules)

Known Affected Versions:
11.3.0, 11.4.0, 11.4.1, 11.5.0, 11.5.1, 11.5.1 HF1, 11.5.1 HF10, 11.5.1 HF11, 11.5.1 HF2, 11.5.1 HF3, 11.5.1 HF4, 11.5.1 HF5, 11.5.1 HF6, 11.5.1 HF7, 11.5.1 HF8, 11.5.1 HF9, 11.5.2, 11.5.2 HF1, 11.5.3, 11.5.3 HF1, 11.5.3 HF2, 11.5.4, 11.5.4 HF1, 11.5.4 HF2, 11.5.4 HF3, 11.5.4 HF4, 11.5.5, 11.5.6, 11.5.7, 11.5.8, 11.5.9, 11.6.0, 11.6.0 HF1, 11.6.0 HF2, 11.6.0 HF3, 11.6.0 HF4, 11.6.0 HF5, 11.6.0 HF6, 11.6.0 HF7, 11.6.0 HF8, 11.6.1, 11.6.1 HF1, 11.6.1 HF2, 11.6.2, 11.6.2 HF1, 11.6.3, 11.6.3.1, 11.6.3.2, 11.6.3.3, 11.6.3.4, 11.6.4

Fixed In:
12.0.0

Opened: Jun 19, 2014
Severity: 3-Major
Related AskF5 Article:
K16433

Symptoms

If an LB_FAILED iRule calls HTTP::respond and references an undefined value, then Traffic Management Microkernel (TMM) can crash or failover. The following is in the ltm logfile showing the undefined value reference: Jun 19 11:10:04 bigip1 err tmm[9515]: 01220001:3: TCL error: /Common/rule_lbpickfailed <LB_FAILED> - can't read "value": no such variable while executing "log local0. "$value doesn't exist""

Impact

The TMM crashes.

Conditions

The following have to be configured in order for this to reproduce: 1. An http profile with web acceleration and http compression enabled: profiles { /Common/http { } /Common/optimized-acceleration { } /Common/tcp { } /Common/wan-optimized-compression { } } 2. An LB_FAILED iRule that calls HTTP::respond and references an undefined value: when LB_FAILED { HTTP::respond 200 content "content" log local0. "$value doesn't exist" }

Workaround

Fix iRule by not referencing an undefined value within LB_FAILED.

Fix Information

If an LB_FAILED iRule calls HTTP::respond and references an undefined value, then Traffic Management Microkernel (TMM) no longer crashes or fails over.

Behavior Change