Verifies the integrety of the projects, as builds are executed immediately after a code change was detected. This plan provides no artifiacts (use a nightly build instead).

Build: #3011 was successful Changes by Guus der Kinderen

Stages & jobs

  1. Default Stage

  2. Continuous Integration

Build result summary

Details

Completed
Queue duration
4 seconds
Duration
13 minutes
Labels
None
Agent
mesonet-ah.agron.iastate.edu (3)
Revision
4b8c2e0e6507423cd52047abcd4837cc89a96284
Total tests
1907
Successful since
#2937 ()

Tests

Code commits

Author Commit Message Commit date
Guus der Kinderen Guus der Kinderen 4b8c2e0e6507423cd52047abcd4837cc89a96284 Improve GroupProvider thread safety
Making the field volatile guarantees that any thread reading provider (in createGroup, deleteGroup, search, getProvider, etc.) will always observe the value last written, not a stale cached copy from a CPU register or L1 cache.
Guus der Kinderen Guus der Kinderen 6372b2c3b947f927f13d16ce987d14bcc6321e6a Harden GroupManager unit test around 'share with own group'
The 'share with own group' option is currently persisted as 'share with list of groups' where the value is only the name of the own group.

Although implementation-wise, this is identical to what's already being tested, behavioral, this is different. To capture bugs introduced by potential future changes, this commit adds tests for the 'share with own group' case.
Guus der Kinderen Guus der Kinderen f39e333e63bc8913daab8624b00a1d8954c8f8c3 OF-3287: evict per-user group caches for source group members
Ensure cache invalidation also includes members/admins of the group being processed, not only groups returned by shared-group traversal.

Previously, `evictCachedUsersForGroup(...)` could miss users in the source group (especially non-shared groups), leaving stale cache entries. This caused group create/rename/delete and shared-roster target-list changes to not be reflected immediately for affected users.
Guus der Kinderen Guus der Kinderen bfbe0d15ed2b5428bea5c4513872048e071bd1d2 Refactor GroupManager to facilitate unit testing
A conservative refactoring: the public API is untouched and the seams needed for testing are now in place.

Existing tests have been adapted to the new API where sensible. Wording has been adjusted to reflect behavioral nature of tests, where applicable.
Guus der Kinderen Guus der Kinderen be47757c464bd4303d98e13fdc3469baa357273a OF-3286: Unify GroupManager metadata locking
Replace the fragmented metadata locking scheme in GroupManager with a single shared lock around groupMetaCache access. This removes the previous mix of separate lock objects and per-user interning, making cache synchronization easier to reason about and reducing the risk of inconsistent updates.

Adds unit tests that verify some of the concurrent behavior.

Jira issues

IssueDescriptionStatus
2 more issues…
Unknown Issue TypeOF-3285Could not obtain issue details from Jira
Unknown Issue TypeOF-3286Could not obtain issue details from Jira
Unknown Issue TypeOF-3287Could not obtain issue details from Jira
Unknown Issue TypeOF-3288Could not obtain issue details from Jira
Unknown Issue TypeOF-3292Could not obtain issue details from Jira

Shared artifacts

Artifact File size
Unpacked project files 275 MB