View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0004544 | OXID eShop (all versions) | 4.02. Session handling | public | 2012-09-21 15:29 | 2014-02-18 16:47 |
Reporter | b.hasis | Assigned To | |||
Priority | urgent | Severity | crash | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Product Version | 4.7.0_5.0.0_beta2 | ||||
Target Version | 4.7.0_5.0.0_RC1 | Fixed in Version | 4.7.0_5.0.0_RC1 | ||
Summary | 0004544: with varnish basket get lost | ||||
Description | If i use varnish, I lost baskets by clicking thru the shop. | ||||
Steps To Reproduce | Start at Startpage and refresh. Add something to Basket. Go to a Category add something else to basket. Go back to the startpage. Nothing in Basket! Ironically if someone else go to the category, he got a filled basket, mine basket?! | ||||
Tags | No tags attached. | ||||
Theme | Both | ||||
Browser | All | ||||
PHP Version | any | ||||
Database Version | any | ||||
|
Reminder sent to: b.hasis Hello, Thank you for bug entrance. First I write about what bugs we fixed. Maybe you find that we already fixed your case. To ensure that every page is cached different, every page is cached by its URL address and environment key. Environment key could be found in shop cookie by name “env_key”. Basket and checkout process are not cached, so you always can see your goods by opening basket. We always had problems, when Reverse Proxy functionality is actually not turned on, but we still open shop with Varnish between. Shop never generate environment key and ESI tags, so Varnish cache everything wrongly and do not refresh information on actions it must, like adding to basket. To check for this problem, we usually look over cookies to see if “env_key” actually changes or open Shop over different port and look if ESI tags are formed correctly. We had an issue when shop was configured without theme option “iNewBasketItemMessage”, then environment was not changed on adding to basket. Other problem we had was that in some case ESI links was formed with parameter “force_sid”. To see ESI links you can open shop over different port then Varnish, it should delegate code with ESI tags (in newest version it will generate HTML if not found Reverse Proxy between). Or you can change config file and comment down “do_esi”: “set beresp.do_esi = true;”. Can you write a bit more about your case? What happens when you open basket after going to empty start page. Do basket has your goods. Is environment key formatted at all and does it change when you add something to basket. Do you see “force_sid” or “sid” parameters in links? Do widgets have different “Executed” time ? |
|
Hi, "We always had problems, when Reverse Proxy functionality is actually not turned on, but we still open shop with Varnish between." : Thats in my case the Setting, so if i turned it on, it seems to work all correctly 1. "Is environment key formatted at all and does it change when you add something to basket": They are no "env_key", like you said. 2."What happens when you open basket after going to empty start page.": I cant click on the basket icon, but entering basket by using "url/warenkorb" works, and all things in there are fine. 3."Do you see “force_sid” or “sid” parameters in links?" : Only by adding Item to Basket, by Navigation in the shop i dont see sids anytime/anywhere. 4."Do widgets have different “Executed” time ?" Startpage enter if allready cached: fast(~10ms). Adding Item / slow (200ms+). Back to Startpage, fast(~10ms again) Something new, maybe i post it in a separated bug report? If I have the setup with the varnish between, and NO client (browser) interacts for ~1-2 minutes and than i click on something, the browser says my connection get lost(no real http status code, even not in firebug, just "Aborted") , after i pressed "f5" 1-2-3 times, all works back normal. |
|
Reminder sent to: b.hasis Hello, Yes I think it would be clearer if you open new bug as those two consist different solutions. We had a meeting how should Reverse Proxy act, when its functionality is not turned on, but there is Reverse Proxy in between. Theoretically we could send not caching headers, but then it effects browsers, and other Proxies. So it might change third parties modules. That is one reason why decide not to change shop behavior if there is RP functionality turned off, but RP in between. This abort after minute is a very strange case. Have nothing similar like this. Maybe it is related with Varnish send_timeout parameter? How long does it take for browser to return aborted page ? Did you try to look what varnishlog outputs? |
|
Hi, "We had a meeting how should Reverse Proxy act, when its functionality is not turned on, but there is Reverse Proxy in between. Theoretically we could send not caching headers, but then it effects browsers, and other Proxies. So it might change third parties modules. That is one reason why decide not to change shop behavior if there is RP functionality turned off, but RP in between." Its ok for people who know it, but, please, please, please! announce that issue! Put it right to the "?" Icon by the checkbox and put it in every functioen descripten install guide and so on. Mark it RED. Its like a total suicide for your shop if you run into it! PS: maybe you can create a function thats detects if there is a varnish between, in that case the user cant deactivate that feature? "This abort after minute is a very strange case. Have nothing similar like this. Maybe it is related with Varnish send_timeout parameter? How long does it take for browser to return aborted page ? Did you try to look what varnishlog outputs? " I will test again and if i can reproduce it anyway, ill post a separated bug report. |
|
Reminder sent to: b.hasis Hello, I will talk once more with persons responsible for documentation about this possible issue with RP in between but no RP functionality in shop. In additional, with one of last task we add check if there is Varnish with our configuration in between. If so and RP functionality is not turned on, then shop announce not-caching headers so RP would not cache. Also we add two checks in admin RP caching part. One check will tell you if there is Varnish with our config between browser and admin. Another check is test button who gets shop home page and look if there is RP in between. So if you have Varnish with our configuration this bug will not reproduce no more. And if you have different configuration, then you got warning message in admin caching part. |