John Kaster

Behind the Screen

Archive for the ‘QualityCentral’ Category

QC Login performance problems resolved

with 3 comments

QualityCentral has recently been having very slow logins. Fortunately, we just discovered the culprit and have resolved the performance problems through the use of an internally-developed test framework we’ve implemented for EDN systems to track stability and performance.

It was an embarrassingly simple mistake – we were missing an index on the USER_ID column in one of our tables. Adding the missing index brought the query time down from over 27 seconds (on average) to 31ms on average. Now, the QC windows and browser clients are finally logging in again like they used to.

As the users in the database grew, the server was performing a natural scan on the table, and naturally this was taking longer and longer to complete. Now that the index is in place, the query should now provide reasonably consistent performance even as the dataset grows.

My apologies for missing this performance improvement for so long. I’d like to thank Sriram Balasubramanian for noticing the performance problem when he was reviewing our EDN performance test suite for InterBase.

I’m just glad to finally put that annoying performance issue behind us!

Written by John Kaster

November 15, 2010 at 12:07 pm

Using DataSnap/REST with QualityCentral

leave a comment »

In case you haven’t seen it yet, I’ve started writing about the process of implementing the new QualityCentral middle tier in DataSnap/REST.

This first article is an extensive introduction to DataSnap/REST that provides step-by-step details on building, debugging, and deploying a DataSnap/REST ISAPI dll: You can read it at

The second DataSnap/REST article begins the discussion of developing the new QualityCentral middle-tier. It’s called “Connections with DataSnap” and can be found at

The new middle tier is already heavily using the routines from DbxUtils.pas. I’ll be discussing some of those routines at CodeRage 5 ( on Friday Oct 8th at 9am Pacific time. (A little over 9 hours from now).

Written by John Kaster

October 7, 2010 at 11:37 pm