Tuesday, March 08, 2016

IBM DATA STUDIO DEBUGGER OUT OF SYNC WITH SOURCE

I struggled most of the morning with my IBM Data Studio 4.1 debugger being out of sync with my source as I stepped through it.

The answer seems to be that I was creating string variables that had newlines in them.

Example:
SET PPN_INSERT_STRING = 'INSERT INTO FEDICC.MIG_PARTY_PERSON_NAME (
                   PARTY_PERS_NM_ID,
                   PARTY_ID,
                   PERS_NM_TTL_CD,
                   PERS_NM_SUFX_CD,
                   PERS_NM_TYP_CD,
                   PARTY_PERS_NM_NM_LST,
                   PARTY_PERS_NM_NM_FST,
                   PARTY_PERS_NM_NM_MID,
                   PARTY_PERS_NM_NM_UPCS_SRCH,
                   PARTY_PERS_NM_NM_DISP_DRV,
                   PARTY_PERS_NM_NM_LST_UPCS_SRCH,
                   PARTY_PERS_NM_NM_FST_UPCS_SRCH,
                   PARTY_PERS_NM_NM_MID_UPCS_SRCH,
                   PARTY_PERS_NM_NM_LST_DUP_SRCH,
                   PARTY_PERS_NM_NM_FST_DUP_SRCH,
                   PARTY_PERS_NM_NM_MID_DUP_SRCH,
                   EXTRNL_SYS_ID_VAL_TXT,
                   PARTY_PERS_NM_EFF_DT,
                   PARTY_PERS_NM_END_DT,
                   CNCURNCY_ID,
                   AUDT_USER_CREA_ID,
                   AUDT_USER_CREA_DTM,
                   AUDT_USER_UPDT_ID,
                   AUDT_USER_UPDT_DTM,
                   DEL_IND) VALUES ';

I changed this to be all on one line, and the debugger is no synced with the source.
There must be some defect by which the debugger cannot properly handle statements like the one above.

This works: (Using screen shot since it will just paginate on the blog):


To achieve this, I used Notepad++ with a regular expression search, replacing \r\n with a space, and then replaceing * with a single space.

Happy hunting :)

Minimally Logged Operations in SQL Server

I'm posting this mostly so I can find it later :) The following article has a great table that defines when operations will be minimall...