Spinning beach balls

I am just curious, thinking out loud, having a convo with myself.

We have a solution that supports about 30 users, we are connected to a local network. Users often complain about spinning beach balls. Sometimes our system is fast and sometimes a random user will have a slow solution. Besides the “please restart” What else could I be doing to help them out?

It's not a glamorous solution, but a few things:

  1. Review existing logs like stats and topcallstats. Inevitably your first question will be how, and that likely involves just reading and understanding the documentation to get what the columns represent and then finding slow calls and looking for patterns. Then work on deciphering the cryptic operation names and associating them with DB/user activity.

  2. Add logging to your code, tracking runtime for various scripts and navigation actions. Ask users for input on what is feeling slow to help you narrow down where to start adding logging, if appropriate. Unfortunately you can't easily log things like how long a portal takes to load, or slow scrolling of a list view, but there are many things you can log like navigation, script runtime, commit speed etc.

  3. Look at your server resource usage and correlate with user activity. Check server script and backup schedules, etc.

Perf tuning is an ongoing practice, in my experience, and rarely just a quick fix or training issue.

1 Like

Check their network settings. Especially if they have both ethernet and wifi. It's best if the choose one and turn the other off.

1 Like

Do you have unstored calculations in some fields ? If so, this is the best way to get the beach balls.

MacOS or Windows?

You could figure it out if you log what is happening.
e.g. does it happen while a sort, when going to a specific layout or while a script runs?

It could be that some operation needs to download 10000 records to calculate a sum field and the user waits for it.