Today was an extremely stressful day for me and my fellow Team System MVP Willy-Peter Schaub as we had to upgrade our TFS 2008 environment with SP1. A Single Tier AT | DT and a seperate build server deployment. We had tested this on VM's and worked fine but this is always not the case.
We were running in a Virtual Environment [Virtual Server 2005 R2]. So we applied the following process:
1] Shutdown TFS and Build Server and backed up both VM's (Virtual Environments is the way to go makes backing out at times like these a lot easier).
2] Applied VS2008 SP1 to both.
3] Applied TFS SP1 to both.
All went smoothly until we applied TFS SP1 to our single tier TFS server, what we had also done during the TFS server update was shutdown the build server as both VS 2008 SP1 and TFS SP1 had completed installing. The TFS server Generated a Microsoft Error Report (see screenshot) but went onto complete.

I browsed to the location specified under 'Error Report Contents' and no files were found. We however restarted the TFS server and then started the build server as well. Everything worked, we updated our work items and published back to TFS from excel, our resident Team System MVP [Willy-Peter] was overjoyed.
However i continued to monitor the event logs and noticed the following. As part of our initial TFS deployment approximately 1 year ago we had implemented an Hourly Transaction Log Maintenace Plan which was running successfully, before we had applied the TFS SP1. After the TFS SP1 was applied the job continued to run however it ran successfully against all user databases except the TFSVersionControl database.
First Step reported
Error -1073548784
Error Message
Executing the query "declare @backupSetId as int
select @backupSetId = position from msdb..backupset where database_name=N'TfsVersionControl' and backup_set_id=(select max(backup_set_id) from msdb..backupset where database_name=N'TfsVersionControl' )
if @backupSetId is null begin raiserror(N'Verify failed. Backup information for database ''TfsVersionControl'' not found.', 16, 1) end
RESTORE VERIFYONLY FROM DISK = N'D:\\Backup\\SQL Server\\TransactionLogs\\TfsVersionControl_backup_200808271200.trn' WITH FILE = @backupSetId, NOUNLOAD, NOREWIND
" failed with the following error: "Cannot open backup device 'D:\\Backup\\SQL Server\\TransactionLogs\\TfsVersionControl_backup_200808271200.trn'. Operating system error 2(The system cannot find the file specified.).
VERIFY DATABASE is terminating abnormally.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly.
Second Step reported
Error -1073548784
Error Message
Executing the query "BACKUP LOG [TfsVersionControl] TO DISK = N'D:\\Backup\\SQL Server\\TransactionLogs\\TfsVersionControl_backup_200808271200.trn' WITH NOFORMAT, NOINIT, NAME = N'TfsVersionControl_backup_20080827120006', SKIP, REWIND, NOUNLOAD, STATS = 10
" failed with the following error: "BACKUP LOG cannot be performed because there is no current database backup.
BACKUP LOG is terminating abnormally.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly.
We event ran the TSQL portion in Query Analyser just for the TFSVersionControl portion and that failed as well.
BACKUP LOG [TfsVersionControl] TO DISK = N''D:\Backup\SQL Server\TransactionLogs\TfsVersionControl_backup_200808271200.trn'' WITH NOFORMAT, NOINIT, NAME = N''TfsVersionControl_backup_20080827120006'', SKIP, REWIND, NOUNLOAD, STATS = 10
GO
declare @backupSetId as int
select @backupSetId = position from msdb..backupset where database_name=N''TfsVersionControl'' and backup_set_id=(select max(backup_set_id) from msdb..backupset where database_name=N''TfsVersionControl'' )
if @backupSetId is null begin raiserror(N''Verify failed. Backup information for database ''''TfsVersionControl'''' not found.'', 16, 1) end
RESTORE VERIFYONLY FROM DISK = N''D:\Backup\SQL Server\TransactionLogs\TfsVersionControl_backup_200808271200.trn'' WITH FILE = @backupSetId, NOUNLOAD, NOREWIND
GO
As one would normally do, we started GOOGLE'ING and searched LIVE.com and found nothing that could assist us. I decided to read thru the error messages carefully and came across the portion in the error message
" failed with the following error: "BACKUP LOG cannot be performed because there is no current database backup.
BACKUP LOG is terminating abnormally.".
Resolution to this problem
Went into SQL Management Studio and first attempted to back up the TFSVersionControl database just the Transaction Logs gave me the same error
"BACKUP LOG cannot be performed because there is no current database backup."
I then performed a Full Database backup of the TFSVersionControl database, ran the Hourly Transactional Log Maintenance Plan and it worked 100%.
My Hourly Transaction Logs have run successfully for the past 3 hours and my Application and System Logs are as healthy as ever.