The TaskOutputProperty table is getting very large, how can we clean it up?
search cancel

The TaskOutputProperty table is getting very large, how can we clean it up?

book

Article ID: 176114

calendar_today

Updated On:

Products

IT Management Suite Deployment Solution

Issue/Introduction

Each time a task is ran a new row is created in TaskOutputProperty Table. So if you have a single job like Deployment that runs 20 tasks, that’s 20 new rows that are added to the table each time the job runs.  Similarly the TaskOutputPropertyValue table grows in the same manner.

Resolution

Verify that the Clean Up Task Data task is running as required.  If it is holding too much data please lower the row count and time Task Output is kept, according to the needs of your environment.

Location: Settings > Notification Server > Task Settings > Clean Up Task Data

 

In case the TaskOutputProperty Table is too big to let the "Clean Up Task Data" task to be able to finish, check the following:

You can use the following query to find out if there are tasks that could be the biggest offenders:

select i.Name, i.Guid, count (ti.TaskInstanceGuid)
--, cast (ivd.State as xml) 
from ItemVersionData ivd 
join taskinstances ti on ivd.VersionGuid = ti.TaskVersionGuid
join ItemVersions iv on iv.VersionGuid = ivd.VersionGuid
join Item i on i.Guid = iv.ItemGuid
where ivd.state like '%collectOutput="True"%'
group by i.Name, i.Guid
order by 3 desc

Then take one of the following options:

  • Decrease the frequency of these Task's run schedule.
  • Implement policies to accomplish the objective of repeated Tasks.
  • Check at those tasks and see if those are using "Save script output with task status" setting under the "Advanced" settings. This option can introduce a lot of unnecessary data if there is not a specific reason for it.

 

Additional Information

KB 177057 "The TaskOutputPropertyValue table is growing very large"