Strange error in SQL Server Reporting Services, EventID 108 - sql-server

I am using SQL Server 2019 (15.0.1102.861) reporting services. From time to time it fires an error multiple (5-6) times within the same second. There is nothing special that happens at this time, no subscription or any scheduled task or anything else, but of course I can't say if anyone is just opening a report with a - let's say "unoptimal" - query or is trying to edit a report and runs into something. There is no regularity in any way.
In Windows event log it reads:
error, ID:108, Source:Report Server (SSRS), Message:Report Server (SSRS)
There is no more information, except the word DAX, but I am quite sure that no one uses Data Analysis Expressions (as Analysis Server is not installed, but maybe Skype for Business or Anywhere 365 uses such a thing for the reports and cause this error - could that be the reason?):
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
<System>
<Provider Name="Report Server (SSRS)" />
<EventID Qualifiers="0">108</EventID>
<Level>2</Level>
<Task>2</Task>
<Keywords>0x80000000000000</Keywords>
<TimeCreated SystemTime="2023-02-08T06:26:17.553286000Z" />
<EventRecordID>365647</EventRecordID>
<Channel>Application</Channel>
<Computer>MyReportServer.MyDomain</Computer>
<Security />
</System>
<EventData>
<Data>Report Server (SSRS)</Data>
<Data>DAX</Data>
</EventData>
</Event>
Just to demonstrate the interval it happens, these are the timestamps for the whole series:
<TimeCreated SystemTime="2023-02-08T06:26:17.553286000Z" />
<TimeCreated SystemTime="2023-02-08T06:26:17.553286000Z" />
<TimeCreated SystemTime="2023-02-08T06:26:17.537658500Z" />
<TimeCreated SystemTime="2023-02-08T06:26:17.522032200Z" />
<TimeCreated SystemTime="2023-02-08T06:26:17.037601300Z" />
In the Reporting Service log file I find two warnings during this time, and I don't think they have anything to do with the error above, but just to be complete:
2023-02-08 06:26:13.7997|INFO|21|Deleting expired log file: C:\Program Files\Microsoft SQL Server Reporting Services\SSRS\LogFiles\RSPortal_2023_01_04_19_15_05.log Last written: 04.01.2023 19:15:05
2023-02-08 06:26:13.7997|WARN|21|Exception deleting expired log fileSystem.IO.IOException: The process cannot access the file 'C:\Program Files\Microsoft SQL Server Reporting Services\SSRS\LogFiles\RSPortal_2023_01_04_19_15_05.log' because it is being used by another process.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.File.InternalDelete(String path, Boolean checkHost)
at Microsoft.BIServer.HostingEnvironment.Logger.DeleteExpiredFilesInternal(Int32 keepUntilDays, FileInfo[] logFiles)
2023-02-08 06:26:23.8306|INFO|21|Deleting expired log file: C:\Program Files\Microsoft SQL Server Reporting Services\SSRS\LogFiles\RSPortal_2023_01_04_19_15_05.log Last written: 04.01.2023 19:15:05
2023-02-08 06:26:23.8306|WARN|21|Exception deleting expired log fileSystem.IO.IOException: The process cannot access the file 'C:\Program Files\Microsoft SQL Server Reporting Services\SSRS\LogFiles\RSPortal_2023_01_04_19_15_05.log' because it is being used by another process.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.File.InternalDelete(String path, Boolean checkHost)
at Microsoft.BIServer.HostingEnvironment.Logger.DeleteExpiredFilesInternal(Int32 keepUntilDays, FileInfo[] logFiles)

Related

SSAS Processing Error: The specified query is too complex to be evaluated as a single statement

