AlwaysOn Availability Groups unable to query against readable secondary replica database: Wait Type HADR_DATABASE_WAIT_FOR_TRANSITION_TO_VERSIONING

Recently a customer reported an interesting issue, while querying against recently added readable replica, SELECT statement is shown as suspended and session is shown as waiting on HADR_DATABASE_WAIT_FOR_TRANSITION_TO_VERSIONING Here is a simple way to reproduce the scenario Now on current primary replica, change one of the remote replica to readable However, running a SELECT Statement…

0

Configure SQL Server Failover Cluster Instance on Azure Virtual Machines with MSDTC

Configure SQL Server Failover Cluster Instance If you are running a SQL Server Failover Cluster Instance on premises and looking to migrate to Azure, you might be a little intimidated. This architecture is a bit complex because it uses quite a few different technologies all working together. My goal is to help clarify the pieces…

0

Domain Independent Cluster and Availability Group

What is a Domain Independent Cluster? Did you know that you can have a Windows cluster that is a domain independent cluster and run a SQL Server Availability Group on top of it?  The technology has been around for a while, but a lot of DBAs are not aware of it.  Why?  All the glory…

0

Read-Scale Availability Group Setup

What is a Read-Scale Availability Group? A Read-Scale Availability Group is a Clusterless Availability Group.  It’s sole purpose and design is to scale out a read workload.  More importantly is what it is not.  It is NOT a High Availability solution.  Since this design has no cluster under it, you lose things like automatic failover…

3

MSDTC Supported Configurations

The MSDTC Configuration Conundrum MSDTC configuration is not as straight forward as you might think. It’s a different choice if you are using a local MSDTC, clustered MSDTC, on-premises, Azure, Failover Cluster, or Availability Group. Every one of those variables leads you down a different path with different choices. The goal of this article is…

0

Migrating Symmetric Keys Between SQL 2016 and SQL 2017/Azure

There has been a recent discussion about migrating symmetric keys between instances and version of SQL Server. It doesn’t seem to be a widely known process and there have been some changes between versions. Background There are many ways to migrate between versions of SQL Server, some of these ways have more moving parts than…

0

Monitoring Azure Analysis Services with Log Analytics and Power BI

How do you monitor Azure Analysis Services? How many users are connected and who are they? These are great questions to understand around your AAS environment. While metric data is exposed via the Metrics blade for Azure Analysis Services in the portal, it’s a quick means to answer these questions. What if you wanted to…


How to Upgrade an AG Cluster to Windows 2016

Starting in Windows Server 2012 R2 you now have a way to upgrade a cluster to Windows 2016.  The best part is it’s not an OS upgrade, but a rebuild.  The magic is that you can join a Windows 2016 server to a Windows 2012 R2 cluster.  You can upgrade your cluster with as little…

0

SQL Server 2017 Read-Scale Availability Groups

SQL Server 2017 was recently launched, having multiple new features. One of these included something called “Read-Scale Availability Groups”. There was a good bit of discussion about this feature and one of the feedback items was that the details in Docs was very light. I hope to rectify the minimal amount of information through this…

3

Implementing Buffer Pool Extension

Buffer Pool Extension was released in SQL 2014 so it’s not new.  It is also not advertised very much, but that’s not for lack of usefulness.  RAM is far faster than SSD and certainly arm based disks, but most databases are too big to cache into RAM.  BPE allows us to extend the buffer cache…

0