Skip to content

A way to force the deployment to fail in case of the missing profile in the schema #37429

Description

@DaniilRoman

Is your feature request related to a problem? Please describe.
When I'm constructing the schema and I'm adding a profile, for instance, like here:

 field keywords type string {
      indexing {
        "de" | set_language;
        input keywords | index | summary;
      }
      linguistics {
        profile {
          index: keywords_index_profile
        }
      }
    }

and Vespa doesn't findkeywords_index_profile for instance, it will fallback to some default logic and this mistake will be silently ignored instead of failing the deployment to help noticing the issue rather sooner and avoid deploying the broken artifacts

Describe the solution you'd like
That would be helpful to have a configuration toggle to force deployment to fail if the profile is missing in the settings.xml during the deployment

Describe alternatives you've considered

  • The current the "silent fallback" approach leads to the deploying the wrong schema that could be verified during the deployment time
  • Logging the warning or error can improve the observability a little bit but it still hard to automate the monitoring and responding to these logs during the development

Additional context
Since we can specify a profile at query time, can we still differentiate these 2 use cases and force the deployment to fail if during the deployment we already know that schema isn't aligned with the services.xml?

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions