modellerUpdated 2026-04-18

Deploy a Model

Model Builder toolbar showing the Deploy and Undeploy buttons.

What this covers

A model in Tessallite is in one of two states: Deployed or Ready. Only deployed models are visible to BI tools (Excel, Power BI), accept queries through the query router, and have their aggregates refreshed by the scheduler. Ready models are draft state — you can edit them freely, but nothing downstream sees them. This article covers deploying, undeploying, and the difference between the two states.

Before you start

Deploying a model

  1. Open the Model Builder.
  2. Make sure the status chip reads Saved v{N} (not Edited — Tessallite refuses to deploy edited state, because there is no version to deploy).
  3. Click the Deploy button (rocket icon). Tessallite sets the model's deploy pointer to the latest saved version and stamps last_deployed_at.
  4. The status chip changes to Deployed v{N}.
  5. Within seconds the query router, scheduler, and XMLA gateway start serving the model.

If the model has never been saved, clicking Deploy first prompts you to confirm Save-and-Deploy in one click.

Undeploying a model

  1. Open the Model Builder for a deployed model.
  2. Click the Undeploy button (stop icon).
  3. Type undeploy in the confirmation box and click Undeploy.
  4. The deploy pointer is cleared. BI tools stop seeing the model immediately. The scheduler stops refreshing its aggregates.

The model's saved versions stay intact. You can re-deploy any of them later via the Versions dialog.

Deploying or undeploying from the Explorer

Two model cards in the project Explorer — one Deployed with an Undeploy button, one Ready with a Deploy button.

Each model card in the project Explorer shows a single toggling button:

This is useful for oncall scenarios where you just need to flip one model without jumping into the Builder for each one.

Deployed vs Ready

BehaviourDeployedReady
Visible to Excel / Power BI / other BI toolsYesNo (XMLA gateway hides it)
Accepts queries from the query routerYesNo (returns 409)
Aggregates refreshed by the schedulerYesNo
Schema-drift sweep runs against itYesNo
Editable in Model BuilderYes (edits are unsaved)Yes

What deploying freezes

When you deploy, Tessallite takes a snapshot of the model's shape — its measures (names, formulas, aggregation, type), dimensions, hierarchy levels, and which columns are hidden — and serves that snapshot to BI tools. This is called pinning.

Pinning is what makes your draft edits safe. After a model is deployed you can keep working in the Builder: rename a measure, change a formula from SUM(amount) to SUM(amount) - SUM(discount), un-hide a column, add a hierarchy level. None of those edits reach Excel, Power BI, or the query router until you Save and Deploy again. BI tools keep seeing the deployed version exactly as it was, so a report never changes underneath the person reading it just because someone happened to be editing the model.

Three things are deliberately not frozen, because they are safety controls that must take effect immediately:

Worked example. You deploy v3 of a Sales model on Monday. On Tuesday you start reworking the Revenue measure but do not Deploy. An analyst querying from Excel all week still sees the v3 Revenue. On Friday your rework is ready; you Save and Deploy, and only then does the new Revenue reach BI tools. But if on Wednesday you had tightened a row-security rule, that restriction would have applied immediately — security is never left waiting.

Choosing which version to deploy

The default Deploy action deploys the latest saved version. To deploy an older version:

  1. Open the Versions dialog (clock icon).
  2. Find the version you want.
  3. Click Deploy on that row.

The deploy pointer jumps; older saved versions are not deleted.

Tips

Related articles