diff --git a/substrate/node/runtime/src/lib.rs b/substrate/node/runtime/src/lib.rs
index ce1aaa6b7350b3c1163062a044aefa73a0f227ac..2d6a8eb2ca782f61ea4a7864af29bd3822eeaafc 100644
--- a/substrate/node/runtime/src/lib.rs
+++ b/substrate/node/runtime/src/lib.rs
@@ -81,7 +81,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
 	// implementation changes and behavior does not, then leave spec_version as
 	// is and increment impl_version.
 	spec_version: 131,
-	impl_version: 132,
+	impl_version: 133,
 	apis: RUNTIME_API_VERSIONS,
 };
 
diff --git a/substrate/srml/metadata/src/lib.rs b/substrate/srml/metadata/src/lib.rs
index 329b543d1a90dec184d5210b345b4eb4957d5095..bf7c379000d760cffb39c950c0fc6eace93e2934 100644
--- a/substrate/srml/metadata/src/lib.rs
+++ b/substrate/srml/metadata/src/lib.rs
@@ -210,7 +210,7 @@ pub struct ModuleConstantMetadata {
 }
 
 /// A technical trait to store lazy initiated vec value as static dyn pointer.
-pub trait DefaultByte {
+pub trait DefaultByte: Send + Sync {
 	fn default_byte(&self) -> Vec<u8>;
 }
 
diff --git a/substrate/srml/support/procedural/src/storage/transformation.rs b/substrate/srml/support/procedural/src/storage/transformation.rs
index 2e33493964c5aa02de9370f14e9169b2d17899a2..2c96e5a23b738a2d53d43307ba389e64a840039d 100644
--- a/substrate/srml/support/procedural/src/storage/transformation.rs
+++ b/substrate/srml/support/procedural/src/storage/transformation.rs
@@ -1069,6 +1069,12 @@ fn store_functions_to_metadata (
 				}
 			}
 
+			unsafe impl<#traitinstance: #traittype, #instance #bound_instantiable> Send
+				for #struct_name<#traitinstance, #instance> #where_clause {}
+
+			unsafe impl<#traitinstance: #traittype, #instance #bound_instantiable> Sync
+				for #struct_name<#traitinstance, #instance> #where_clause {}
+
 			#[cfg(not(feature = "std"))]
 			impl<#traitinstance: #traittype, #instance #bound_instantiable> #scrate::metadata::DefaultByte
 				for #struct_name<#traitinstance, #instance> #where_clause
diff --git a/substrate/srml/support/src/dispatch.rs b/substrate/srml/support/src/dispatch.rs
index 0391d2995f0f6fa89098e6bc659384173b504d40..294fe3795e7c1f68dda9d262e3a8e1e25dfb9df9 100644
--- a/substrate/srml/support/src/dispatch.rs
+++ b/substrate/srml/support/src/dispatch.rs
@@ -1431,6 +1431,14 @@ macro_rules! __impl_module_constants_metadata {
 							$crate::dispatch::Encode::encode(&value)
 						}
 					}
+
+					unsafe impl<$const_trait_instance: 'static + $const_trait_name $(
+						<I>, $const_instance: $const_instantiable)?
+					> Send for $default_byte_name <$const_trait_instance $(, $const_instance)?> {}
+
+					unsafe impl<$const_trait_instance: 'static + $const_trait_name $(
+						<I>, $const_instance: $const_instantiable)?
+					> Sync for $default_byte_name <$const_trait_instance $(, $const_instance)?> {}
 				)*
 				&[
 					$(