Using Browser "Back Button" causes err_cache_miss

We are in the process of upgrading to the latest LTS SuiteCRM (7.10.16). Thanks to anyone (Pgr specifically) who has helped on any past issues, most of them are resolved.

One of my last big issues is that when viewing records on certain modules (Mostly Tasks, Notes, Not so much on Contacts, Accounts), If I try to use my browser’s back button (Chrome, latest version but have the same issue on Firefox or Safari), the page crashes and get an err saying “err_cache_miss”. Now I’m assuming this has something to do with caching, but I don’t get any errors in my logs. I would think it’s a browser issue if it weren’t happening on all browsers and I hadn’t seen an issue like this before in the forums. If anyone has any ideas on what might cause this, and places to check it’d be appreciated.

Thanks all!

Can you reproduce this on the live demo?

https://demo.suiteondemand.com (user:will, pass: will)

I tried the demo and that issue is not present there. I’m guessing some sort of php or nginx caching issue then? If it was solely a browser issue I’d imagine there issue would be able to be replicated on the demo.

Yeah, you should try to check any caching settings. Sometimes just clearing the cache with some Repair would work.

You can also safely delete “cache/themes/” (but not the entire “cache/” folder)

I did try that but to no avail. I was reading and I suspect it might be a php Post vs. Get issue. A lot of times Posting can cause caching issues and it seems every time I am looking at a task/note, when I click back the access logs show a Post command firing for index.php. Don’t know if that’s the true issue or just a coincidence but I’ll post if I find a true solution or any other info.

The only other Error I’m getting which could possibly be related is “Unable to load custom logic file: include/SugarSearchEngine/SugarSearchEngineQueueManager.php” but it doesn’t only seem to fire this error when going back and seems to run this error every other minute.

After almost 10000 posts in these Forums, I can tell you your issue is new to me. It is quite unusual, and SuiteCRM has hundreds of thousands of installations out there.

So I would definitely try a new server, a different stack, just change the general characteristics of the web serving process to make the problem magically go away, in the same way as it mysteriously appeared in the first place…

HI

i have the same problem as you.

You are not alone in this !

I don’t know what’s causing it though…

Keep us posted if you find the solution

have a great day

multicrm

1 Like

@multicrm are you also using 7.10.16?

@both of you: which PHP versions are you running? Are they within this matrix?

https://docs.suitecrm.com/admin/compatibility-matrix/

I am currently upgrading our version 7.7.3 to 7.10.16. The 7.7.3 version is using a CentOS LAMP stack and mine is using a Ubuntu LEMP stack. Both versions have the issue present so it could be possible that whoever worked on it before me created the bug and considering I’m using the same html files and upgrading those, the problem comes with. I tried to do a fresh install with no new database, just 7.10.16 fresh install. Still the same issue. The old version’s LAMP uses php 5.6 but mine uses 7.3. The issue only manifests itself with POST actions after doing a performing a search in certain modules (Tasks is a consistent one), viewing a record, and then going back to the search listview. Anytime POST is used while going back, I receive the page load error err_cache_miss

I’m using suitecrm version 7.11.3 and the php version is 7.0.33

i’m also using the Lamp stack on CentOS

CEntOS uses SELinux security, right?

I wonder if that might be the reason. Maybe it is some unexpected interaction with that.

But @sfdan you say you’re also getting this with Ubuntu? Using SELinux there, by any chance?

Just an update: I was in fact able to reproduce this on the demo. The way to reproduce:

  1. Go to any module
  2. Search with any filter (for mine I chose contact and I chose to search for one of the demo contact’s last names)
  3. Choose said contact to see their detail view
  4. Go back

Does not happen if you:
Choose Steps 1,2, and 3.
4. Go to any other module
5. Go back to your contact module (your list view based on your earlier filter search will still be there, though that is dependent on your configuration settings)

I guess my point here is it is counter-intuitive to allow a user to search for a specific record, and not go back to your search results, but to let them go to a different page, and then still have their search result open when they go back to the original module. It would be like if you couldn’t use the back button after google searching a website and going to the website, but if you typed in google.com, it would still have your prior search pulled up. I still believe it is due to the POST statement being used when filtering results, whereas a GET statement doesn’t have this same issue.

I was able to reproduce with your steps! Good find.

Note that if you press Back a second time, it works correctly.

Can you please open a new issue on GitHub with this? Thanks for reporting.

1 Like

Done! Thanks for the verification!

Thanks! Here is the link for future reference:

https://github.com/salesagility/SuiteCRM/issues/7321

I have received ERR_CACHE_MISS error and solved it by clearing Google Chrome Cache.

Follow Instruction Here: Fix ERR_CACHE_MISS

This might be a specific solution for you but for me I actually had to change search types from “post” to “get.” Clearing cache was not the solution for me. My github issue I posted earlier has a fix proposed.

See here for details: https://github.com/salesagility/SuiteCRM/issues/7321

Same problem here, check the image on link bellow how to reproduce the problem.
When you go further than the first page and try to go back an error occurs.

Back button problem

What would happen if I deleted the entire /cache/ directory? I tried it, but everything seems to be working fine!

Maybe you just got lucky :wink:

That is a bit outdated, it’s for the old SugarCRM CE, but it partially applies.