Auto assignments with target filter queries like "type.id=not=XYZ" doesn't match targets without target type (with EclipseLink only)
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
- 30/100
Direzione di ricerca
Start with JpaTargetManagement.findByTargetFilterQueryAndNonDSAndCompatibleAndUpdatable and the TargetManagementSearchTest#shouldFindTargetsWithoutTypeByTypeIdNot test mentioned in the issue; the issue also points to PR #2759, which adds a test for this behavior. Run that test with EclipseLink and compare the result with Hibernate; done means targets without a type are included for the type.id=not=XYZ filter.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Issue:
- I have 4 devices: 2 of type NOT_XYZ and 2 without type.
- I create target filter with "type.id=not=XYZ" and assign a distribution set (compatible with all devices)
- Expected: all 4 devices should be involved
- Result: only these of type NOT_XYZ are involved. Targets without type are not.
After some debug:
- this behavior is observed with EclipseLink JPA provider only. With Hibernate it seems as expected - so, it seems the bug comes from there
- JpaTargetManagement.findByTargetFilterQueryAndNonDSAndCompatibleAndUpdatable creates the following SQL queries:
# EclipseLink
SELECT DISTINCT * FROM sp_target t1
LEFT OUTER JOIN sp_target_type t0 ON (t0.id = t1.target_type)
LEFT OUTER JOIN (sp_target_type_ds_type t4 JOIN sp_distribution_set_type t2 ON (t2.id = t4.distribution_set_type)) ON (t4.target_type = t0.id),
sp_target_type t3
WHERE (((((t3.id IS NULL) OR (t1.target_type <> ?)) AND ((t1.target_type IS NULL) OR (t2.id = ?))) AND (t1.tenant = ?)) AND ((t3.id = t1.target_type) AND (t3.tenant = ?))) LIMIT ?, ?
# Hibernate
select distinct * from sp_target jt1_0
left join sp_target_type tt1_0 on tt1_0.id=jt1_0.target_type and tt1_0.tenant = ?
left join sp_target_type tt2_0 on tt2_0.id=jt1_0.target_type and tt2_0.tenant = ?
left join sp_target_type_ds_type dst1_0 on tt2_0.id=dst1_0.target_type
where jt1_0.tenant = ? and (tt1_0.id is null or tt1_0.id<>?) and (jt1_0.target_type is null or dst1_0.distribution_set_type=?) limit ?,?
- from the EclipseLink query it seems that the problem is that (t3.tenant = ?) check requires that there is a target type available
- so, it seems that it is related to EclipseLink and its tenancy support
PS: added a PR with a tests that shows that behavior - https://github.com/eclipse-hawkbit/hawkbit/pull/2759 -> TargetManagementSearchTest#shouldFindTargetsWithoutTypeByTypeIdNot
- Lingua principale
- Java
- Stelle
- 601
- Fork
- 228
- Merge medio
- 15h 58m
- PR unite (30g)
- 62
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun 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-hawkbit/hawkbit
-
hawkbit-dmf-server 1.1.0 does not start: NoClassDefFoundError jakarta/servlet/ServletResponseAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 77/100
eclipse-hawkbit/hawkbit#3429 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
eclipse-hawkbit/hawkbit#3436 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 42/100
eclipse-hawkbit/hawkbit#3266 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Configurable automatic retries for failed actions (policy, backoff, rollout and auto-assignment support)Forse di nuovo libera @strailov l’ha presa 77 giorni fa e non c’è nessuna pull request aperta. Apertafeature request
eclipse-hawkbit/hawkbit#3251 · 3 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
IN_SYNC and rollout success can be recorded while the device still runs the old imageForse di nuovo libera @denislavprinov l’ha presa 109 giorni fa e non c’è nessuna pull request aperta. Aperta
eclipse-hawkbit/hawkbit#3185 · 1 reazione · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di eclipse-hawkbit/hawkbit
Issue simili
-
code-maintenance
Difficoltà 2/5 1-3 ore Idoneità per principianti 77/100
I maintainer di solito rispondono entro 1 giorno
-
bug priority: medium Review effort [1-5]: 3 status: needs-triage type: bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
carlos-emr/carlos#5258 ·
I maintainer di solito rispondono entro 1 giorno
-
bug: author create/update with an unknown avatarId returns 404 instead of 400 UNKNOWN_REFERENCEForse già presa @Vinu2111 l’ha presa oggi. Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
atomityhq/blog-cms#59 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
PlatformSpecific.hasGreenThreads incorrectly returns false for JDK updates and non-GA versionsAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
I maintainer di solito rispondono entro 1 giorno
-
dev/release: verify-release-candidate.sh runs 0 Java tests with Debian's MavenForse già presa @kou l’ha presa oggi. ApertaType: bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
apache/arrow-adbc#4947 ·
I maintainer di solito rispondono entro 1 giorno