A new cue in 23.1: love song for a vampire.

Version 23 is like a rose. It smells so good but has its thorn.

We moved from 22.5 to 23.1 one of the so-called “Kennie’s elephant” (to be eaten byte after byte) in the cold night of 2nd December. In SaaS, it took 1.5 hours to upgrade this 50+ GB production database.

In such dark night, telemetry reported very good indicators in performance. These were table JOIN numbers before the upgrade, just to give you an idea.

and suddendly something new popped up, in the shadow of 23.1.

Like Van Helsing, I was carefully following the blood spilled in telemetry. First and foremost: new lock timeouts.  

This dark creature can make damage both as normal browser session or running in background and it is related to Codeunit 1311 Activities Mgt.

Comparing standard code between 23.0 and 23.1 there is yet a new vampire cue added to the standard Base Application silently (probably in another cold night, without a database of discrete dimensions to be tested with by whom implemented it). Finally I can give this creature a name: “S. Ord. – Reserved From Stock

And this vampire cue when it bites… it bites hard!

And blood is spilling everywhere.

In Long Running SQL Queries (RT0005) – remember that RefreshActivitiesCueData place a hard lock (UPDLOCK) on the Activities cue table -. Such queries might take quite a long time.

And Long Running AL Methods (RT0018). Sum up all the queries sent over with the calcsums and you have avg executions higher than 5 mins with hundred of thousands of sql reads and executes.

This was leading Activities Cue in Role Center to not displaying anything and child session (bounded to the page background task) timeout.

Like Van Helsing, I took a wooden stake and planted in the heart of the Activities Cue: I have removed them, they will be substitute by human custom ones.

CONCLUSION AND TAKEAWAYS

This is my love song for a vampire.

In all these years, I had a conflictual affection of love and hate with cues. They have been the primary source of performance problem when loading Role Center in Windows Client, and in Web Client too, until the advent of page background tasks a couple of years ago. The standard ones are good in a Cronus database or, better say, with baby tables. For big elephants are typically “no buono” but – hey – Role Center must be sexy.

This additional cue with 23.1 was really a good telemetry exercise to spot out back-end performance problems right after an upgrade. Hope you could join the Van Helsing telemetry fan club too. It is so exciting (for me, at least, a bit less for the customer).

Leave a comment

Blog at WordPress.com.

Up ↑