Blog

ColdFusion 2021 Query of Queries Bug

September 9, 2022

There seems to be a potential bug in ColdFusion 2021 Query of Queries.

Today I ran into this error:

Index 5 out of bounds for length 5 null

The index bounds will change based on the number of columns in the query as explained below.

This error was being thrown in a very basic QoQ:

<cfquery name="qUser" dbtype="query">
SELECT	*
FROM	qUsers
WHERE	User_ID = <cfqueryparam value="#user_id#" cfsqltype="cf_sql_numeric">
</cfquery>

While Investigating the source for the original qUsers query I noticed two columns with the same name:

Looking a little deeper I found that the original qUsers query was being ordered via a QoQ prior to the QoQ throwing the error:

<cfquery name="qUsers" dbtype="query">
SELECT	  *
FROM	  qUsers
ORDER BY  payroll_name
</cfquery>

So essentially a query of a query of a query.

The problem appears to be that ColdFusion is case-sensitive and for some reason adds the ORDER BY column to the query resulting in a query that has two columns with the same name.

The solution was to change the ordering QoQ to match the case of the original qUsers query:

<cfquery name="qUsers" dbtype="query">
SELECT	  *
FROM	  qUsers
ORDER BY  PAYROLL_NAME
</cfquery>

0 Comments

Leave Your Comment

Your email address will not be published.


about me

An information technology professional with twenty three years experience in systems administration, computer programming, requirements gathering, customer service, and technical support.