apache / apache/polaris

Some feature flags not working when set via environment variables in ECS task

Open
#3,255 5 comments 0 reactions 0 assignees View on GitHub
stale
Dominant language
Java
Stars
2.1k
Forks
522
Avg merge
1d 22h
Merged PRs (30d)
137

Description

### Describe the bug

Polaris feature flags work when defined in application.properties inside the Docker image, but do not take effect when provided as environment variables in an ECS task definition.

The following environment variables were added to the container:
POLARIS_FEATURES_ALLOW_OPTIMIZED_SIBLING_CHECK: 'true',
POLARIS_FEATURES_OPTIMIZED_SIBLING_CHECK: 'true',
POLARIS_FEATURES_REALM_OVERRIDES_POLARIS_ALLOW_TABLE_LOCATION_OVERLAP: 'true'

However, none of these were picked up by Polaris at runtime.

When the equivalent flags were added directly to application.properties, they worked as expected:

polaris.features.ALLOW_OPTIMIZED_SIBLING_CHECK=true
polaris.features.OPTIMIZED_SIBLING_CHECK=true
polaris.features.realm-overrides.POLARIS.ALLOW_TABLE_LOCATION_OVERLAP=true

### To Reproduce

_No response_

### Actual Behavior

_No response_

### Expected Behavior

_No response_

### Additional context

_No response_

### System information

_No response_

Contributor guide

Open the contributing guide

Research direction

Start with the application.properties configuration and the ECS task definition, then trace how the listed POLARIS_FEATURES_* environment variables are mapped at runtime. Compare the environment-variable names with the working property names; done means each listed flag takes effect from the ECS task definition as it does from application.properties.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws, docker, java
Domain
backend, devops
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.