GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — updateConfiguration with a scope id returns the global value in its response · Issue #14638 · apache/cloudstack

updateConfiguration with a scope id returns the global value in its response #14638

New issue
Copy link
New issue
Copy link
Open
#14641
Open
updateConfiguration with a scope id returns the global value in its response#14638
#14641
Copy link
Milestone
24.0

Description

@bhouse-nexthop
bhouse-nexthop
opened on Nov 9, 2026
Issue body actions

problem

On main, updateConfiguration with a scope id (zoneid, clusterid, storageid, accountid, domainid, imagestoreuuid or managementserverid) returns the global value of the setting in its response, not the value that was just set. The scoped value is stored correctly. listConfigurations with the same scope id shows it, and it takes effect.

$ cmk update configuration name=drs.algorithm value=condensed clusterid=<cluster>
{"name": "drs.algorithm", "value": "balanced", "scope": "cluster", ...}   <- global value
$ cmk list configurations name=drs.algorithm clusterid=<cluster>
... "value": "condensed"                                                   <- the value that was set

A script or UI that checks the response sees the wrong value.

Cause:

  • ConfigurationManagerImpl.updateConfiguration(UpdateCfgCmd) ends with return _configDao.findByName(name);. That is the global configuration row, whatever the scope.
  • Since api,server: normalize string empty value on config update #11770, UpdateCfgCmd.setResponseValue() copies cfg.getValue() into the response. Before that change, it echoed the value from the request. So for a scoped update, the response now has the global value.

The same applies to the implicit scope a domain admin or a user gets when they call the API without a scope id.

versions

main (24.0.0-SNAPSHOT), since #11770. 4.22 and earlier echo the value from the request and are not affected.

The steps to reproduce the bug

  1. Note the global value of a cluster-scoped setting, for example drs.algorithm (balanced by default).
  2. updateConfiguration name=drs.algorithm value=condensed clusterid=<cluster>.
  3. The response's value is balanced.
  4. listConfigurations name=drs.algorithm clusterid=<cluster> returns condensed.

What to do about it?

Have updateConfiguration return the value that was set in the requested scope when a scope is given. The inner updateConfiguration(...) already returns that value, after normalization (for example, lowercased booleans).

Activity

  1. github-actions commented on Nov 10, 2026

    @github-actions
    github-actionsBot
    on Nov 10, 2026 – with GitHub Actions
    More actions

    Warning

    threat detection engine error
    The threat detection engine encountered an error and could not complete analysis. This is a tooling failure, not a security finding.

    What happened

    The threat detection engine failed to produce results.

    Review the workflow run logs for details.

    🎯 Triage report

    On main, updateConfiguration with a scope id (zone, cluster, account and so on) returns the global value in its response. The scoped value is stored and takes effect, and listConfigurations shows it. The response has read the global row since #11770, so scripts that check it see the wrong value. PR #14641 is open to return the scoped value.

    📊 Assessment

    Dimension Value Reasoning
    Type type:bug The response does not match the stored value
    Component component:api ConfigurationManagerImpl.updateConfiguration and UpdateCfgCmd
    Severity Severity:Minor The setting is stored correctly; only the response is wrong
    Labels type:bug, component:api, Severity:Minor
    Coding agent Suitable Fix is specified and a PR is open
    💡 Notes and suggestions
    • No similar open issues were found beyond the PR above.
    • Reproduction: note the global value of drs.algorithm, call updateConfiguration with clusterid, then compare the response with listConfigurations.
    • The report says the implicit scope for domain admins and users has the same problem.

    Generated by Daily Issue Triage · copilot · haiku55 · ~5 AIC · ⊞ 3.8K · ◷

    Add this agentic workflow to your repo

    To install this agentic workflow, run

    gh aw add githubnext/agentics/workflows/daily-issue-triage.md@139fa09ef17cde4135e696ff8e7af09bc5ddfa6e
    
  2. DaanHoogland
    added this to the 24.0 milestone on Nov 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      • 24.0No due date

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      You are visitor 01402520 — GeezerVison does not store the pages you look up.
      Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.