The Bit Bucket

SQL: Auto Page Repair in SQL Server? (Or Not?)

SQL: Auto Page Repair in SQL Server? (Or Not?)

Database mirroring was added way in SQL Server 2005. One of the features added to it later in SQL Server 2008 was auto page repair. When SQL Server 2012 was released, Availability Groups also offered auto page repair.

Just how useful is this feature though ?

I’ll start by saying that it can’t hurt.

When SQL Server is reading a page on the primary replica and receives an unrecoverable I/O error (typically but not always, an error 823 for a checksum error), it will try to repair the page when:

2026-07-29

Fabric RTI 101: Integrating Power Automate with Activator

Fabric RTI 101: Integrating Power Automate with Activator

Power Automate is Microsoft’s no-code workflow automation platform, and it integrates directly with Activator to help turn events into business actions.

When a rule in Activator is met — for example, when a sensor crosses a threshold or a transaction fails multiple times — that event can automatically trigger a Power Automate flow.

A Power Automate flow is a sequence of steps that perform an operation, often involving multiple systems. For example, a trigger from Activator could:

2026-07-28

SQL: And One Column to Rule Them All

SQL: And One Column to Rule Them All

I work with a lot of SQL Server databases that are poorly normalized. One of my pet dislikes is the column to rule them all.

Here are simple tests:

  • If I ask you what’s stored in a column and you can’t tell me a single answer, then you’ve got a problem.
  • If you need to refer to another column to work out what’s in the first column, then you’ve got a problem.

Here are some examples:

2026-07-27

Fabric RTI 101: Triggering Actions in Activator

Fabric RTI 101: Triggering Actions in Activator

After Activator detects that a condition or pattern has been met, the next step is to trigger an action.

Actions are what turn analytics into operational responses — they ensure that insight leads directly to something happening.

Triggering Actions

Actions can be either internal or external:

Internal actions occur within Fabric — for example, updating a dataset, refreshing a Power BI report, or writing a new event back into an Eventstream.

2026-07-26

SQL: Designing Databases to Minimize Damage During Application Intrusions

SQL: Designing Databases to Minimize Damage During Application Intrusions

Intrusions into computer systems are happening all the time now. We need to address this issue as an industry, but it’s important to understand that the way we design databases plays a big role in the impacts that occur during intrusions.

If you don’t accept that you could have an intrusion, you are living in La La Land. (See https://en.wikipedia.org/wiki/Fantasy_prone_personality )

A bug in any one of the frameworks that you use, the code that you write, the protocols that you use, the operating system or hosting services that you use can potentially expose you to an intrusion.

2026-07-25

Fabric RTI 101: Detecting Patterns Using Activator

Fabric RTI 101: Detecting Patterns Using Activator

In many real-time systems, a single event on its own doesn’t tell the full story. Pattern detection allows you to identify sequences or combinations of events that together indicate something meaningful.

For example, a single failed login attempt is rarely an issue, but multiple failed logins within five minutes could suggest a security concern. Similarly, a single temperature reading above normal might not matter, but a rising trend over time could signal equipment failure.

2026-07-24

PG Down Under show 7 on Azure HorizonDB with guest Charles Feddersen is published!

PG Down Under show 7 on Azure HorizonDB with guest Charles Feddersen is published!

I had the pleasure of recording a new PG Down Under podcast today. It was great to have Charles Feddersen from Microsoft back on the show.

Charles is the Partner Director of Product Management, Postgres & MySQL on Azure at Microsoft.

He leads the product management teams for the Postgres and MySQL managed services on Azure including Azure Database for PostgreSQL, Azure Database for MySQL, and Azure HorizonDB, which is why I wanted to talk to him today.

2026-07-23

Fabric RTI 101: What are Activator Rules?

Fabric RTI 101: What are Activator Rules?

In Activator, rules are the core element that make automation possible. A rule defines the condition you want the system to look for in your data — the point at which something should happen.

Rules can be simple or complex.

Activator Rules

A simple example might be: temperature > 90°C or error rate exceeds 5%. These are fixed thresholds — clear, measurable values that indicate when a limit has been crossed.

2026-07-22

Book Review: Python Data Analysis

Book Review: Python Data Analysis

I recently received a review copy of Python Data Analysis: Master Python Analytics with Machine Learning, Deep Learning, GenAI, LLMs, and Data Engineering by Avinash Navlani and Cornellius Yudha Wijaya from my friends at PackT. This is the fourth edition of this book.

Authors

Avinash Navlani is a senior data scientist, researcher, and educator with a PhD in data science and many years in both the industry and in academia.

Cornellius Yudha Wijaya is a data science manager leading AI initiatives and driving the development of practical data and AI solutions.

2026-07-21

Fabric RTI 101: Understanding Activator Objects and Signals

Fabric RTI 101: Understanding Activator Objects and Signals

Before you start creating rules in Activator, it’s important to understand how the system models data conceptually — using Objects and Signals.

An Object in Activator represents a real-world entity that you want to monitor — for example, a sensor, a customer account, a store, or a device.

Each Object has one or more Signals, which are the measurable data points associated with it. For example, a device object might have signals like temperature, battery level, and status.

2026-07-20