You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
feat(Core/Pdump): add config to specify default directory for pdump files - #28270
This PR adds a new configuration key: PlayerDump.Dir. Currently, if PlayerDump.DisallowPaths is enabled, all player dumps are written in the CWD of the worldserver process. This is problematic when running in a container (via Docker or Podman) as that folder is not usually mounted as a volume.
Having a worldserver setting which allows the server operator to specify where to load/write dumps enables them to mount a volume specifically for player dumps, which may then be shared with other external software.
The default value is empty as to not break the current behaviour.
AI-assisted Pull Requests
Important
Using AI tools to prepare pull requests is allowed, but it must be disclosed and it must follow our AC guidelines for AI Agentic Engineering (link below).
You are expected to fully understand the changes you submit and to be able to explain and justify them when maintainers ask.
AI tools (e.g. Claude, ChatGPT, or similar) were used entirely or partially to prepare this pull request. If checked, specify which tools and models below.
Note: Claude was used in plan mode to identify the areas where changes needed to occur. Changes were mostly written by hand, except for a member renaming pass to ensure that the name of the setting and functions match established guidelines.
Issues Addressed:
SOURCE:
The changes have been validated through:
Live research (checked on live servers, e.g Classic WotLK, Retail, etc.)
Sniffs (remember to share them with the open source community!)
Video evidence, knowledge databases or other public sources (e.g forums, Wowhead, etc.)
The changes promoted by this pull request come partially or entirely from another project (cherry-pick). Cherry-picks must be committed using the proper --author tag in order to be accepted, thus crediting the original authors, unless otherwise unable to be found
N/A
Tests Performed:
This PR has been:
Tested on a test server, running under Podman 6.1.4
Tested in-game by the author.
Tested in-game by other community members/someone else other than the author/has been live on production servers.
This pull request requires further testing and may have edge cases to be tested.
How to Test the Changes:
This pull request can be tested by following the reproduction steps provided in the linked issue
This pull request requires further testing. Provide steps to test your changes. If it requires any specific setup e.g multiple players please specify it as well.
Compile and containerize AzerothCore
Create a volume mount for a directory of your choice within the container
Configure PlayerDump.Dir to the in-container path of your volume as created in step 2.
Use .pdump write
Known Issues and TODO List:
None
How to Test AzerothCore PRs
When a PR is ready to be tested, it will be marked as [WAITING TO BE TESTED].
You can help by testing PRs and writing your feedback here on the PR's page on GitHub. Follow the instructions here:
REMEMBER: when testing a PR that changes something generic (i.e. a part of code that handles more than one specific thing), the tester should not only check that the PR does its job (e.g. fixing spell XXX) but especially check that the PR does not cause any regression (i.e. introducing new bugs).
For example: if a PR fixes spell X by changing a part of code that handles spells X, Y, and Z, we should not only test X, but we should test Y and Z as well.
Reviewing files that changed from the base of the PR and between 3179ea3 and 8a1c3ed.
Files selected for processing: 4
src/server/apps/worldserver/worldserver.conf.dist
src/server/game/Tools/PlayerDump.cpp
src/server/game/World/WorldConfig.cpp
src/server/game/World/WorldConfig.h
Included review availability: This review used your included allowance. Your plan provides up to 8 included reviews per hour; 7 remain after this review.
Walkthrough
The server configuration adds PlayerDump.Dir, with an empty-string default. Dump writes join this directory with the requested filename and create the directory tree when needed. Dump loads also resolve filenames relative to the configured directory.
Priority: Normal
Merge Risk: Minimal · up to 8a1c3
No concrete merge-blocking defect was found in the changed configuration or dump path handling.
- [ ] Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
CORERelated to the corefile-cppUsed to trigger the matrix build
1 participant
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Changes Proposed:
This PR proposes changes to:
This PR adds a new configuration key:
PlayerDump.Dir. Currently, ifPlayerDump.DisallowPathsis enabled, all player dumps are written in the CWD of theworldserverprocess. This is problematic when running in a container (via Docker or Podman) as that folder is not usually mounted as a volume.Having a
worldserversetting which allows the server operator to specify where to load/write dumps enables them to mount a volume specifically for player dumps, which may then be shared with other external software.The default value is empty as to not break the current behaviour.
AI-assisted Pull Requests
Important
Using AI tools to prepare pull requests is allowed, but it must be disclosed and it must follow our AC guidelines for AI Agentic Engineering (link below).
You are expected to fully understand the changes you submit and to be able to explain and justify them when maintainers ask.
Note: Claude was used in plan mode to identify the areas where changes needed to occur. Changes were mostly written by hand, except for a member renaming pass to ensure that the name of the setting and functions match established guidelines.
Issues Addressed:
SOURCE:
The changes have been validated through:
Tests Performed:
This PR has been:
How to Test the Changes:
Known Issues and TODO List:
None
How to Test AzerothCore PRs
When a PR is ready to be tested, it will be marked as [WAITING TO BE TESTED].
You can help by testing PRs and writing your feedback here on the PR's page on GitHub. Follow the instructions here:
http://www.azerothcore.org/wiki/How-to-test-a-PR
REMEMBER: when testing a PR that changes something generic (i.e. a part of code that handles more than one specific thing), the tester should not only check that the PR does its job (e.g. fixing spell XXX) but especially check that the PR does not cause any regression (i.e. introducing new bugs).
For example: if a PR fixes spell X by changing a part of code that handles spells X, Y, and Z, we should not only test X, but we should test Y and Z as well.