Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions docker/runtime/doris-compose/cluster.py
Original file line number Diff line number Diff line change
Expand Up @@ -862,6 +862,9 @@ def docker_env(self):
time.strftime("%Y%m%d_%H%M%S"),
uuid.uuid4().hex[:8],
)
base_prefix = envs.get('DORIS_CLOUD_PREFIX', '').strip().strip('/')

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This only applies the base-prefix rewrite on MS containers, but the --external-ms flow creates the instance from FE-1 instead. In that path FE.docker_env() sets AUTO_CREATE_INSTANCE=1 and carries the user env through unchanged, then init_fe.sh calls create_doris_instance, which sends ${DORIS_CLOUD_PREFIX} directly as the storage prefix. So --env DORIS_CLOUD_PREFIX=base works for a normal cloud cluster as base/doris_docker_env_..., but an external-MS cluster stores everything under just base, causing different external-MS clusters that share the same bucket/base to collide. Please share this prefix composition with the FE auto-create path, or otherwise ensure the generated per-cluster suffix is applied before FE-1 creates the instance.

if base_prefix:
prefix = '{}/{}'.format(base_prefix, prefix)
envs['DORIS_CLOUD_PREFIX'] = prefix
LOG.info(f"Set DORIS_CLOUD_PREFIX to {prefix}")
return envs
Expand Down
Loading