Skip to content

Amine Haloui

26 posts since April 2024

SQL Server 2025 CU5: max lock manager cache memory (%): what I could reproduce and what I could not

Cumulative Update 5 for SQL Server 2025 was released on May 20, 2026 (build 17.0.4045.5). Seven entries in the KB, mostly fixes. One of them is not a fix: it is a new server configuration option, max lock manager cache memory (%). Reference: https://support.microsoft.com/en-us/servicing/sql/sql-server-2025/cumulative-update/kb5084896-cu5 I built a lab on CU5 and on later builds up to CU9 and I spent… 

When tempdb write latency points below SQL Server

During a recent performance review on a SQL Server 2019 instance (AlwaysOn Failover Cluster Instance, bare-metal), one number stood out. This post follows the investigation: from a latency figure in a DMV, down the I/O path to a RAID controller setting nobody had ever chosen. The starting point: one number from a health check The I/O statistics of the instance… 

Wait stats and Sub-NUMA clustering 

During a healthcheck at a client’s site, we collected performance data from a SQL Server 2019 Enterprise instance hosting a BI / data warehouse workload. Two lines in the wait statistics report immediately caught the eye: hundreds of hours of parallelism waits accumulated in only 11 days of uptime.  Here are the questions that arise  The waits themselves were not… 

PostgreSQL Snapshot Backup and Restore with Proxmox ZFS (4/4)

In the blog series I previously wrote, I did not answer all the customer’s questions. The last one was the following: Can this also be applied to PostgreSQL? In short, yes, it is possible. Let’s see how. Here is the list of the previous blog posts: Partitioning and filesystem We will reuse the sqlpool ZFS pool created in the first… 

SQL Server: Automatic index compaction in Azure (preview) – Part 2

Why does index fragmentation matter less than before ? Logical fragmentation was a problem on spinning disks: an ordered scan on a fragmented index broke the read-ahead into smaller I/Os and each jump cost a disk head movement. On SSD, NVMe and cloud storage, the penalty of non-sequential reads is marginal. And the “physical order” we used to restore so… 

SQL Server: Automatic index compaction in Azure (preview) – Part 1

For years, we have all scheduled the same thing on our SQL Server environments: a nightly or weekly index maintenance job. We check the fragmentation level, we run a REORGANIZE between 5% and 30%, a REBUILD above 30% and we hope the job finishes before the business day starts. Microsoft recently released a new feature in public preview: automatic index… 

Customer case study – automating SQL Server TLS Encryption with Ansible and Certificates (Architecture)

When working with SQL Server environments, securing client connections can become an important requirement, especially when TLS encryption must be implemented using certificates. In this context, a customer asked us to develop an Ansible playbook and role to automate the configuration of TLS for SQL Server. The certificates are generated from the customer PKI and provided as PEM files containing… 

SQL Server Snapshot Backup and Restore with Proxmox ZFS – REST API with SQL Server 2025 (3/4)

The proposed architecture consists in adding a small internal REST API on the Proxmox server in order to expose a controlled ZFS snapshot operation. SQL Server 2025 can then call this API through sp_invoke_external_rest_endpoint, instead of running SSH commands directly or relying on an external tool. The role of the API is deliberately limited: it receives a snapshot request, checks… 

SQL Server Snapshot Backup and Restore with Proxmox ZFS (1/4)

We are currently working with clients on migrations to SQL Server 2022 and SQL Server 2025. During a discussion with one client, we reviewed some of the benefits introduced in the latest SQL Server 2022 and 2025 releases. Among the available features, starting with SQL Server 2022, we have: Starting with SQL Server 2025: The customer’s environment consists of a… 

When a Python driver configuration issue may cause blocking in SQL Server

One of our clients encountered blocking during their daily data load. The process loads several million rows and then performs an ALTER TABLE … SWITCH operation into a partitioned table. This operation usually takes some time, but in this case it became blocked. Context Initially, I did not have access to much information. The only element I received from the… 

A Misleading SSAS Error in Power BI Report Server When Using DirectQuery Mode

Our client was experiencing issues after publishing a report that used Direct Query mode. Specifically, when the report was queried, the following error occurred: Error :  We couldn’t connect to the Analysis Services server. Make sure you’ve entered the connection string correctly. However, this issue did not occur in Power BI Desktop. In Power BI, several data loading modes are…