From c02e476175462064a7ba7f4bc44ed215caf17eb0 Mon Sep 17 00:00:00 2001
From: "Carol (Nichols || Goulding)" <carol.nichols@gmail.com>
Date: Thu, 28 Oct 2021 14:59:52 -0400
Subject: [PATCH] fix: Split database name from rules at the last possible
 function

When updating database rules, the database name should come from the
rules. Enforce this by only taking the rules as a parameter, rather than
having two arguments that could possibly disagree with each other.
---
 .../influxdb_ioxd/server_type/database/rpc/management.rs | 3 +--
 server/src/lib.rs                                        | 9 +++------
 2 files changed, 4 insertions(+), 8 deletions(-)

diff --git a/influxdb_iox/src/influxdb_ioxd/server_type/database/rpc/management.rs b/influxdb_iox/src/influxdb_ioxd/server_type/database/rpc/management.rs
index 1f394f448b..fc7d733569 100644
--- a/influxdb_iox/src/influxdb_ioxd/server_type/database/rpc/management.rs
+++ b/influxdb_iox/src/influxdb_ioxd/server_type/database/rpc/management.rs
@@ -157,10 +157,9 @@ where
                 description: e.to_string(),
             })?;
 
-        let db_name = provided_rules.db_name().clone();
         let updated_rules = self
             .server
-            .update_db_rules(&db_name, provided_rules)
+            .update_db_rules(provided_rules)
             .await
             .map_err(default_server_error_handler)?;
 
diff --git a/server/src/lib.rs b/server/src/lib.rs
index 0be0d1ef23..8cb0d9a00f 100644
--- a/server/src/lib.rs
+++ b/server/src/lib.rs
@@ -1008,10 +1008,10 @@ where
     /// Update database rules and save on success.
     pub async fn update_db_rules(
         &self,
-        db_name: &DatabaseName<'_>,
         rules: ProvidedDatabaseRules,
     ) -> Result<Arc<ProvidedDatabaseRules>> {
-        let database = self.database(db_name)?;
+        let db_name = rules.db_name().clone();
+        let database = self.database(&db_name)?;
 
         // attempt to save provided rules in the current state
         Ok(database
@@ -2417,10 +2417,7 @@ mod tests {
         };
         let provided_rules = make_provided_rules(rules);
 
-        server
-            .update_db_rules(&db_name, provided_rules)
-            .await
-            .unwrap();
+        server.update_db_rules(provided_rules).await.unwrap();
     }
 
     #[tokio::test]