Skip to content

HDDS-14976. xml_to_md.py does not handle generated XML files#10044

Open
adoroszlai wants to merge 2 commits intoapache:masterfrom
adoroszlai:HDDS-14976
Open

HDDS-14976. xml_to_md.py does not handle generated XML files#10044
adoroszlai wants to merge 2 commits intoapache:masterfrom
adoroszlai:HDDS-14976

Conversation

@adoroszlai
Copy link
Copy Markdown
Contributor

What changes were proposed in this pull request?

dev-support/ci/xml_to_md.py reads only ozone-default.xml. It misses other, generated XML files, e.g. hdds-common-default.xml.

  • Handle all -default.xml config files, but skip network-topology-default.xml (which is a different kind of config). Also skip ozone-filesystem-hadoop shaded jar files, which contain contents from several other jars, no own config.
  • Further tweak default values to handle special value:
    <name>httpfs.services</name>
    <value>
    org.apache.ozone.lib.service.instrumentation.InstrumentationService,
    org.apache.ozone.lib.service.scheduler.SchedulerService,
    org.apache.ozone.lib.service.security.GroupsService,
    org.apache.ozone.lib.service.hadoop.FileSystemAccessService
    </value>

https://issues.apache.org/jira/browse/HDDS-14976

How was this patch tested?

Generated config doc:

python3 dev-support/ci/xml_to_md.py hadoop-ozone/dist/target after.md

verified missing properties (e.g. ozone.tracing.*) are present.

https://github.com/adoroszlai/ozone/actions/runs/23983488947/job/69952049151

@adoroszlai adoroszlai self-assigned this Apr 4, 2026
@adoroszlai adoroszlai requested a review from sarvekshayr April 4, 2026 17:23
@Russole
Copy link
Copy Markdown
Contributor

Russole commented Apr 5, 2026

Thanks @adoroszlai for the patch. Overall, LGTM. I just have a few minor comments.

Copy link
Copy Markdown
Contributor

@rich7420 rich7420 left a comment

Choose a reason for hiding this comment

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

thanks for the patch @adoroszlai

Comment on lines 59 to 60
name = prop.findtext('name')
if not name:
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.

I noticed that some property names still contain trailing newlines in the generated markdown (e.g. wrapped to the next line).

This seems unrelated to this change, but it might be worth normalizing name as well when parsing the XML, similar to how description is handled, for example:

name = prop.findtext('name')
name = ' '.join(name.split()).strip() if name else ''

This would help prevent formatting issues in the generated table. For example, some entries are currently rendered like:

| `hdds.container.ratis.ipc.random.port
` | false | `OZONE`, `DEBUG` | Allocates a random free port for ozone ratis port for the container. This is used only while running unit tests. |
| `hdds.container.ratis.leader.pending.bytes.limit
` | 1GB | `OZONE`, `RATIS`, `PERFORMANCE` | Limit on the total bytes of pending requests after which leader starts rejecting requests from client. |
| `hdds.container.ratis.log.appender.queue.byte-limit
` | 32MB | `OZONE`, `DEBUG`, `CONTAINER`, `RATIS` | Byte limit for ratis leader's log appender queue. |

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants