From a46e1971af667e77ac6d346d55ab86c8375a2bc9 Mon Sep 17 00:00:00 2001
From: Hugo Trentesaux <hugo@trentesaux.fr>
Date: Wed, 8 Jan 2025 16:55:34 +0100
Subject: [PATCH] no need for event when no changes to authority

---
 pallets/authority-members/src/lib.rs | 20 ++++++++++++--------
 1 file changed, 12 insertions(+), 8 deletions(-)

diff --git a/pallets/authority-members/src/lib.rs b/pallets/authority-members/src/lib.rs
index cb02e5b92..f4118ee3a 100644
--- a/pallets/authority-members/src/lib.rs
+++ b/pallets/authority-members/src/lib.rs
@@ -580,20 +580,24 @@ impl<T: Config> pallet_session::SessionManager<T::ValidatorId> for Pallet<T> {
         for member_id in members_ids_to_add.iter() {
             T::OnIncomingMember::on_incoming_member(*member_id);
         }
-        // a single event with all authorities
-        Self::deposit_event(Event::IncomingAuthorities {
-            members: members_ids_to_add.clone(),
-        });
+        // a single event with all authorities if some
+        if !members_ids_to_add.is_empty() {
+            Self::deposit_event(Event::IncomingAuthorities {
+                members: members_ids_to_add.clone(),
+            });
+        }
 
         // -- handle outgoing members
         // callback when smith is outgoing
         for member_id in members_ids_to_del.iter() {
             T::OnOutgoingMember::on_outgoing_member(*member_id);
         }
-        // a single event with all authorities
-        Self::deposit_event(Event::OutgoingAuthorities {
-            members: members_ids_to_del.clone(),
-        });
+        // a single event with all authorities if some
+        if !members_ids_to_del.is_empty() {
+            Self::deposit_event(Event::OutgoingAuthorities {
+                members: members_ids_to_del.clone(),
+            });
+        }
 
         // updates the list of OnlineAuthorities and returns the list of their key
         Some(
-- 
GitLab