We have a cube running in Analysis Services 2016 that runs a full process every night to update with the latest data. For the past few weeks, we have been getting an error that we can't figure out (xml included below). I believe the root cause of the processing failure is the error "The specified query is too complex to be evaluated as a single statement", but not sure what this means as there are only a few vague references to this error online, and not in the context of processing a cube.
The strangest thing is that the process always works when you run it manually, and it only fails some nights, other nights it works fine. There is no discernible pattern to the failures. There are a lot of partitions processing in parallel so I wonder if it is some sort of internal threading conflict in SSAS.
Can anyone give any advice on where to look to resolve this?
<return xmlns="urn:schemas-microsoft-com:xml-analysis">
<results xmlns="http://schemas.microsoft.com/analysisservices/2003/xmla-multipleresults">
<root xmlns="urn:schemas-microsoft-com:xml-analysis:empty">
<Exception xmlns="urn:schemas-microsoft-com:xml-analysis:exception" />
<Messages xmlns="urn:schemas-microsoft-com:xml-analysis:exception">
<Error ErrorCode="3238658446" Description="The specified query is too complex to be evaluated as a single statement." Source="Microsoft SQL Server 2016 Analysis Services" HelpFile="" />
<Error ErrorCode="3239837702" Description="Server: The current operation was cancelled because another operation in the transaction failed." Source="Microsoft SQL Server 2016 Analysis Services" HelpFile="" />
<Error ErrorCode="3240034325" Description="Errors in the OLAP storage engine: An error occurred while processing the indexes for the ... partition of the ... measure group of the ... cube from the ... database." Source="Microsoft SQL Server 2016 Analysis Services" HelpFile="" />
<Error ErrorCode="3240034325" Description="Errors in the OLAP storage engine: An error occurred while processing the indexes for the ... partition of the ... measure group of the ... cube from the ... database." Source="Microsoft SQL Server 2016 Analysis Services" HelpFile="" />
<Error ErrorCode="3240034325" Description="Errors in the OLAP storage engine: An error occurred while processing the indexes for the ... partition of the ... measure group of the ... cube from the ... database." Source="Microsoft SQL Server 2016 Analysis Services" HelpFile="" />
<Error ErrorCode="3240034325" Description="Errors in the OLAP storage engine: An error occurred while processing the indexes for the ... partition of the ... measure group of the ... cube from the ... database." Source="Microsoft SQL Server 2016 Analysis Services" HelpFile="" />
<Error ErrorCode="3240034325" Description="Errors in the OLAP storage engine: An error occurred while processing the indexes for the ... partition of the ... measure group of the ... cube from the ... database." Source="Microsoft SQL Server 2016 Analysis Services" HelpFile="" />
<Error ErrorCode="3240034325" Description="Errors in the OLAP storage engine: An error occurred while processing the indexes for the ... partition of the ... measure group of the ... cube from the ... database." Source="Microsoft SQL Server 2016 Analysis Services" HelpFile="" />
</Messages>
</root>
</results>
</return>

TFS Daily scheduled Back-up is Failing

