diff --git a/Cargo.lock b/Cargo.lock
index 9164c00847b3c39c0958a3e08b862c4ef0d69955..87a3bba1b432b0aa235be351740d24bfcf9dfcef 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -1147,17 +1147,6 @@ dependencies = [
  "pin-utils",
 ]
 
-[[package]]
-name = "num-derive"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d"
-dependencies = [
- "proc-macro2 1.0.63",
- "quote 1.0.29",
- "syn 1.0.109",
-]
-
 [[package]]
 name = "num-traits"
 version = "0.2.15"
@@ -2157,8 +2146,6 @@ dependencies = [
  "libc",
  "linkme 0.2.10",
  "log",
- "num-derive",
- "num-traits",
  "once_cell",
  "pretty_assertions 1.4.0",
  "refpool",
@@ -2181,7 +2168,7 @@ dependencies = [
 
 [[package]]
 name = "tarantool-proc"
-version = "2.0.1"
+version = "3.0.0"
 dependencies = [
  "darling",
  "proc-macro-error",
diff --git a/sbroad b/sbroad
index 85d4b9e15ef66fbfa8e7ed3d3087442f214de270..b8bde87ed627e1081d46380b39c66a9ecb3a6c54 160000
--- a/sbroad
+++ b/sbroad
@@ -1 +1 @@
-Subproject commit 85d4b9e15ef66fbfa8e7ed3d3087442f214de270
+Subproject commit b8bde87ed627e1081d46380b39c66a9ecb3a6c54
diff --git a/src/lib.rs b/src/lib.rs
index e4635ee3c99648d30d97ca22957345db8ea18a5a..18913844fed9160ceb104cb1cc5d725796c34f02 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -17,7 +17,6 @@ use std::collections::HashMap;
 use std::io;
 use std::time::Duration;
 use storage::Clusterwide;
-use storage::PropertyName;
 use traft::RaftSpaceAccess;
 
 use crate::cli::args;
@@ -282,7 +281,7 @@ fn redirect_interactive_sql() {
 }
 
 /// Sets a check for user exceeding maximum number of login attempts through `picodata connect`.
-/// Also see [`PropertyName::MaxLoginAttempts`].
+/// Also see [`storage::PropertyName::MaxLoginAttempts`].
 fn set_login_attempts_check(storage: Clusterwide) {
     use std::collections::hash_map::Entry;
 
diff --git a/src/storage.rs b/src/storage.rs
index 63f1ed0e1f23f6bd5fb61c0ad3289a515b4b109d..d719fdff22337eeeee2ee1d63f0ecbc4f849c819 100644
--- a/src/storage.rs
+++ b/src/storage.rs
@@ -80,7 +80,7 @@ macro_rules! define_clusterwide_tables {
             pub enum $ClusterwideTable {
                 $(
                     $(#[$cw_field_meta])*
-                    $cw_space_var = $cw_space_name,
+                    $cw_space_var = $cw_space_name = $cw_space_id,
                 )+
             }
         }
@@ -107,18 +107,6 @@ macro_rules! define_clusterwide_tables {
             }
         }
 
-        impl TryFrom<SpaceId> for $ClusterwideTable {
-            type Error = SpaceId;
-
-            #[inline(always)]
-            fn try_from(id: SpaceId) -> ::std::result::Result<$ClusterwideTable, Self::Error> {
-                match id {
-                    $( $cw_space_id => Ok(Self::$cw_space_var), )+
-                    _ => Err(id),
-                }
-            }
-        }
-
         $( const _: $crate::util::CheckIsSameType<$_Clusterwide, $Clusterwide> = (); )+
 
         ////////////////////////////////////////////////////////////////////////
diff --git a/src/util.rs b/src/util.rs
index 53c5512fb0d036bbf26b6af5ddd0cfa4f72e7964..0054cb9e0175f1a5b92104eefa125540edb062a6 100644
--- a/src/util.rs
+++ b/src/util.rs
@@ -566,7 +566,7 @@ pub type CheckIsSameType<L, R> = <L as IsSameType<L, R>>::Void;
 /// A helper struct to enforce that a function must not yield. Will cause a
 /// panic if fiber yields are detected when drop is called for it.
 pub struct NoYieldsGuard {
-    csw: i32,
+    csw: u64,
 }
 
 #[allow(clippy::new_without_default)]
diff --git a/tarantool b/tarantool
index 71cf3d1e46071868fe330cc41b2ec458c63a71a6..dce3aeac5bfafc09f9e533b57d571315797d493c 160000
--- a/tarantool
+++ b/tarantool
@@ -1 +1 @@
-Subproject commit 71cf3d1e46071868fe330cc41b2ec458c63a71a6
+Subproject commit dce3aeac5bfafc09f9e533b57d571315797d493c