Skip to content

Add documentation about performance PRs, add (TBD) section on feature criteria #12372

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Merged
merged 2 commits into from
Sep 9, 2024

Conversation

alamb
Copy link
Contributor

@alamb alamb commented Sep 7, 2024

Which issue does this PR close?

Related to #12357

Rationale for this change

I think there is some "common knowledge" that is not explicitly written down anywhere

Specifically, that performance improvements should be accompanied by benchmark results (most recently this came up in #12270)

What changes are included in this PR?

  1. Document need for benchmarks for performance PRs
  2. Add a section (without content) for the outcome of [DISCUSS] Document criteria for adding new features / what belongs in core DataFusion (e.g. sql syntax, functions, etc) #12357
  3. Some other "drive by" documentation improvements

Note I am not trying to change anything, only document the current reality.

Are these changes tested?

by doc CI

Are there any user-facing changes?

Docs

@alamb alamb added the documentation Improvements or additions to documentation label Sep 7, 2024
@alamb alamb changed the title Minor: Add documentation about performance PRs, add (TBD) section on criteroa Minor: Add documentation about performance PRs, add (TBD) section on feature criteria Sep 7, 2024
2. Is the code clear, and fits the style of the existing codebase?

## Performance Improvements
Copy link
Contributor Author

Choose a reason for hiding this comment

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

This is the new content


Please ensure any issues you raise contains a rationale and suggested alternative -- it is frustrating to be told "don't do it this way" without any clear reason or alternate provided.

Some things to specifically check:

1. Is the feature or fix covered sufficiently with tests (see `Test Organization` below)?
1. Is the feature or fix covered sufficiently with tests (see the [Testing](testing.md) section)?
Copy link
Contributor Author

Choose a reason for hiding this comment

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

added link (there is actually no Testing Organization section anymore below)

@alamb alamb changed the title Minor: Add documentation about performance PRs, add (TBD) section on feature criteria Add documentation about performance PRs, add (TBD) section on feature criteria Sep 7, 2024
- [System level SQL Benchmarks](https://github.com/apache/datafusion/tree/main/benchmarks)
- Microbenchmarks such as those in [functions/benches](https://github.com/apache/datafusion/tree/main/datafusion/functions/benches)

If there is no suitable existing benchmark, you can create a new one. It helps
Copy link
Contributor

Choose a reason for hiding this comment

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

This is a good point, very often reviewing PRs we have to ask showing the actual performance benefit with existing benches or other performance tests

Copy link
Contributor

@comphead comphead left a comment

Choose a reason for hiding this comment

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

lgtm, thanks @alamb it looks more clear now

Copy link
Member

@Weijun-H Weijun-H left a comment

Choose a reason for hiding this comment

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

LGTM! Thanks @alamb This change makes the guide more friendly, especially for newcomers.

@comphead comphead merged commit 275fb1b into apache:main Sep 9, 2024
7 checks passed
@alamb alamb deleted the alamb/pr_docs branch September 10, 2024 12:46
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants