Did I understood correctly?
You have Web1 and Web2 that are dispatcher with sticky connections.
On top of Web1|2 you have an additional load balancer.
If so most probably your load balancer is not knowing anything about sticky connections as it's dispatcher specific and so therefore it redirects you where he wants.
You should have to configure the LB to stick as well.
Ok, yes you got it right, we have another load balancer as well. But that one is configured to stick as well.
Are you saying that the PSC works alongside the sticky connection? I mean, if the user is connected to one PUB via sticky connetion, then the dispatcher should fire off the PSC request on the same PUB?
If that's the case I need to re-investigate the LB. Have you tried PSC in a similar set-up? Well or at least where sticky conn on the dispatcher was required?
Try investigating (maybe network level) if actually you are always hitting the same dispatcher and publish.
If so I would check if all the headers, cookies, authentications part, ... are kept intact along all the hops.
What dispatcher version are you using? I believe there was a bug in older versions where PSC didn't respect sticky connections.
Hm, I don't have access to the servers, but I know we're running apache 2.2.21.
That's the Apache version. Check the Dispatcher version.
Yeah I know. Thought the Apache version could give you an indication to what dispatcher is installed.
I need to wait for our server guys to tell me the dispatcher version.
I am facing trouble to find the dispatcher version. Do you know command with which I can determine the dispatcher version?
From the files and libraries name it is hard to determine and I am not sure which installation and which version was used to install dispatcher.
httpd -V command returns following
Server version: Apache/2.2.21 (Unix)
Server built: Nov 29 2011 12:24:52
Server's Module Magic Number: 20051115:30
Server loaded: APR 1.4.5, APR-Util 1.3.12
Compiled using: APR 1.4.5, APR-Util 1.3.12
Server MPM: Prefork
forked: yes (variable process count)
Server compiled with....
-D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
In Unix, the best practice is to create a symlink exactly for this reason - you should be able to look at mod_dispatcher.so and see the symlink target.
But you can also find out the version from the Apache and Dispatcher log files.
Look in the dispatcher.log file for a line like this:
[Fri Jan 25 12:01:09 2013] [I] [69444(140735237656960)] Dispatcher initializing (build 4.1.2)
Or look for a line like this in error_log:
[Wed Feb 06 08:48:20 2013] [notice] Apache/2.2.22 (Unix) DAV/2 Communique/4.1.2 mod_ssl/2.2.22 OpenSSL/0.9.8r configured -- resuming normal operations
We are running dispatcher version 4.1.0, is this the version with the issue.
As far as I know, this issue was fixed in 4.1.1, so try upgrading.
This appears to be fixed by Disp-318: Dispatcher: Permission Sensitive Caching not respecting Sticky Sessions, which from what I can tell was included in 4.1.1