Skip to content

Values not loaded from Parameter Store if parameter name contains a digit surrounded with underscores #1573

Description

@Holuo01

Type: Bug

Component: Parameter Store

Describe the bug
When values are being loaded from Prameter Store on app startup, if the parameter name contains a digit surrounded with underscores it will not load from paramstore, instead falling back to the default value, while other parameters are injected correctly:

Image Image

Sample
yaml file:

debug:
  testParams:
    oneNumber:        ${WORD_2_WORD_WORD:placeholder}
    letterNumber:     ${WORD_W2_WORD_WORD:placeholder}
    numberLetter:     ${WORD_2W_WORD_WORD:placeholder}
    singleLetter:     ${WORD_W_WORD_WORD:placeholder}

config class:

package org.myapp.config;

import lombok.Getter;
import lombok.Setter;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;

import java.util.Map;

@Configuration
@Getter
@Setter
@ConfigurationProperties(prefix = "debug")
public class DebugConfig {

    private Map<String, String> testParams;
}

service class:

package org.myapp.service.util;

import org.myapp.config.DebugConfig;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;

@Service
@Slf4j
public class DebugService {

    public DebugService(DebugConfig config) {

        for (String param : config.getTestParams().keySet()) {
            log.info("Value for {}: {}", param, config.getTestParams().get(param));
        }
    }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions