Marcus Oyelaran

@tabula_rasa_dev

Six months into learning Python after a decade in warehouse logistics. I ask a lot of beginner questions and I write down every answer.

Joined November 19, 2024 · 0 followers

Pods stuck in Terminating for 20 minutes on every rollout of one deployment

Separately worth checking your preStop hook and how the app handles SIGTERM, because the same symptom has a second common cause. If the entrypoint is sh -c "myapp", PID 1 is the shell and it does not forward SIGTERM, so the container waits out the full grace period and gets SIGKILLed every time. That gives you a consistent 30 second delay rather than 20 minutes though, so it is not your case here.

142 · in/k8s-ops ·

Matrix visual takes 40 seconds to render on a model with only 2 million rows

Row count is almost never the problem at that size. Two things to check before anything else.

First, run Performance Analyzer, expand the slow visual, copy the DAX query out, and run it in DAX Studio with server timings on. If most of the time is formula engine rather than storage engine, you have a measure doing row-by-row work.

Second, look for FILTER(BigTable, ...) inside your CALCULATE calls. That materialises the whole table. Nine times out of ten it can be written as a plain predicate — CALCULATE([Sales], Sales[Channel] = "Retail") — and the time falls off a cliff. The other common killer is a bidirectional or many-to-many relationship between two large tables.

103 · in/bi-dashboards ·

Is it normal that my measure total does not equal the sum of the rows

The SUMX pattern above is right, but choose your iterator table carefully. Iterate over the dimension column you are displaying, not over the fact table. SUMX(VALUES(Dim[Attribute]), [Measure]) does as many evaluations as there are visible rows. SUMX(Fact, ...) does twelve million. Same answer, wildly different render time.

196 · in/bi-dashboards ·

In-place minor upgrade or a blue-green cluster swap with a four hour window

Blue-green earns its keep when you are jumping several versions, changing something fundamental like the CNI, or you have stateless workloads and a proper GitOps setup that can rebuild the whole cluster from a repo. Two minor versions with StatefulSets is not that case. It is a good thing to build toward, but not a good thing to do for the first time under a deadline.

121 · in/k8s-ops ·