Why can't I query my stable view name?

Knowledge Drop

Last tested: Mar 23, 2020

You will not be able to query the stable view name until the PDT rebuilds - meaning either you

  1. change the SQL and push that to production (which causes a rebuild) or
  2. manually rebuild the PDT or
  3. the PDT is organically rebuilt by the regenerator or
  4. the PDT is organically rebuilt when a query comes in and its persist_for is expired

The stable view will only be published after its underlying PDT is naturally rebuilt by Looker.

If you create a PDT for the first time with publish_as_db_view:yes then the first time it’s built it’ll have the flag. The confusing case happens when you’ve already got some PDT that you want to add publish_as_db_view to; when you add it and push to production you might expect to immediately be able to query that stable view, but you can’t - you need the PDT to build/rebuild before it picks up the flag