Skip to content

Commit 0d0cbf8

Browse files
committed
Deterministic response order of _security/stats/
1 parent e95971d commit 0d0cbf8

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

x-pack/plugin/security/src/main/java/org/elasticsearch/xpack/security/authz/store/CompositeRolesStore.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@
6565
import java.util.Collection;
6666
import java.util.HashMap;
6767
import java.util.HashSet;
68+
import java.util.LinkedHashMap;
6869
import java.util.List;
6970
import java.util.Map;
7071
import java.util.Objects;
@@ -670,7 +671,9 @@ Iterable<ProjectScoped<RoleKey>> cachedRoles() {
670671
}
671672

672673
public Map<String, Object> usageStatsWithJustDls() {
673-
return Map.of("dls", Map.of("bit_set_cache", dlsBitsetCache.usageStats()));
674+
// LinkedHashMap for ordering in transport.
675+
// if adding properties consider consistent ordering for human-readability of JSON.
676+
return Map.of("dls", Map.of("bit_set_cache", new LinkedHashMap<>(dlsBitsetCache.usageStats())));
674677
}
675678

676679
public void usageStats(ActionListener<Map<String, Object>> listener) {

0 commit comments

Comments
 (0)