As Deb suggested it would make sense to use source address persistence as a fallback method. If you're still seeing issues, then I'd still suggest using the same troubleshooting steps:
To troubleshoot non-cookie persistence issues, you can check the persistence records via the GUI under Overview >> Statistics >> Persistence Records or via the CLI (using: watch -n1 'b persist all show all').
You can add logging to the iRule as well to get a better idea of what's happening:
when HTTP_REQUEST {
log local0. "[IP::client_addr]:[TCP::port]: Request to [HTTP::host][HTTP::uri] had Auth header value: \
[HTTP::header value "Authorization"], with persistence record: [persist lookup uie [HTTP::header value "Authorization"]]"
if {[string length [HTTP::header value "Authorization"]]}{
persist uie [HTTP::header value "Authorization"]
}
}
Aaron