Press "Enter" to skip to content

Day: December 29, 2025

Recent Updates to Apache Kafka

Jaisen Mathai lays out some changes:

Hey, fellow Apache Kafka® developers! Let’s look at the important updates across Confluent’s client ecosystem, from the core librdkafka to the wrappers for PythonGo.NET, and JavaScript. The last couple of months have been focused on laying down some solid architectural foundations and adding key quality-of-life features.

I’m curious to see what changes with IBM purchasing Confluent.

Leave a Comment

Thoughts on Power BI Pro/PPU to Fabric

Teo Lachev shares some advice:

Performance is difficult to translate because Power BI Pro/PPU run in a shared capacity, meaning compute resources (v‑cores) are pooled across many tenants and dynamically allocated, whereas Fabric capacities are dedicated, meaning that Microsoft grants specific resources expressed as number of cores and memory. Therefore, Fabric performance is predicable while Pro/PPU might not be, although I’m yet to hear from client complaining about unpredictable performance.

Read on for some high-level thoughts on performance and cost.

Leave a Comment

Known Issues in SQL Server 2025

Brent Ozar checks out the list:

Whenever a brand spankin’ new version of any software comes out, there are bugs, and SQL Server is no exception. This has led to a mentality where folks don’t wanna install a new version of SQL Server until the first couple of Cumulative Updates come out, hopefully fixing the first big round of bugs.

So… are there bugs this time around?

Read on to see the list. Though I will note that the SQL authentication logins being slower isn’t a bug. It’s a consequence of improving security via PBKDF2 and cranking up the number of iterations. On net, this is a good thing because it makes brute-force password attacks orders of magnitude more difficult while having negligible impact on legitimate users. In the post Brent links, Vlad Drumea has a comment talking about going from sub-1ms to 150ms per login attempt in his tests, and the neat thing about PBKDF2 is that it scales linerally with number of iterations, so as hardware gets faster and faster, you can increase the number of iterations necessary and maintain a fairly standard range of login times.

Leave a Comment

An Overview of the FabricTools Powershell Module

Kamil Nowinski provides an overview of the FabricTools Powershell module:

Managing Microsoft Fabric at scale quickly becomes painful if you rely only on the UI. Workspaces, capacities, and tenant-level settings all need repeatable, scriptable management. FabricTools is a community-driven PowerShell module that fills this gap by adding high‑level cmdlets focused on Microsoft Fabric and Power BI administration.​

In this post, you will learn what FabricTools is, how to install it from the PowerShell Gallery, and how to list all Fabric workspaces and export them to a CSV file for further analysis.

I was going to say “It looks a lot like DBATools” and then I realized that several of the contributors are DBATools mainstays, so that makes sense.

Leave a Comment

ISNULL() and COALESCE() Return Types

Andy Brownsword checks some data types:

Last week we looked at how expressions are evaluated with the ISNULL and COALESCE functions. Whilst we’re in the area it’s worth running through how data types are selected for them too. It might have implications with how you implement them.

The way these functions choose which data type to return differs, so they aren’t direct swap outs for each other, and you can’t simply ‘upgrade’ an ISNULL to COALESCE and expect the same result.

Read on to see how the two behave under different circumstances with changing data types.

Leave a Comment

Query Estimates and Tooling in Oracle

David Fitzjarrell lays out a comparison:

Depending upon which tool is used query plans can change. There are two provided by Oracle, SQL*Plus and SQL Developer, and how they treat bind variables can alter execution plans. Let’s look into that and see what may be the cause.

SQL*Plus has been around for quite a while and is a very mature product. SQL Developer also has a long history, not quire as long as SQL*Plus but is well beyond the early phases of development. Both are excellent tools, returning reliable and repeatable results, but SQL Developer may take some liberties SQL*Plus doesn’t, especially where bind variables are involved. SQL*Plus and PL/SQL allow the developer to define data types for bind variables, and will pass those values through unchanged. SQL Developer, however, appears to pass such values using a character data type regardless whether the value is a string or numeric, allowing Oracle to ‘decide’ how to optimize the query. This can produce sometimes ‘unexplained’ results with estimates and execution plans.

Read on for an example in which the choice of tool can add a considerable percentage to the expected length of the query. The tricky part here is that this doesn’t mean the query actually takes longer, but that expectations will differ.

Leave a Comment