intent: coalesced roll-ups on the same (entity, via) share one query - a member's where: is silently dropped
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 45/100
Direzione di ricerca
Start by reading the coalesced roll-up generation path associated with #6187 and the where: handling added in #7542, then inspect EmployeeTimesheetProjectTimesheetRollupOnUpdate.java and its generated output. Reproduce with the two roll-ups in the issue and check whether each member's filter is applied or generation rejects differing filters with both roll-ups named; done means the filter cannot silently become a no-op.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
14.88.0 (also unchanged in 14.90.0). Roll-ups that share (entity, via) are coalesced into ONE handler per event (#6187). That handler queries the child rows with ONE Criteria. A roll-up where: (#7542) therefore applies only if it is on the member the shared query is built from. Every other member's filter is silently dropped.
Reproduction (base-timesheets, generated on 14.88.0):
rollups:
- { name: timesheetHours, entity: EmployeeTimesheet, via: ProjectTimesheet, field: totalHours, op: sum, of: totalHours }
- { name: timesheetApprovedHours, entity: EmployeeTimesheet, via: ProjectTimesheet, field: approvedHours, op: sum, of: totalHours,
where: [{ field: Status, op: eq, value: APPROVED }] }
The .glue carries filter: [{op: eq, property: Status, value: 3}] on the ApprovedHours entries. The generated EmployeeTimesheetProjectTimesheetRollupOnUpdate.java, however, reads
rows = new EmployeeTimesheetRepository().findAll(Criteria.create().eq("ProjectTimesheet", entity.ProjectTimesheet));
and sums ApprovedHours over all rows, DRAFT included, so approvedHours == totalHours. Generation reports nothing: generate 200, guardrail and parity clean.
If the filtered member came first, the opposite would happen: the UNfiltered totals would silently become approved-only.
Expected, either of:
- each member of a coalesced group filters its own rows (one query per distinct filter, or filter in Java per member), or
- the parser refuses two roll-ups on the same
(entity, via)whosewhere:differ, naming both.
The second is the minimum, so that a declared filter never becomes a no-op.
Found while building budget-versus-actual for BusinessIntents/base-projects + base-timesheets. The module works around it with a separate via relation, so every member of that group carries the same filter.
- Lingua principale
- Java
- Stelle
- 278
- Fork
- 97
- Merge medio
- 17h 19m
- PR unite (30g)
- 261
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di eclipse-dirigible/dirigible
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 80/100
eclipse-dirigible/dirigible#7958 ·
I maintainer di solito rispondono entro 1 giorno
-
intent: a create-from without fromStatus answers 200 on a missing or unknown source id (no 400/404)Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
eclipse-dirigible/dirigible#7945 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
eclipse-dirigible/dirigible#7891 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
eclipse-dirigible/dirigible#6538 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
eclipse-dirigible/dirigible#4812 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di eclipse-dirigible/dirigible
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
2026 Error Report
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
triplea-game/triplea#15096 ·
I maintainer di solito rispondono entro 1 giorno
-
[Bug][API] Switching workflow versions leaves schedules onlineForse già presa @zhuangchong l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
apache/dolphinscheduler#18731 ·
I maintainer di solito rispondono entro 1 giorno
-
Implement JDBC Domain Enums (`SqlCategory`, `SqlExecutionStatus`, `SqlExecutionType`) in Core ModuleApertacore-module enhancement good first issue
Difficoltà 1/5 1-3 ore Idoneità per principianti 87/100
sdlc-pro/spring-lens#531 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
apache/rocketmq-dashboard#7340 ·
I maintainer di solito rispondono entro 3 giorni