quickwit-oss/quickwit · error · anyhow::Error

conflicting configuration values: please use only…

Error message

conflicting configuration values: please use only `rest.listen_port`, `rest_listen_port` is deprecated and should not be used alongside `rest.listen_port`. Update your configuration to use `rest.listen_port`.

What it means

Error "conflicting configuration values: please use only `rest.listen_port`, `rest_listen_port` is deprecated and should not be used alongside `rest.listen_port`. Update your configuration to use `rest.listen_port`." thrown in quickwit-oss/quickwit.

Solutions

  1. Remove the deprecated top-level `rest_listen_port` key and keep only `rest.listen_port` in the config file
  2. Remove the corresponding deprecated environment variable if both are set
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at quickwit/quickwit-config/src/node_config/serialize.rs:282 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of quickwit-oss/quickwit@a39730c5cd (2026-09-08). Data as JSON: /api/errors/36aedbe817ce0b39. Report an issue: GitHub.

Appendix: source

Thrown at quickwit/quickwit-config/src/node_config/serialize.rs:282

        let resolved_enabled_services: HashSet<QuickwitService> =
            if let Some(enabled_services) = enabled_services {
                enabled_services.clone()
            } else {
                self.enabled_services
                    .resolve(env_vars)?
                    .0
                    .into_iter()
                    .map(|service| service.parse())
                    .collect::<Result<_, _>>()?
            };

        let listen_address = self.listen_address.resolve(env_vars)?;
        let listen_host = listen_address.parse::<Host>()?;
        let listen_ip = listen_host.resolve().await?;

        if let Some(rest_listen_port) = self.rest_listen_port {
            if self.rest_config_builder.listen_port.is_some() {
                bail!(
                    "conflicting configuration values: please use only `rest.listen_port`, \
                     `rest_listen_port` is deprecated and should not be used alongside \
                     `rest.listen_port`. Update your configuration to use `rest.listen_port`."
                );
            }
            warn!("`rest_listen_port` is deprecated, use `rest.listen_port` instead");
            self.rest_config_builder.listen_port = Some(rest_listen_port);
        }

        let rest_config = self
            .rest_config_builder
            .build_and_validate(listen_ip, env_vars)?;

        let health_config = self.health_config_builder.build(listen_ip, env_vars)?;

        self.grpc_config.validate()?;

        let gossip_listen_port = self

View on GitHub (pinned to a39730c5cd)