diff --git a/substrate/node/runtime/src/lib.rs b/substrate/node/runtime/src/lib.rs
index c7314270337f8813064f6dece5643324d4873915..b7bb26ee00d540cdb56e331bd35cce633525870d 100644
--- a/substrate/node/runtime/src/lib.rs
+++ b/substrate/node/runtime/src/lib.rs
@@ -84,8 +84,8 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
 	// and set impl_version to equal spec_version. If only runtime
 	// implementation changes and behavior does not, then leave spec_version as
 	// is and increment impl_version.
-	spec_version: 166,
-	impl_version: 166,
+	spec_version: 167,
+	impl_version: 167,
 	apis: RUNTIME_API_VERSIONS,
 };
 
diff --git a/substrate/srml/system/src/lib.rs b/substrate/srml/system/src/lib.rs
index ecbfb598df7700d982827cee768bf64d9e950d9d..5a1115b90d71ce04a040fef378612f20fcc9bcb2 100644
--- a/substrate/srml/system/src/lib.rs
+++ b/substrate/srml/system/src/lib.rs
@@ -278,6 +278,13 @@ decl_module! {
 				storage::unhashed::kill(&key);
 			}
 		}
+
+		/// Kill all storage items with a key that starts with the given prefix.
+		#[weight = SimpleDispatchInfo::FixedOperational(10_000)]
+		fn kill_prefix(origin, prefix: Key) {
+			ensure_root(origin)?;
+			storage::unhashed::kill_prefix(&prefix);
+		}
 	}
 }