Skip to content

GH-45099: [C++] Avoid static const variable in the status.h#45100

Merged
wgtmac merged 2 commits intoapache:mainfrom
wgtmac:status
Dec 25, 2024
Merged

GH-45099: [C++] Avoid static const variable in the status.h#45100
wgtmac merged 2 commits intoapache:mainfrom
wgtmac:status

Conversation

@wgtmac
Copy link
Copy Markdown
Member

@wgtmac wgtmac commented Dec 23, 2024

Rationale for this change

The Status::message function below has defined a static const string in the header file which may cause troubles in different translation units.

  const std::string& message() const {
    static const std::string no_message = "";
    return ok() ? no_message : state_->msg;
  }

What changes are included in this PR?

Move the definition of Status::message function into the source file.

Are these changes tested?

Pass CIs.

Are there any user-facing changes?

No.

@github-actions
Copy link
Copy Markdown

⚠️ GitHub issue #45099 has been automatically assigned in GitHub to PR creator.

Copy link
Copy Markdown
Member

@kou kou left a comment

Choose a reason for hiding this comment

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

+1

Comment thread cpp/src/arrow/status.h Outdated
const std::string& message() const;

/// \brief Return the status detail attached to this message.
const std::shared_ptr<StatusDetail>& detail() const {
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Do we need to do the same thing for this too?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I thought this is fine because it is nullptr. But it doesn't hurt to fix it as well.

@github-actions github-actions Bot added awaiting review Awaiting review awaiting merge Awaiting merge and removed awaiting review Awaiting review labels Dec 23, 2024
@github-actions github-actions Bot added awaiting review Awaiting review awaiting committer review Awaiting committer review and removed awaiting review Awaiting review awaiting merge Awaiting merge labels Dec 23, 2024
@wgtmac wgtmac merged commit a2f1988 into apache:main Dec 25, 2024
@wgtmac wgtmac removed the awaiting committer review Awaiting committer review label Dec 25, 2024
@conbench-apache-arrow
Copy link
Copy Markdown

After merging your PR, Conbench analyzed the 4 benchmarking runs that have been run so far on merge-commit a2f1988.

There were no benchmark performance regressions. 🎉

The full Conbench report has more details. It also includes information about 29 possible false positives for unstable benchmarks that are known to sometimes produce them.

vitlibar pushed a commit to ClickHouse/arrow that referenced this pull request Aug 3, 2025
…ache#45100)

### Rationale for this change

The `Status::message` function below has defined a static const string in the header file which may cause troubles in different translation units.

```
  const std::string& message() const {
    static const std::string no_message = "";
    return ok() ? no_message : state_->msg;
  }
```

### What changes are included in this PR?

Move the definition of `Status::message` function into the source file.

### Are these changes tested?

Pass CIs.

### Are there any user-facing changes?

No.
* GitHub Issue: apache#45099

Authored-by: Gang Wu <ustcwg@gmail.com>
Signed-off-by: Gang Wu <ustcwg@gmail.com>
(cherry picked from commit a2f1988)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants