I could not find this in the documentation. Neither could I figure this out by trying on a running cluster.
An index is created with defer_build=true. So the index is created but it is not built i.e. only the definition is present but structure/data is not created. My question is: when will the server build it? Will it be built only when somebody manually executes the “build” command? Not until then?
If so, what is the advantage of defer_build=true? Because then its as good as if the index never existed!
BUILD INDEX is capable of building multiple indexes at once, and can utilize a single scan of documents in the bucket to feed many index build operations.
So defer_build is “do_not_build”. Its not “build at a later stage” OR “build in the background” OR “build asynchronously”.
It seemed as if it might get built on first access. But its neither of those. So its like creating and saving, just the definition. Seems a bit unintuitive but anyways…