Tuesday, December 2, 2014

Could not allocate space for object in database 'BizTalkMsgBoxDb




The following stored procedure call failed: " { call [dbo].[bts_InsertTrackingData]( ?, ?, ?, ?, ?, ?, ?, ?, ?)}". SQL Server returned error string: "Could not allocate space for object 'dbo.TrackingData_1_3'.'PK_TrackingData_1_3' in database 'BizTalkMsgBoxDb' because the 'PRIMARY' filegroup is full. Create disk space by deleting unneeded files, dropping objects in the filegroup, adding additional files to the filegroup, or setting autogrowth on for existing files in the filegroup."

The Messaging Engine failed while writing tracking information to the database. Details:"A database failure occurred due to an unexpected failure. ".

Could not allocate space for object 'dbo.TrackingData_1_0'.'PK_TrackingData_1_0' in database 'BizTalkMsgBoxDb' because the 'PRIMARY' filegroup is full. Create disk space by deleting unneeded files, dropping objects in the filegroup, adding additional files to the filegroup, or setting autogrowth on for existing files in the filegroup.

This error is very common and many times, I have seen affect of this error as Suspected Database, Database Operation Ceased, Database Stopped transactions. Solution to this error is simple but very important.
Fix/Solution/WorkAround:
1) If possible add more hard drive space either by removing of unnecessary files from hard drive or add new hard drive with larger size.
2) Check if the database is set to Autogrow on.
3) Check if the account which is trying to access the database has enough permission to perform operation.
4) Make sure that .mdf and .ldf file are not marked as read only on operating system file system level.