DB Schema fails with MQMEM is not a table for alternate schema system
search cancel

DB Schema fails with MQMEM is not a table for alternate schema system

book

Article ID: 406390

calendar_today

Updated On:

Products

CA Automic Workload Automation - Automation Engine CA Automic One Automation

Issue/Introduction

When running the database load utility (ucybdbld) on a system with an alternate MQ schema database, the following error shows in the db load log after it fails:

20250701/175457.295 - U00038042 

ALTER TABLE MQMEM ADD MQMEM_AH_Idnr int NULL

20250701/175457.295 - U00029108 UCUDB: SQL_ERROR    Database handles  DB-HENV: a496ec10  DB-HDBC: 860da600
20250701/175457.295 - U00003591 UCUDB - DB error info: OPC: 'SQLExecDirect' Return code: 'ERROR'
20250701/175457.295 - U00003592 UCUDB - Status: '42000' Native error: '4909' Msg: 'Cannot alter 'MQMEM' because it is not a table.'
20250701/175457.295 - U00003594 UCUDB Ret: '3590' opcode: 'EXEC' SQL Stmnt: '

ALTER TABLE MQMEM ADD MQMEM_AH_Idnr int NULL
'
20250701/175457.295 - U00003590 UCUDB - DB error: 'SQLExecDirect', 'ERROR   ', '42000', 'Cannot alter 'MQMEM' because it is not a table.'
20250701/175457.295 - U00038089 Error: Problem during execution of SQL command: 
'

ALTER TABLE MQMEM ADD MQMEM_AH_Idnr int NULL
'
20250701/175457.295 - U00003590 UCUDB - DB error: 'SQLExecDirect', 'ERROR   ', '42000', 'Cannot alter 'MQMEM' because it is not a table.'
20250701/175457.295 - U00003590 UCUDB - DB error: 'SQLExecDirect', 'ERROR   ', '42000', 'Cannot alter 'MQMEM' because it is not a table.'

Environment

DB: SQL Server
AE Version: Any
DB setup: Alternate MQ schema

Cause

Missing ini configuration setting

Resolution

Be sure that the [MQDB] section of the ucybdbld.ini has a sqlDriverConnect set:

[MQDB]

;sqlDriverConnect: Connection String for the database which holds the Message Queue Tables.
;Same format as the connection string (SQLDRIVERCONNECT=) in ODBC Section but applicable for MSSQL Databases only.
;For database software from other vendors it does not make sense to separate the MQ tables into a dedicated database.
;
;sqlDriverConnect=ODBCVAR=SNNNNNRN,DSN=UC4;UID=uc4;PWD=???
;sqlDriverConnect=ODBCVAR=NNNNNNRN,DSN=AUTOMIC;UID=AUTOMIC;PWD=???;Mars_Connection=Yes

by removing the semi-colon to have something like:

[MQDB]

;sqlDriverConnect: Connection String for the database which holds the Message Queue Tables.
;Same format as the connection string (SQLDRIVERCONNECT=) in ODBC Section but applicable for MSSQL Databases only.
;For database software from other vendors it does not make sense to separate the MQ tables into a dedicated database.
;
;sqlDriverConnect=ODBCVAR=SNNNNNRN,DSN=UC4;UID=uc4;PWD=???
sqlDriverConnect=ODBCVAR=NNNNNNRN,DSN=AUTOMIC;UID=AUTOMIC;PWD=???;Mars_Connection=Yes