Skip to content

[MINOR][PYTHON] Fix wrong expected_type in DataFrame.sort ascending type error#57522

Open
nikolauspschuetz wants to merge 1 commit into
apache:masterfrom
nikolauspschuetz:minor-sort-ascending-expected-type
Open

[MINOR][PYTHON] Fix wrong expected_type in DataFrame.sort ascending type error#57522
nikolauspschuetz wants to merge 1 commit into
apache:masterfrom
nikolauspschuetz:minor-sort-ascending-expected-type

Conversation

@nikolauspschuetz

Copy link
Copy Markdown
Contributor

What changes were proposed in this pull request?

DataFrame.sort / orderBy / sortWithinPartitions raise NOT_EXPECTED_TYPE for an invalid ascending argument with expected_type = "Column, int or str". But ascending accepts bool, int, or list — never Column or str. The literal was copied from the column-argument error a few lines above in _preapare_cols_for_sort. This corrects it to "bool, int or list".

Why are the changes needed?

The message names types ascending never accepts (Column, str) and omits the ones it does (bool, list), misleading users about how to fix the call. The ascending parameter is documented as bool or list.

Does this PR introduce any user-facing change?

Yes, the error message changes.

Before:

[NOT_EXPECTED_TYPE] Argument `ascending` should be Column, int or str, got str.

After:

[NOT_EXPECTED_TYPE] Argument `ascending` should be bool, int or list, got str.

How was this patch tested?

Added test_sort_ascending_invalid_type in python/pyspark/sql/tests/test_dataframe.py asserting the corrected expected_type. Verified against a released pyspark session: df.sort("age", ascending="asc") reports bool, int or list with the fix (previously Column, int or str); valid ascending values (False, [True]) are unaffected.

Was this patch authored or co-authored using generative AI tooling?

Generated-by: Claude Code (Opus 4.8)

@nikolauspschuetz
nikolauspschuetz marked this pull request as ready for review July 25, 2026 19:26
@uros-b

uros-b commented Jul 26, 2026

Copy link
Copy Markdown
Member

Thank you @nikolauspschuetz!

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.

2 participants