Solved

Suppress database messages in task

  • 3 December 2021
  • 4 replies
  • 51 views

Userlevel 3
Badge +10

The manual mentions a message location of “none (suppress)” to suppress database messages. What is not clear is how exactly this can be done.

I have a ‘suppress’ message at the end of a task template. The task is there to restore a backup of our test application to its database. Despite the ‘suppress’ message there are still several popups in the application with messages from the restore steps. How do I approach this?

icon

Best answer by Erwin Ekkel 6 December 2021, 10:16

View original

4 replies

Userlevel 5
Badge +9

Can you post some screenshots of the messages you are getting? And can you show the part of the code that uses the suppressed message in the template? 

 

Userlevel 3
Badge +10

Hi Erwin,

Sure here goes:

These are just one set. The backup file that is being restored can contain up to 120 log backups. A log backup is written to file every minute and this goes on for 2 hours when a new full backup is written to a new backup file. This means there can be a very large amount of messages to be okayed.

The message I’ve created to suppress these SQL Server messages follows a list of restore database / restore log / alter database operations in the task and is called with the following code:

exec tsf_send_message 'suppress', null, 0

This message is defined in the software factory as follows:

This particular message doesn’t show up but it also doesn’t suppress the output of the restore/alter database operations.

Userlevel 5
Badge +9

The suppress message is only for that specific message, so it will still show other Database messages.

You mentioned the task to restore the database can take up to 2 hours. Why not create a system flow to restore the database? You can schedule this or have the system flow check in an interval (for example every 5 minutes) if there is a restore task that should run. 

Userlevel 3
Badge +10

Hi Erwin,

In that case you might consider this a feature request. Having tens of database messages in the gui is not practical and suppressing any kind of output would be preferable.

I might work around the issue by creating a SQL Server job and having the task start the job instead. Then the task can keep checking until the job is finished. No SQL Server output will then be generated in the gui.

The database restore takes less than 2 minutes. The 2 hours I mentioned is the interval in which SQL Server writes a log backup to the most recent backup file. Every 2 hours a new backup file is created from a full database backup. A log backup is added to this file every minute. In case the live database needs to be restored there’s a maximum of 120 log backups to be restored. This keeps the restore process relatively fast. And because there’s a log backup after every minute we would lose a maximum of only one minute of live data.

Reply