High Memory Usage in SSISDB Related to MEMORYCLERK_SQLBUFFERPOOL

Oktay Bozdemir 41 Reputation points
2025-08-07T21:59:33.9766667+00:00

We are using SQL Server 2019. On this server, several content databases (used for reporting purposes) and an active SSISDB are running. The entire system is hosted on a single server where SQL Server 2019 is installed.

Occasionally, memory usage on the server becomes quite high. Even when no SSIS ETL packages are running, memory usage does not decrease.

How can we reduce the MEMORYCLERK_SQLBUFFERPOOL value?

Would you recommend lowering the RETENTION_WINDOW value?

Are there any automatically started services that we can safely disable to reduce resource usage?

Sometimes, our ETL packages freeze or get stuck, and we have to restart the server to resolve the issue. After the restart, memory usage resets.

I would appreciate any recommendations or best practices you can share.

Based on the CPU and RAM information in the screenshots, how many ETL packages or jobs can I run in parallel?

-- Instead of restarting the SQL Server, can I run the following command? Would this have any negative impact on the other reporting content databases?
USE SSISDB
go
ALTER DATABASE SCOPED CONFIGURATION CLEAR PROCEDURE_CACHE

SELECT property_name, property_value FROM catalog.catalog_properties;

SQL1

SELECT   name AS [Configuration Name],   value AS [Configured Value],   value_in_use AS [Value In Use]FROM   sys.configurationsWHERE   name IN ('min server memory (MB)', 'max server memory (MB)');

SQL2

SELECT
   DB_NAME(database_id) AS [Database Name],
   COUNT(*) * 8 / 1024 AS [Memory Usage (MB)]
FROM sys.dm_os_buffer_descriptors
WHERE database_id NOT IN (1, 2, 3, 4) -- sistem veritabanlarını hariç tut
GROUP BY database_id
ORDER BY [Memory Usage (MB)] DESC;

The value in this screenshot corresponds to the previous memory limitation. Later, we increased the memory slightly, thinking it was insufficient. However, SSISDB continues to use high memory even when the ETL packages are not running.

sql4

sql7 6SQL_Server_CpuRam

SQL_Server_C7puRam_Cpu

SQL Server Integration Services
0 comments No comments
{count} votes

1 answer

Sort by: Most helpful
  1. Erland Sommarskog 124.2K Reputation points MVP Volunteer Moderator
    2025-08-08T19:28:12.2466667+00:00

    You have already asked this once: https://learn.microsoft.com/en-us/answers/questions/5488251/sql-server-2019-ssisdbs-high-memory-usage, and I have explained that is perfectly normal that pages stay in the buffer pool, even if no queries run in the database. The only reason they would fall out from the buffer pool is that SQL Server reads pages from other databases into the pool and then ages out pages that have not been touched for a while.

    I have also given you tips on how you can troubleshoot your actual problems. The SSISDB staying cache is not one of them.

    0 comments No comments

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.