Forum Discussion
upgrade from 11.6 to 12.0 breaks persistence
This irule works in 11.6 but does not in version 12.0. The persistence is supposed to get set when the database is known. This occurs on the first request to the server. My understanding is that cooking gets set in the response to the client. Then the client will maintain that cookie until it expires. This logic has worked since version 9. The uri that it operates on looks like the following: forms/frmservlet?config=prod
A couple of tcpdumps show the cookie is set on version 11.6 and continues to be set on each subsequent http requests. On 12.0 the inb_cookie is shown on the initial http request but disappears on subsequent requests. Any idea on what is going on here?
The server also has a cookie profile with a cookie insert with a different name. One option I see that I have is to do away with the pool displacement section all together because only one database is now called on this server. Just let the cookie profile hand out the cookie and the default pool be called.
Thanks for any responses,
when HTTP_REQUEST { set database [ findstr [http_uri] "config=" 7 "&" ]; if { [HTTP::header "User-Agent" ] contains "Mac OS" } {
set firstthree [substr $database 0 3];
if { "$firstthree" equals "mac" or "$database" equals "" } {
return
}
else {
log local0. "firstthree $firstthree database $database"
set uri [HTTP::uri];
set query [HTTP::query]
set dirprog [HTTP::path ]
set end_query [ findstr $query, "&" 0 ];
set macconf "mac${database}";
set new_query "config=${macconf}${end_query}";
set new_uri "${dirprog}?${new_query}"
HTTP::redirect ${new_uri}
HTTP::uri $new_uri;
log local0. "new_query orig_query new_uri= $new_query $query $new_uri"
}
}
pool displacement
set poolname [findclass ${database} inb_pool_array "," ] log local0. "poolname = $poolname" if { $poolname != "" } { persist cookie insert inb_cookie pool $poolname } }
8 Replies
- Vijay_E
Cirrus
12.1 is the Long Term Support (LTS) code for F5. I would recommend using it if possible as this can be a bug. However, I haven't looked at your iRule and could be wrong. Were you able to diff the configuration before and after the code upgrade ? If there is no difference, definitely move to 12.1 before troubleshooting further.
- James_Price
Nimbostratus
upgraded to 12.1 hf 1. It did not fix the problem. I actually removed the irule all together and still had the problem with persistence. So i don't think its the irule. I've also tried oneconnect and checked the time on the unit. I've opened a case with f5 so hopefuly there will be an answer in the future. Thanks for any help.
- ekaleido
Cirrus
Go into your cookie persistence profile and DISABLE the HTTPonly attribute. This became enabled by default in 12.0 and has been a thorn in my side in the past.
- James_Price
Nimbostratus
I'll give the httponly attribute a shot but i have to wait for a downtime to test. It maybe a couple of weeks before I can find out for sure. Thanks
- James_Price
Nimbostratus
Further analysis of the ltm log file showed that the servers members were constantly going up and down. I switched the monitor from http to gateway_icmp and the problem went away. Something strange about the http monitor. The origional problem of persistence is not a problem in seems to be with the monitor.
- ekaleido_26616
Cirrocumulus
Go into your cookie persistence profile and DISABLE the HTTPonly attribute. This became enabled by default in 12.0 and has been a thorn in my side in the past.
- James_Price
Nimbostratus
I'll give the httponly attribute a shot but i have to wait for a downtime to test. It maybe a couple of weeks before I can find out for sure. Thanks
- James_Price
Nimbostratus
Further analysis of the ltm log file showed that the servers members were constantly going up and down. I switched the monitor from http to gateway_icmp and the problem went away. Something strange about the http monitor. The origional problem of persistence is not a problem in seems to be with the monitor.
Help guide the future of your DevCentral Community!
What tools do you use to collaborate? (1min - anonymous)Recent Discussions
Related Content
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com