Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

fix: handle distinct for fieldname #25511

Merged
merged 1 commit into from
Mar 18, 2024
Merged

Conversation

ankush
Copy link
Member

@ankush ankush commented Mar 18, 2024

distinct count(fieldname) is supported well but count(distinct fieldname) fails if fieldname contains full field with table name included. This PR just adds basic handling for it.

Needs to be rewritten entirely in QB some day.

@ankush ankush requested a review from a team as a code owner March 18, 2024 12:54
@ankush ankush requested review from akhilnarang and removed request for a team March 18, 2024 12:54
@ankush ankush enabled auto-merge (squash) March 18, 2024 12:55
@ankush ankush added backport version-14-hotfix backport to version 14 backport version-15-hotfix Backport the PR to v15 labels Mar 18, 2024
@ankush ankush disabled auto-merge March 18, 2024 12:56
@ankush ankush enabled auto-merge (squash) March 18, 2024 13:03
`distinct count(fieldname)` is supported well but `count(distinct fieldname)` fails if fieldname contains full field with table name included. This PR just adds basic handling for it.

Needs to be rewritten entirely in QB __some day__.
@ankush ankush merged commit 8a7beeb into frappe:develop Mar 18, 2024
19 of 23 checks passed
@ankush ankush deleted the list_distinct branch March 18, 2024 13:38
mergify bot pushed a commit that referenced this pull request Mar 18, 2024
`distinct count(fieldname)` is supported well but `count(distinct fieldname)` fails if fieldname contains full field with table name included. This PR just adds basic handling for it.

Needs to be rewritten entirely in QB __some day__.

(cherry picked from commit 8a7beeb)

# Conflicts:
#	frappe/model/db_query.py
#	frappe/tests/test_db_query.py
mergify bot pushed a commit that referenced this pull request Mar 18, 2024
`distinct count(fieldname)` is supported well but `count(distinct fieldname)` fails if fieldname contains full field with table name included. This PR just adds basic handling for it.

Needs to be rewritten entirely in QB __some day__.

(cherry picked from commit 8a7beeb)