We have TFS2015.3. And we have scheduled DB backup in TFS using TFS admin console. But we are finding that TFS DB back up failing frequently with below error:
Exception Message: Write on "\XASDC\public\DASC\IT\BACKUPSQL\XXXXX1234\TFS\Tfs_CollectionA_9859957732898727191F.bak" failed: 1359(An internal error occurred.)
BACKUP DATABASE is terminating abnormally. (type SqlException)
SQL Exception Class: 16
SQL Exception Number: 3202
SQL Exception Procedure:
SQL Exception Line Number: 1
SQL Exception Server: XXXXX1234
SQL Exception State: 1
SQL Error(s):
SQL Error[1]: System.Data.SqlClient.SqlError: BACKUP DATABASE is terminating abnormally.
Class: 16
Number: 3013
Server: XXXXX1234
Source: .Net SqlClient Data Provider
State: 1
Procedure:
Line Number: 1
Exception Data Dictionary:
HelpLink.ProdName = Microsoft SQL Server
HelpLink.EvtSrc = MSSQLServer
HelpLink.EvtID = 3202
HelpLink.BaseHelpUrl = http://go.microsoft.com/fwlink
HelpLink.LinkId = 20476
Exception Stack Trace: at Microsoft.VisualStudio.Services.Configuration.SqlDatabaseBackupRestoreComponent.Execute(String sqlStatement)at Microsoft.VisualStudio.Services.Configuration.SqlDatabaseBackup.Backup(ISqlConnectionInfo connectionInfo)
at Microsoft.TeamFoundation.Admin.Jobs.DatabaseBackupJob.TakeFullBackupOfSingleDatabase(IVssRequestContext requestContext, String dataSource, String databaseName, String fullFileName, ITFLogger logger)
at Microsoft.TeamFoundation.Admin.Jobs.DatabaseBackupJob.TakeFullBackups(IVssRequestContext requestContext, BackupSettings settings, List`1 databaseConnectionInfoList, ITFLogger logger)
It is failing only for a particular Collection. We have 11 collections and Back-up is fine for 10 Collections. But for this particular collection, the scheduled Back-up failed. On rerunning the Backup job manually it succeeds. It failed twice in last 4 days.
Kindly requesting your help to get the issue resolved.
Seems it could be a connection issue with high workload, or an issue like "data cannot be read".
Just try below items to narrow down the issue :
Detach the specific collection from TFS admin console, then re-attach
it.
Change the backup location to local machine instead of UNC path (There is a possibility that caused by the network.).
Recreate the BackupSets file:
Go to the directory where your back ups are stored
Find something like "BackupSets.xml"
Rename it to "BackupSets_BACKUP.xml" (or anything else of your liking)
Schedule the backup in TFS Administration Console

Failed to restore Team Foundation server databases

Getting errors restoring TFS databases
I've scheduled the backups of our team foundation server with the Team Foundation Server Administration Console. It takes every night a full backup, and it looks like it really does.
Now disaster occured, our tfs crashed, and i'm setting up a new windows server with tfs 2012. Luckely i've got backups... But.....
Restoring the backups seems not so easy.
When i restore, I get the following error messages:
TF401001: The restore operation for database ... failed. Please refer to the logs for more information
I get this for every database (ReportServer, ReportServerTempDB, Tfs_warehouse, tfs_defaultcollection, TFS_configuration).
Looking at the log file:
[Info #09:07:33.420] RESTORE DATABASE [Tfs_Configuration] FROM DISK = N'\\172.16.46.234\Backup_TeamFS.crashed\Tfs_Configuration_9858508765097608601L.trn' WITH RECOVERY, NOUNLOAD, STATS = 10, STOPATMARK = N'TfsMarkTfpt'
[Error #09:07:33.514] TF401001: The restore operation for database Tfs_Configuration failed. Please refer to the logs for more information
[Error #09:07:33.514]
Exception Message: The database "Tfs_Configuration" does not exist. RESTORE can only create a database when restoring either a full backup or a file backup of the primary file.
RESTORE DATABASE is terminating abnormally. (type SqlException)
SQL Exception Class: 16
SQL Exception Number: 3118
SQL Exception Procedure:
SQL Exception Line Number: 1
SQL Exception Server: TEAMFS
SQL Exception State: 1
SQL Error(s):
SQL Error[1]: System.Data.SqlClient.SqlError: RESTORE DATABASE is terminating abnormally.
Class: 16
Number: 3013
Server: TEAMFS
Source: .Net SqlClient Data Provider
State: 1
Procedure:
Line Number: 1
Exception Data Dictionary:
HelpLink.ProdName = Microsoft SQL Server
HelpLink.EvtSrc = MSSQLServer
HelpLink.EvtID = 3118
HelpLink.BaseHelpUrl = http://go.microsoft.com/fwlink
HelpLink.LinkId = 20476
Exception Stack Trace: at Microsoft.TeamFoundation.Admin.SqlDatabaseBackupRestoreComponent.Execute(String sqlStatement)
at Microsoft.TeamFoundation.Admin.SqlDatabaseRestore.Restore(String connectionString)
at Microsoft.TeamFoundation.Admin.RestoreFactory.RestoreLogs(ActivityContext context, String serverName, String databaseName, String path, List`1 backupChain, Boolean useMarkAtEnd, Int32 minPercent)
at Microsoft.TeamFoundation.Admin.RestoreDatabases.Run(ActivityContext context)
But, i'm fully sure i do have a full backup. Looking at log files from the backup:
[9/1/2013 10:24:44 PM] [Info] starting full backups
[9/1/2013 10:24:44 PM] [Info] Taking Full Backup server:TEAMFS database:Tfs_Configuration filename:\\172.16.46.234\Backup_TeamFS\Tfs_Configuration_9858508747697505276F.bak
[9/1/2013 10:24:44 PM] [Info] BACKUP DATABASE [Tfs_Configuration] TO DISK = N'\\172.16.46.234\Backup_TeamFS\Tfs_Configuration_9858508747697505276F.bak' WITH NOFORMAT, NOINIT, NOSKIP, REWIND, NOUNLOAD, STATS = 10
[9/1/2013 10:32:17 PM] [Info] Backup Complete for database Tfs_Configuration
[9/1/2013 10:32:17 PM] [Info] Finished Full Backup server:TEAMFS database:Tfs_Configuration filename:\\172.16.46.234\Backup_TeamFS\Tfs_Configuration_9858508747697505276F.bak
update
I've only scheduled the backups to make a full backup, not incrementals. Maybe something to do with that?
we have managed to do this so I shall share my experience..
So you have got backups..
Also, you have got a fresh new OS and installation files for TFS (TFS 2013 in our case)
Double click installation file.
Once installation completes, ideally MSDN tells you to close the windows and then in the TFS CONSOLSE you have to go to scheduled backups to restore which FAILS so below method will help you resolve the problem:
a. Restore the config and team collections databases via the SQL Management console
b. Open the TFS management console
c. Click on Application Tier and Configure this feature
d. Run CMD as administrator and run following command:
TFSConfig Accounts /add /AccountType:ApplicationTier /Account:"NT Authority\Network Service" SQLInstance:ServerName /DatabaseName:TFS_Configuration
e. Then just follow the next button in the tool from step c.
Cheers
Here is how I just walk around this issue. Use your SQL management tool to restore the backup file. They are just like regular Database backup files, so you just treat them like ones.
After you finish, you can see your collections in your TFS console.
You might bump into some errors during the process.
The one I got was missing one collection. You need to restore everything before going to TFS console.
BTW, after you finish, reboot your TFS service or the whole server, otherwise you might bump into another error like can't find the object reference.
Check out this blog to find some help.
BTW, I assume the reason you did this because you tried to restore TFS to a different server.
You need to reinstall the application tier only from TFS installation. It took me forever to figure it out.

SQL Server SPID returns after being killed

I have a SPID in my SQL Server 2008 R2 database that shouldn't be there. It was created on a copy database job and that database and job have long since been deleted.
The SPID however did not disappear and tries to reconnect to my database every 1 minute and is filling up my error log.
I tried using the KILL ## command where ## is the process id but it just comes back with a new session id.
I have restarted the server made sure all possibly associated jobs are completed.
Does anybody know how I can end this SPID for good?
When it tries to run every minute it gives me this error message in my logs:
Log Name: Application
Source: MSSQLSERVER
Date: 1/2/2013 11:34:24 AM
Event ID: 18456
Task Category: Logon
Level: Information
Keywords: Classic,Audit Failure
User: DOMAIN\userid
Computer: server.domain.com
Description:
Login failed for user 'domain\userid. Reason: Failed to open the explicitly specified database. CLIENT: <local machine>]
Event Xml:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
<System>
<Provider Name="MSSQLSERVER" />
<EventID Qualifiers="49152">18456</EventID>
<Level>0</Level>
<Task>4</Task>
<Keywords>0x90000000000000</Keywords>
<TimeCreated SystemTime="2013-01-02T19:34:24.000000000Z" />
<EventRecordID>19934006</EventRecordID>
<Channel>Application</Channel>
<Computer>server.domain.com</Computer>
<Security UserID="S-1-5-21-3027188495-1942244818-4144419180-3136" />
</System>
<EventData>
<Data>DOMAIN\userid</Data>
<Data> Reason: Failed to open the explicitly specified database.</Data>
<Data> [CLIENT: <local machine>]</Data>
<Binary>184800000E00000006000000410043004500500034000000070000006D00610073007400650072000000</Binary>
</EventData>
</Event>
The error indicates that you have an external (external to SQL Server) process trying to connect to SQL Server. The login fails because the process can't connect to the database, which I suspect has already been deleted. This process continues to retry to connect to the SQL Server. You can't kill the SPID, because the external process is designed to reconnect.
The process is associated with the copy database job. Did you create the copy-database job by right clicking the source database in the SSMS Object Manager, or some similar technique? The external process is probably associated with a DTS package.
In Windows Task Manager, select Processes and look for an Image Name similar to DTExec.exe or DTExecUI.exe. If you find one, then select to End Process. That should kill the process and stop the connections to SQL Server.
When you say "I have restarted the server" are you referring to restarting the computer or stopping and starting the SQL Server service? Restarting the SQL Server service won't stop this process.

Custom Code access in a SQL Server report

This is my first post to this forum.
I have a SQL Server report that I have developed some custom code to return some data that is calculated through another dll (The calculation is extensive so I didn't want to re-create it).
I 've referenced the code in the report and I'm able to call the method that returns the data on my local machine, however when I transfer the dll and the report to the reporting server I get the following message:
"Request for the permission of type 'System.Data.SqlClient.SqlClientPermission, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed."
I've tried creating a webservice, but the call failed just the same. From what I understand the rssrvpolicy.config on the report server requires an entry to give the dll permissions to execute. I have done this by adding the following entries with no luck:
<CodeGroup class="UnionCodeGroup" version="1" PermissionSetName="FullTrust" >
<IMembershipCondition class="UrlMembershipCondition" version="1" Url="d:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer\bin\PerfCalcLib.dll" />
</CodeGroup>
<CodeGroup class="UnionCodeGroup" version="1" PermissionSetName="FullTrust" >
<IMembershipCondition class="UrlMembershipCondition" version="1" Url="d:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer\bin\PerfCalcLibWrapper.dll" />
</CodeGroup>
Any ideas?
Thanks.
Just a thought. Did you try signing your assembly and deploying it to the GAC?
You can find resource at this http://msdn.microsoft.com/en-us/library/ms153561.aspx enough to get you started.

Resources