Our Int system appears to have developed an issue with quotes around date parameters, in this case the #ProcessDate#. When cycles are running, many of these server jobs are failing with syntax errors that we have not experienced often.
I have about 400 server jobs that have the same bit of code in them for auditing purposes that has been running just fine for over a year, until recently. The original code looks like this:
Code: Select all
set ansi_nulls on ;
set ansi_warnings on ;
insert into #StgDatabaseName#.#SrcSchemaName#.ldr_cycle_status values
(#BatchNumber#, 'DS #TableName# Extract Started', getdate(), #ProcessDate#, #CompanyNumber#)
Code: Select all
`cat "${TmpStep1}"| sed -e "s/ProcessDate.*/ProcessDate=\"${ProcessDate}\"/" > "${TmpStep2}"`
We have been having continued issues with -14 errors (resource time-outs) and a change was suggested by our admins to fix this. The change was implemented and now every job that has the audit code above fails. The quotes are now gone from the date, which is considered an error coming into SQL Server. I then went through and hard coded single quotes around all references to the #ProcessDate# in the audit code, recompiled and cleaned up the environment. Upon rerunning, I get the same errors.
One of the error logs looks like this:
Code: Select all
Parse_FileSKeys_ADM_USER.23_ADM_USER.src_bin_ADM_USER: Executing SQL statement 'set ansi_nulls on ; set ansi_warnings on ;
insert into bsd_int_prep.dbo.ldr_cycle_status values (1167, 'DS ADM_USER Extract Started', getdate(), 2009-10-05 16:56:37.643, 23)
Our production box is running the same code as this one was before the 'improvements' and is not failing at all. I also do not believe the new driver has been installed on that server.
I would appreciate any input you may have and thanks in advance!