# Conflicts:
#	frappe/model/db_query.py
ankush added a commit that referenced this pull request Mar 18, 2024
* fix: handle distinct for fieldname (#25511)

`distinct count(fieldname)` is supported well but `count(distinct fieldname)` fails if fieldname contains full field with table name included. This PR just adds basic handling for it.

Needs to be rewritten entirely in QB __some day__.

(cherry picked from commit 8a7beeb)

# Conflicts:
#	frappe/model/db_query.py
#	frappe/tests/test_db_query.py

* chore: conflicts

---------

Co-authored-by: Ankush Menat <ankush@frappe.io>
ankush added a commit that referenced this pull request Mar 19, 2024
`distinct count(fieldname)` is supported well but `count(distinct fieldname)` fails if fieldname contains full field with table name included. This PR just adds basic handling for it.

Needs to be rewritten entirely in QB __some day__.

(cherry picked from commit 8a7beeb)

# Conflicts:
#	frappe/model/db_query.py

Co-authored-by: Ankush Menat <ankush@frappe.io>
frappe-pr-bot pushed a commit that referenced this pull request Mar 19, 2024
# [15.18.0](v15.17.3...v15.18.0) (2024-03-19)

### Bug Fixes

* add params in make_request arguments ([#25418](#25418)) ([18cf09b](18cf09b))
* allow transitioning to long text (backport [#25419](#25419)) ([#25475](#25475)) ([dbb326e](dbb326e))
* avoid closing filter popover on any date picker interactions ([cd98a21](cd98a21))
* Avoid setting filter on now/today button ([592e6f9](592e6f9))
* better filename for prepared report ([8eb1b24](8eb1b24))
* child table rating fields ([#25433](#25433)) ([#25436](#25436)) ([6f242ca](6f242ca))
* consider all datepicker elements ([#25426](#25426)) ([361fbfe](361fbfe))
* **ControlText:** Preserve indentation when read only ([#25262](#25262)) ([#25469](#25469)) ([c783f22](c783f22))
* debounce filter refresh ([9b75187](9b75187))
* default filter setup on todo list ([#25455](#25455)) ([#25464](#25464)) ([21e1280](21e1280))
* dont add trailing decimal separator ([#25389](#25389)) ([#25391](#25391)) ([760d9b2](760d9b2))
* dont add useless distinct clause ([8891e8e](8891e8e))
* dont render very large reports, offer export instead ([3f0760c](3f0760c))
* dont show tooltip if already limited ([#25361](#25361)) ([eb8b9f4](eb8b9f4))
* escape text types before setting disp area ([#25520](#25520)) ([#25523](#25523)) ([bc83b24](bc83b24))
* escape value in multiselect pill ([#25516](#25516)) ([#25518](#25518)) ([236a3b5](236a3b5))
* exclude irrelevant regional links ([#25510](#25510)) ([#25512](#25512)) ([9fe8b6a](9fe8b6a))
* filters can use more than 140 chars ([2d2b4a9](2d2b4a9))
* handle distinct for fieldname ([#25511](#25511)) ([#25515](#25515)) ([9168b0f](9168b0f))
* handle invalid fetch from split ([fa131ca](fa131ca))
* handle meta.fields being undefined ([#25539](#25539)) ([01cca38](01cca38))
* handle parent rename in child workspace ([ef3d068](ef3d068))
* hide datepicker after picking date ([d91a2b8](d91a2b8))
* **json_handler:** handle `uuid.UUID` ([ebaaa6b](ebaaa6b)), closes [#25242](#25242)
* Log ipython commands (backport [#25364](#25364)) ([#25368](#25368)) ([a2ebb4e](a2ebb4e))
* log mariadb console usage ([9797457](9797457))
* log psql console usage as well (backport [#25417](#25417)) ([#25423](#25423)) ([f0fa5d1](f0fa5d1))
* prevent TypeError if doc not defined ([#25540](#25540)) ([6b23504](6b23504))
* **QuickEntry:** Don't allow Tab Breaks ([#24950](#24950)) ([#25468](#25468)) ([a31943e](a31943e))
* **recorder:** handle frappe.db.sql(run=0) ([#25450](#25450)) ([#25454](#25454)) ([d130777](d130777))
* Respect document language in communication ([#25402](#25402)) ([#25403](#25403)) ([0d09b51](0d09b51))
* show attachments on notifications too ([#25443](#25443)) ([#25445](#25445)) ([371fa09](371fa09))
* skip setting of contact full name if its too long ([#25509](#25509)) ([d5685d7](d5685d7))
* skip virtual doctype in tags ([f18ac26](f18ac26))
* Skip virtual doctype rename for dynamic links ([#25479](#25479)) ([#25481](#25481)) ([3353488](3353488))
* Skip virtual doctypes while renaming ([#25473](#25473)) ([#25478](#25478)) ([aaacc51](aaacc51))
* support child tables in count with limit ([d8a797b](d8a797b))
* traceback colours ([#25356](#25356)) ([b6d2785](b6d2785))
* **UX:** let user see actual count on click ([5c1bca8](5c1bca8))
* validate homepage paths (backport [#25409](#25409)) ([#25412](#25412)) ([0aeaeeb](0aeaeeb))
* we want `DF.Literal[None]`, not `DF.LiteralNone` ([#25394](#25394)) ([f008eeb](f008eeb))

### Features

* connect to redis sentinel for redis cache ([#25398](#25398)) ([#25446](#25446)) ([498b1a4](498b1a4))
* debug stuck process by sending SIGUSR1 (backport [#25502](#25502)) ([#25527](#25527)) ([6c8cc5c](6c8cc5c))
* move bulk print operation to the background (backport [#25358](#25358)) ([#25397](#25397)) ([513487e](513487e))
* Store printed PDF attachments on communication ([#25439](#25439)) ([#25444](#25444)) ([bd15abc](bd15abc))
* support countig till a limit ([615800f](615800f))

### Performance Improvements

* Avoid ordering in count query ([#25451](#25451)) ([#25452](#25452)) ([07aadd3](07aadd3))
* compact prepared report files ([3adbb35](3adbb35))
* don't extract backups whenever possible ([#25350](#25350)) ([9c6fb8a](9c6fb8a)), closes [/github.com//pull/24898#discussion_r1521076386](https://github.com//github.com/frappe/frappe/pull/24898/issues/discussion_r1521076386)
* reduce import overhead on background jobs (backport [#25459](#25459)) ([#25460](#25460)) ([eab5b8d](eab5b8d))
* show estimated count on list view ([7ee9719](7ee9719))
frappe-pr-bot pushed a commit that referenced this pull request Mar 19, 2024
# [14.68.0](v14.67.1...v14.68.0) (2024-03-19)

### Bug Fixes

* allow exporting large reports that can't be rendered (backport [#25395](#25395)) ([#25404](#25404)) ([b3f4d5d](b3f4d5d))
* allow transitioning to long text (backport [#25419](#25419)) ([#25474](#25474)) ([60d8c1c](60d8c1c))
* avoid closing filter popover on any date picker interactions ([0784e61](0784e61))
* Avoid setting filter on now/today button ([83766c0](83766c0))
* child table rating fields ([#25433](#25433)) ([#25435](#25435)) ([57cf161](57cf161))
* consider all datepicker elements ([#25426](#25426)) ([ad79301](ad79301))
* debounce filter refresh ([7f65916](7f65916))
* don't allow setting an invalid rating ([#22633](#22633)) ([#25432](#25432)) ([502b907](502b907))
* dont add trailing decimal separator ([#25389](#25389)) ([#25390](#25390)) ([08e8d8c](08e8d8c))
* escape text types before setting disp area ([#25520](#25520)) ([#25522](#25522)) ([e446770](e446770))
* escape value in multiselect pill ([#25516](#25516)) ([#25517](#25517)) ([dbcf783](dbcf783))
* filters can use more than 140 chars ([d04bff9](d04bff9))
* handle distinct for fieldname (backport [#25511](#25511)) ([#25514](#25514)) ([3344df0](3344df0))
* handle parent rename in child workspace ([c3d9e1f](c3d9e1f))
* hide datepicker after picking date ([39796ea](39796ea))
* Log ipython commands (backport [#25364](#25364)) ([#25367](#25367)) ([997628c](997628c))
* log mariadb console usage ([6f4981c](6f4981c))
* show attachments on notifications too ([#25443](#25443)) ([#25448](#25448)) ([3251586](3251586))
* skip virtual doctype in tags ([b2ae437](b2ae437))
* Skip virtual doctype rename for dynamic links ([#25479](#25479)) ([#25480](#25480)) ([f368236](f368236))
* Skip virtual doctypes while renaming ([#25473](#25473)) ([#25477](#25477)) ([c423223](c423223))
* validate homepage paths (backport [#25409](#25409)) ([#25411](#25411)) ([ee1c8e3](ee1c8e3))

### Features

* connect to redis sentinel for redis cache (backport [#25398](#25398)) ([#25449](#25449)) ([6ce4036](6ce4036))
* debug stuck process by sending SIGUSR1 (backport [#25502](#25502)) ([#25526](#25526)) ([95d1224](95d1224))
* move bulk print operation to the background (backport [#25358](#25358)) ([#25396](#25396)) ([4508239](4508239))
* Store printed PDF attachments on communication (backport [#25439](#25439)) ([#25447](#25447)) ([9b7a02f](9b7a02f))

### Performance Improvements

* cap max count on list views (backport [#25348](#25348)) ([#25463](#25463)) ([3bc5d8a](3bc5d8a)), closes [#25361](#25361)
* compact prepared report files ([0aa3c8e](0aa3c8e))

### Reverts

* Revert "feat: move bulk print operation to the background (backport #25358) (#25396)" (#25400) ([490f031](490f031)), closes [#25358](#25358) [#25396](#25396) [#25400](#25400)
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Apr 2, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
backport version-14-hotfix backport to version 14 backport version-15-hotfix Backport the PR to v15
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant