diff --git a/include/ircd/m/dbs.h b/include/ircd/m/dbs.h index 40db21d1b..1ca52b1fa 100644 --- a/include/ircd/m/dbs.h +++ b/include/ircd/m/dbs.h @@ -92,21 +92,68 @@ namespace ircd::m::dbs::desc // Direct columns // + extern conf::item events__auth_events__cache__size; + extern conf::item events__auth_events__cache_comp__size; extern const database::descriptor events_auth_events; + + extern conf::item events__content__cache__size; + extern conf::item events__content__cache_comp__size; extern const database::descriptor events_content; + + extern conf::item events__depth__cache__size; + extern conf::item events__depth__cache_comp__size; extern const database::descriptor events_depth; + + extern conf::item events__event_id__cache__size; + extern conf::item events__event_id__cache_comp__size; extern const database::descriptor events_event_id; + + extern conf::item events__hashes__cache__size; + extern conf::item events__hashes__cache_comp__size; extern const database::descriptor events_hashes; + + extern conf::item events__membership__cache__size; + extern conf::item events__membership__cache_comp__size; extern const database::descriptor events_membership; + + extern conf::item events__origin__cache__size; + extern conf::item events__origin__cache_comp__size; extern const database::descriptor events_origin; + + extern conf::item events__origin_server_ts__cache__size; + extern conf::item events__origin_server_ts__cache_comp__size; extern const database::descriptor events_origin_server_ts; + + extern conf::item events__prev_events__cache__size; + extern conf::item events__prev_events__cache_comp__size; extern const database::descriptor events_prev_events; + + extern conf::item events__prev_state__cache__size; + extern conf::item events__prev_state__cache_comp__size; extern const database::descriptor events_prev_state; + + extern conf::item events__redacts__cache__size; + extern conf::item events__redacts__cache_comp__size; extern const database::descriptor events_redacts; + + extern conf::item events__room_id__cache__size; + extern conf::item events__room_id__cache_comp__size; extern const database::descriptor events_room_id; + + extern conf::item events__sender__cache__size; + extern conf::item events__sender__cache_comp__size; extern const database::descriptor events_sender; + + extern conf::item events__signatures__cache__size; + extern conf::item events__signatures__cache_comp__size; extern const database::descriptor events_signatures; + + extern conf::item events__state_key__cache__size; + extern conf::item events__state_key__cache_comp__size; extern const database::descriptor events_state_key; + + extern conf::item events__type__cache__size; + extern conf::item events__type__cache_comp__size; extern const database::descriptor events_type; // @@ -114,29 +161,42 @@ namespace ircd::m::dbs::desc // // events index + extern conf::item events__event_idx__cache__size; + extern conf::item events__event_idx__cache_comp__size; extern const database::descriptor events__event_idx; // events blacklist + extern conf::item events__event_bad__cache__size; + extern conf::item events__event_bad__cache_comp__size; extern const database::descriptor events__event_bad; // room head mapping sequence + extern conf::item events__room_head__cache__size; extern const db::prefix_transform events__room_head__pfx; extern const database::descriptor events__room_head; // room events sequence + extern conf::item events__room_events__cache__size; + extern conf::item events__room_events__cache_comp__size; extern const db::prefix_transform events__room_events__pfx; extern const db::comparator events__room_events__cmp; extern const database::descriptor events__room_events; // room present joined members sequence + extern conf::item events__room_joined__cache__size; + extern conf::item events__room_joined__cache_comp__size; extern const db::prefix_transform events__room_joined__pfx; extern const database::descriptor events__room_joined; // room present state mapping sequence + extern conf::item events__room_state__cache__size; + extern conf::item events__room_state__cache_comp__size; extern const db::prefix_transform events__room_state__pfx; extern const database::descriptor events__room_state; // state btree node key-value store + extern conf::item events__state_node__cache__size; + extern conf::item events__state_node__cache_comp__size; extern const database::descriptor events__state_node; } diff --git a/ircd/m/dbs.cc b/ircd/m/dbs.cc index 14459e509..eca1a0b46 100644 --- a/ircd/m/dbs.cc +++ b/ircd/m/dbs.cc @@ -553,6 +553,32 @@ ircd::m::dbs::state_root(const mutable_buffer &out, // Database descriptors // +decltype(ircd::m::dbs::desc::events__event_idx__cache__size) +ircd::m::dbs::desc::events__event_idx__cache__size +{ + { + { "name", "ircd.m.dbs.events._event_idx.cache.size" }, + { "default", long(64_MiB) }, + }, [] + { + const size_t &value{events__event_idx__cache__size}; + db::capacity(db::cache(event_idx), value); + } +}; + +decltype(ircd::m::dbs::desc::events__event_idx__cache_comp__size) +ircd::m::dbs::desc::events__event_idx__cache_comp__size +{ + { + { "name", "ircd.m.dbs.events._event_idx.cache_comp.size" }, + { "default", long(16_MiB) }, + }, [] + { + const size_t &value{events__event_idx__cache_comp__size}; + db::capacity(db::cache_compressed(event_idx), value); + } +}; + const ircd::database::descriptor ircd::m::dbs::desc::events__event_idx { @@ -582,10 +608,10 @@ ircd::m::dbs::desc::events__event_idx {}, // cache size - 96_MiB, //TODO: conf + -1, //uses conf item // cache size for compressed assets - 16_MiB, //TODO: conf + -1, //uses conf item // bloom filter bits 16, @@ -594,6 +620,32 @@ ircd::m::dbs::desc::events__event_idx false, }; +decltype(ircd::m::dbs::desc::events__event_bad__cache__size) +ircd::m::dbs::desc::events__event_bad__cache__size +{ + { + { "name", "ircd.m.dbs.events._event_bad.cache.size" }, + { "default", long(16_MiB) }, + }, [] + { + const size_t &value{events__event_bad__cache__size}; + db::capacity(db::cache(event_bad), value); + } +}; + +decltype(ircd::m::dbs::desc::events__event_bad__cache_comp__size) +ircd::m::dbs::desc::events__event_bad__cache_comp__size +{ + { + { "name", "ircd.m.dbs.events._event_bad.cache_comp.size" }, + { "default", long(16_MiB) }, + }, [] + { + const size_t &value{events__event_bad__cache_comp__size}; + db::capacity(db::cache_compressed(event_bad), value); + } +}; + const ircd::database::descriptor ircd::m::dbs::desc::events__event_bad { @@ -633,10 +685,10 @@ ircd::m::dbs::desc::events__event_bad {}, // cache size - 16_MiB, //TODO: conf + -1, //use conf item // cache size for compressed assets - 8_MiB, //TODO: conf + -1, //use conf item // bloom filter bits 16, @@ -649,6 +701,19 @@ ircd::m::dbs::desc::events__event_bad // room_head // +decltype(ircd::m::dbs::desc::events__room_head__cache__size) +ircd::m::dbs::desc::events__room_head__cache__size +{ + { + { "name", "ircd.m.dbs.events._room_head.cache.size" }, + { "default", long(16_MiB) }, + }, [] + { + const size_t &value{events__room_head__cache__size}; + db::capacity(db::cache(room_head), value); + } +}; + /// prefix transform for room_id,event_id in room_id /// const ircd::db::prefix_transform @@ -734,10 +799,10 @@ ircd::m::dbs::desc::events__room_head events__room_head__pfx, // cache size - 32_MiB, //TODO: conf + -1, //use conf item // cache size for compressed assets - 0, //TODO: conf + 0, //no compresed cache // bloom filter bits 0, @@ -750,6 +815,32 @@ ircd::m::dbs::desc::events__room_head // room_events // +decltype(ircd::m::dbs::desc::events__room_events__cache__size) +ircd::m::dbs::desc::events__room_events__cache__size +{ + { + { "name", "ircd.m.dbs.events._room_events.cache.size" }, + { "default", long(16_MiB) }, + }, [] + { + const size_t &value{events__room_events__cache__size}; + db::capacity(db::cache(room_events), value); + } +}; + +decltype(ircd::m::dbs::desc::events__room_events__cache_comp__size) +ircd::m::dbs::desc::events__room_events__cache_comp__size +{ + { + { "name", "ircd.m.dbs.events._room_events.cache_comp.size" }, + { "default", long(16_MiB) }, + }, [] + { + const size_t &value{events__room_events__cache_comp__size}; + db::capacity(db::cache_compressed(room_events), value); + } +}; + /// Prefix transform for the events__room_events. The prefix here is a room_id /// and the suffix is the depth+event_id concatenation. /// for efficient sequences @@ -961,10 +1052,10 @@ ircd::m::dbs::desc::events__room_events events__room_events__pfx, // cache size - 64_MiB, //TODO: conf + -1, //use conf item // cache size for compressed assets - 24_MiB, //TODO: conf + -1, //use conf item // bloom filter bits 0, // no bloom filter because of possible comparator issues @@ -977,6 +1068,32 @@ ircd::m::dbs::desc::events__room_events // joined sequential // +decltype(ircd::m::dbs::desc::events__room_joined__cache__size) +ircd::m::dbs::desc::events__room_joined__cache__size +{ + { + { "name", "ircd.m.dbs.events._room_joined.cache.size" }, + { "default", long(8_MiB) }, + }, [] + { + const size_t &value{events__room_joined__cache__size}; + db::capacity(db::cache(room_joined), value); + } +}; + +decltype(ircd::m::dbs::desc::events__room_joined__cache_comp__size) +ircd::m::dbs::desc::events__room_joined__cache_comp__size +{ + { + { "name", "ircd.m.dbs.events._room_joined.cache_comp.size" }, + { "default", long(8_MiB) }, + }, [] + { + const size_t &value{events__room_joined__cache_comp__size}; + db::capacity(db::cache_compressed(room_joined), value); + } +}; + /// Prefix transform for the events__room_joined /// const ircd::db::prefix_transform @@ -1072,10 +1189,10 @@ ircd::m::dbs::desc::events__room_joined events__room_joined__pfx, // cache size - 64_MiB, //TODO: conf + -1, //use conf item // cache size for compressed assets - 16_MiB, //TODO: conf + -1, //use conf item // bloom filter bits 10, @@ -1088,6 +1205,32 @@ ircd::m::dbs::desc::events__room_joined // state sequential // +decltype(ircd::m::dbs::desc::events__room_state__cache__size) +ircd::m::dbs::desc::events__room_state__cache__size +{ + { + { "name", "ircd.m.dbs.events._room_state.cache.size" }, + { "default", long(16_MiB) }, + }, [] + { + const size_t &value{events__room_state__cache__size}; + db::capacity(db::cache(room_state), value); + } +}; + +decltype(ircd::m::dbs::desc::events__room_state__cache_comp__size) +ircd::m::dbs::desc::events__room_state__cache_comp__size +{ + { + { "name", "ircd.m.dbs.events._room_state.cache_comp.size" }, + { "default", long(8_MiB) }, + }, [] + { + const size_t &value{events__room_state__cache_comp__size}; + db::capacity(db::cache_compressed(room_state), value); + } +}; + /// prefix transform for type,state_key in room_id /// /// This transform is special for concatenating room_id with type and state_key @@ -1181,18 +1324,48 @@ ircd::m::dbs::desc::events__room_state events__room_state__pfx, // cache size - 128_MiB, //TODO: conf + -1, //use conf item // cache size for compressed assets - 32_MiB, //TODO: conf + -1, //use conf item // bloom filter bits - 16, + 24, // expect queries hit false, }; +// +// state node +// + +decltype(ircd::m::dbs::desc::events__state_node__cache__size) +ircd::m::dbs::desc::events__state_node__cache__size +{ + { + { "name", "ircd.m.dbs.events._state_node.cache.size" }, + { "default", long(64_MiB) }, + }, [] + { + const size_t &value{events__state_node__cache__size}; + db::capacity(db::cache(state_node), value); + } +}; + +decltype(ircd::m::dbs::desc::events__state_node__cache_comp__size) +ircd::m::dbs::desc::events__state_node__cache_comp__size +{ + { + { "name", "ircd.m.dbs.events._state_node.cache_comp.size" }, + { "default", long(32_MiB) }, + }, [] + { + const size_t &value{events__state_node__cache_comp__size}; + db::capacity(db::cache_compressed(state_node), value); + } +}; + /// State nodes are pieces of the m::state:: b-tree. The key is the hash /// of the value, which serves as the ID of the node when referenced in /// the tree. see: m/state.h for details. @@ -1223,10 +1396,10 @@ ircd::m::dbs::desc::events__state_node {}, // cache size - 96_MiB, //TODO: conf + -1, //use conf item // cache size for compressed assets - 24_MiB, //TODO: conf + -1, //use conf item // bloom filter bits 12, @@ -1239,6 +1412,38 @@ ircd::m::dbs::desc::events__state_node // Direct column descriptors // +// +// event_id +// + +decltype(ircd::m::dbs::desc::events__event_id__cache__size) +ircd::m::dbs::desc::events__event_id__cache__size +{ + { + { "name", "ircd.m.dbs.events.event_id.cache.size" }, + { "default", long(32_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__event_id__cache__size}; + db::capacity(db::cache(column), value); + } +}; + +decltype(ircd::m::dbs::desc::events__event_id__cache_comp__size) +ircd::m::dbs::desc::events__event_id__cache_comp__size +{ + { + { "name", "ircd.m.dbs.events.event_id.cache_comp.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__event_id__cache_comp__size}; + db::capacity(db::cache_compressed(column), value); + } +}; + const ircd::database::descriptor ircd::m::dbs::desc::events_event_id { @@ -1273,10 +1478,10 @@ ircd::m::dbs::desc::events_event_id {}, // cache size - 32_MiB, //TODO: conf + -1, //use conf // cache size for compressed assets - 8_MiB, //TODO: conf + -1, //use conf // bloom filter bits 12, @@ -1285,6 +1490,38 @@ ircd::m::dbs::desc::events_event_id true, }; +// +// type +// + +decltype(ircd::m::dbs::desc::events__type__cache__size) +ircd::m::dbs::desc::events__type__cache__size +{ + { + { "name", "ircd.m.dbs.events.type.cache.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__type__cache__size}; + db::capacity(db::cache(column), value); + } +}; + +decltype(ircd::m::dbs::desc::events__type__cache_comp__size) +ircd::m::dbs::desc::events__type__cache_comp__size +{ + { + { "name", "ircd.m.dbs.events.type.cache_comp.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__type__cache_comp__size}; + db::capacity(db::cache_compressed(column), value); + } +}; + const ircd::database::descriptor ircd::m::dbs::desc::events_type { @@ -1320,10 +1557,10 @@ ircd::m::dbs::desc::events_type {}, // cache size - 16_MiB, //TODO: conf + -1, //use conf item // cache size for compressed assets - 8_MiB, //TODO: conf + -1, //use conf item // bloom filter bits 12, @@ -1332,6 +1569,38 @@ ircd::m::dbs::desc::events_type true, }; +// +// content +// + +decltype(ircd::m::dbs::desc::events__content__cache__size) +ircd::m::dbs::desc::events__content__cache__size +{ + { + { "name", "ircd.m.dbs.events.content.cache.size" }, + { "default", long(32_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__content__cache__size}; + db::capacity(db::cache(column), value); + } +}; + +decltype(ircd::m::dbs::desc::events__content__cache_comp__size) +ircd::m::dbs::desc::events__content__cache_comp__size +{ + { + { "name", "ircd.m.dbs.events.content.cache_comp.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__content__cache_comp__size}; + db::capacity(db::cache_compressed(column), value); + } +}; + const ircd::database::descriptor ircd::m::dbs::desc::events_content { @@ -1367,10 +1636,10 @@ ircd::m::dbs::desc::events_content {}, // cache size - 32_MiB, //TODO: conf + -1, //use conf item // cache size for compressed assets - 8_MiB, //TODO: conf + -1, //use conf item // bloom filter bits 12, @@ -1379,6 +1648,38 @@ ircd::m::dbs::desc::events_content true, }; +// +// redacts +// + +decltype(ircd::m::dbs::desc::events__redacts__cache__size) +ircd::m::dbs::desc::events__redacts__cache__size +{ + { + { "name", "ircd.m.dbs.events.redacts.cache.size" }, + { "default", long(8_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__redacts__cache__size}; + db::capacity(db::cache(column), value); + } +}; + +decltype(ircd::m::dbs::desc::events__redacts__cache_comp__size) +ircd::m::dbs::desc::events__redacts__cache_comp__size +{ + { + { "name", "ircd.m.dbs.events.redacts.cache_comp.size" }, + { "default", long(4_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__redacts__cache_comp__size}; + db::capacity(db::cache_compressed(column), value); + } +}; + const ircd::database::descriptor ircd::m::dbs::desc::events_redacts { @@ -1408,10 +1709,10 @@ ircd::m::dbs::desc::events_redacts {}, // cache size - 16_MiB, //TODO: conf + -1, //use conf item // cache size for compressed assets - 8_MiB, //TODO: conf + -1, //use conf item // bloom filter bits 12, @@ -1420,6 +1721,38 @@ ircd::m::dbs::desc::events_redacts false, }; +// +// room_id +// + +decltype(ircd::m::dbs::desc::events__room_id__cache__size) +ircd::m::dbs::desc::events__room_id__cache__size +{ + { + { "name", "ircd.m.dbs.events.room_id.cache.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__room_id__cache__size}; + db::capacity(db::cache(column), value); + } +}; + +decltype(ircd::m::dbs::desc::events__room_id__cache_comp__size) +ircd::m::dbs::desc::events__room_id__cache_comp__size +{ + { + { "name", "ircd.m.dbs.events.room_id.cache_comp.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__room_id__cache_comp__size}; + db::capacity(db::cache_compressed(column), value); + } +}; + const ircd::database::descriptor ircd::m::dbs::desc::events_room_id { @@ -1454,10 +1787,10 @@ ircd::m::dbs::desc::events_room_id {}, // cache size - 16_MiB, //TODO: conf + -1, //use conf item // cache size for compressed assets - 8_MiB, //TODO: conf + -1, //use conf item // bloom filter bits 12, @@ -1466,6 +1799,38 @@ ircd::m::dbs::desc::events_room_id true, }; +// +// sender +// + +decltype(ircd::m::dbs::desc::events__sender__cache__size) +ircd::m::dbs::desc::events__sender__cache__size +{ + { + { "name", "ircd.m.dbs.events.sender.cache.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__sender__cache__size}; + db::capacity(db::cache(column), value); + } +}; + +decltype(ircd::m::dbs::desc::events__sender__cache_comp__size) +ircd::m::dbs::desc::events__sender__cache_comp__size +{ + { + { "name", "ircd.m.dbs.events.sender.cache_comp.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__sender__cache_comp__size}; + db::capacity(db::cache_compressed(column), value); + } +}; + const ircd::database::descriptor ircd::m::dbs::desc::events_sender { @@ -1500,10 +1865,10 @@ ircd::m::dbs::desc::events_sender {}, // cache size - 16_MiB, //TODO: conf + -1, //use conf item // cache size for compressed assets - 8_MiB, //TODO: conf + -1, //use conf item // bloom filter bits 12, @@ -1512,6 +1877,38 @@ ircd::m::dbs::desc::events_sender true, }; +// +// state_key +// + +decltype(ircd::m::dbs::desc::events__state_key__cache__size) +ircd::m::dbs::desc::events__state_key__cache__size +{ + { + { "name", "ircd.m.dbs.events.state_key.cache.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__state_key__cache__size}; + db::capacity(db::cache(column), value); + } +}; + +decltype(ircd::m::dbs::desc::events__state_key__cache_comp__size) +ircd::m::dbs::desc::events__state_key__cache_comp__size +{ + { + { "name", "ircd.m.dbs.events.state_key.cache_comp.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__state_key__cache_comp__size}; + db::capacity(db::cache_compressed(column), value); + } +}; + const ircd::database::descriptor ircd::m::dbs::desc::events_state_key { @@ -1548,10 +1945,10 @@ ircd::m::dbs::desc::events_state_key {}, // cache size - 16_MiB, //TODO: conf + -1, //use conf item // cache size for compressed assets - 8_MiB, //TODO: conf + -1, //use conf item // bloom filter bits 12, @@ -1560,6 +1957,38 @@ ircd::m::dbs::desc::events_state_key false, }; +// +// origin +// + +decltype(ircd::m::dbs::desc::events__origin__cache__size) +ircd::m::dbs::desc::events__origin__cache__size +{ + { + { "name", "ircd.m.dbs.events.origin.cache.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__origin__cache__size}; + db::capacity(db::cache(column), value); + } +}; + +decltype(ircd::m::dbs::desc::events__origin__cache_comp__size) +ircd::m::dbs::desc::events__origin__cache_comp__size +{ + { + { "name", "ircd.m.dbs.events.origin.cache_comp.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__origin__cache_comp__size}; + db::capacity(db::cache_compressed(column), value); + } +}; + const ircd::database::descriptor ircd::m::dbs::desc::events_origin { @@ -1591,10 +2020,10 @@ ircd::m::dbs::desc::events_origin {}, // cache size - 16_MiB, //TODO: conf + -1, //use conf item // cache size for compressed assets - 8_MiB, //TODO: conf + -1, //use conf item // bloom filter bits 12, @@ -1603,6 +2032,38 @@ ircd::m::dbs::desc::events_origin true, }; +// +// origin_server_ts +// + +decltype(ircd::m::dbs::desc::events__origin_server_ts__cache__size) +ircd::m::dbs::desc::events__origin_server_ts__cache__size +{ + { + { "name", "ircd.m.dbs.events.origin_server_ts.cache.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__origin_server_ts__cache__size}; + db::capacity(db::cache(column), value); + } +}; + +decltype(ircd::m::dbs::desc::events__origin_server_ts__cache_comp__size) +ircd::m::dbs::desc::events__origin_server_ts__cache_comp__size +{ + { + { "name", "ircd.m.dbs.events.origin_server_ts.cache_comp.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__origin_server_ts__cache_comp__size}; + db::capacity(db::cache_compressed(column), value); + } +}; + const ircd::database::descriptor ircd::m::dbs::desc::events_origin_server_ts { @@ -1638,10 +2099,10 @@ ircd::m::dbs::desc::events_origin_server_ts {}, // cache size - 16_MiB, //TODO: conf + -1, //use conf item // cache size for compressed assets - 8_MiB, //TODO: conf + -1, //use conf item // bloom filter bits 12, @@ -1650,6 +2111,38 @@ ircd::m::dbs::desc::events_origin_server_ts true, }; +// +// signatures +// + +decltype(ircd::m::dbs::desc::events__signatures__cache__size) +ircd::m::dbs::desc::events__signatures__cache__size +{ + { + { "name", "ircd.m.dbs.events.signatures.cache.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__signatures__cache__size}; + db::capacity(db::cache(column), value); + } +}; + +decltype(ircd::m::dbs::desc::events__signatures__cache_comp__size) +ircd::m::dbs::desc::events__signatures__cache_comp__size +{ + { + { "name", "ircd.m.dbs.events.signatures.cache_comp.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__signatures__cache_comp__size}; + db::capacity(db::cache_compressed(column), value); + } +}; + const ircd::database::descriptor ircd::m::dbs::desc::events_signatures { @@ -1679,10 +2172,10 @@ ircd::m::dbs::desc::events_signatures {}, // cache size - 16_MiB, //TODO: conf + -1, //use conf item // cache size for compressed assets - 8_MiB, //TODO: conf + -1, //use conf item // bloom filter bits 12, @@ -1691,6 +2184,38 @@ ircd::m::dbs::desc::events_signatures true, }; +// +// auth_events +// + +decltype(ircd::m::dbs::desc::events__auth_events__cache__size) +ircd::m::dbs::desc::events__auth_events__cache__size +{ + { + { "name", "ircd.m.dbs.events.auth_events.cache.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__auth_events__cache__size}; + db::capacity(db::cache(column), value); + } +}; + +decltype(ircd::m::dbs::desc::events__auth_events__cache_comp__size) +ircd::m::dbs::desc::events__auth_events__cache_comp__size +{ + { + { "name", "ircd.m.dbs.events.auth_events.cache_comp.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__auth_events__cache_comp__size}; + db::capacity(db::cache_compressed(column), value); + } +}; + const ircd::database::descriptor ircd::m::dbs::desc::events_auth_events { @@ -1719,10 +2244,10 @@ ircd::m::dbs::desc::events_auth_events {}, // cache size - 16_MiB, //TODO: conf + -1, //use conf item // cache size for compressed assets - 8_MiB, //TODO: conf + -1, //use conf item // bloom filter bits 12, @@ -1731,6 +2256,38 @@ ircd::m::dbs::desc::events_auth_events false, }; +// +// depth +// + +decltype(ircd::m::dbs::desc::events__depth__cache__size) +ircd::m::dbs::desc::events__depth__cache__size +{ + { + { "name", "ircd.m.dbs.events.depth.cache.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__depth__cache__size}; + db::capacity(db::cache(column), value); + } +}; + +decltype(ircd::m::dbs::desc::events__depth__cache_comp__size) +ircd::m::dbs::desc::events__depth__cache_comp__size +{ + { + { "name", "ircd.m.dbs.events.depth.cache_comp.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__depth__cache_comp__size}; + db::capacity(db::cache_compressed(column), value); + } +}; + const ircd::database::descriptor ircd::m::dbs::desc::events_depth { @@ -1759,10 +2316,10 @@ ircd::m::dbs::desc::events_depth {}, // cache size - 16_MiB, //TODO: conf + -1, //use conf item // cache size for compressed assets - 8_MiB, //TODO: conf + -1, //use conf item // bloom filter bits 12, @@ -1771,6 +2328,38 @@ ircd::m::dbs::desc::events_depth true, }; +// +// hashes +// + +decltype(ircd::m::dbs::desc::events__hashes__cache__size) +ircd::m::dbs::desc::events__hashes__cache__size +{ + { + { "name", "ircd.m.dbs.events.hashes.cache.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__hashes__cache__size}; + db::capacity(db::cache(column), value); + } +}; + +decltype(ircd::m::dbs::desc::events__hashes__cache_comp__size) +ircd::m::dbs::desc::events__hashes__cache_comp__size +{ + { + { "name", "ircd.m.dbs.events.hashes.cache_comp.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__hashes__cache_comp__size}; + db::capacity(db::cache_compressed(column), value); + } +}; + const ircd::database::descriptor ircd::m::dbs::desc::events_hashes { @@ -1799,10 +2388,10 @@ ircd::m::dbs::desc::events_hashes {}, // cache size - 16_MiB, //TODO: conf + -1, //use conf item // cache size for compressed assets - 8_MiB, //TODO: conf + -1, //use conf item // bloom filter bits 12, @@ -1811,6 +2400,38 @@ ircd::m::dbs::desc::events_hashes true, }; +// +// membership +// + +decltype(ircd::m::dbs::desc::events__membership__cache__size) +ircd::m::dbs::desc::events__membership__cache__size +{ + { + { "name", "ircd.m.dbs.events.membership.cache.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__membership__cache__size}; + db::capacity(db::cache(column), value); + } +}; + +decltype(ircd::m::dbs::desc::events__membership__cache_comp__size) +ircd::m::dbs::desc::events__membership__cache_comp__size +{ + { + { "name", "ircd.m.dbs.events.membership.cache_comp.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__membership__cache_comp__size}; + db::capacity(db::cache_compressed(column), value); + } +}; + const ircd::database::descriptor ircd::m::dbs::desc::events_membership { @@ -1839,10 +2460,10 @@ ircd::m::dbs::desc::events_membership {}, // cache size - 16_MiB, //TODO: conf + -1, //use conf item // cache size for compressed assets - 8_MiB, //TODO: conf + -1, //use conf item // bloom filter bits 12, @@ -1851,6 +2472,38 @@ ircd::m::dbs::desc::events_membership false, }; +// +// prev_events +// + +decltype(ircd::m::dbs::desc::events__prev_events__cache__size) +ircd::m::dbs::desc::events__prev_events__cache__size +{ + { + { "name", "ircd.m.dbs.events.prev_events.cache.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__prev_events__cache__size}; + db::capacity(db::cache(column), value); + } +}; + +decltype(ircd::m::dbs::desc::events__prev_events__cache_comp__size) +ircd::m::dbs::desc::events__prev_events__cache_comp__size +{ + { + { "name", "ircd.m.dbs.events.prev_events.cache_comp.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__prev_events__cache_comp__size}; + db::capacity(db::cache_compressed(column), value); + } +}; + const ircd::database::descriptor ircd::m::dbs::desc::events_prev_events { @@ -1879,10 +2532,10 @@ ircd::m::dbs::desc::events_prev_events {}, // cache size - 24_MiB, //TODO: conf + -1, //use conf item // cache size for compressed assets - 8_MiB, //TODO: conf + -1, //use conf item // bloom filter bits 12, @@ -1891,6 +2544,38 @@ ircd::m::dbs::desc::events_prev_events true, }; +// +// prev_state +// + +decltype(ircd::m::dbs::desc::events__prev_state__cache__size) +ircd::m::dbs::desc::events__prev_state__cache__size +{ + { + { "name", "ircd.m.dbs.events.prev_state.cache.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__prev_state__cache__size}; + db::capacity(db::cache(column), value); + } +}; + +decltype(ircd::m::dbs::desc::events__prev_state__cache_comp__size) +ircd::m::dbs::desc::events__prev_state__cache_comp__size +{ + { + { "name", "ircd.m.dbs.events.prev_state.cache_comp.size" }, + { "default", long(16_MiB) }, + }, [] + { + auto &column(event_column.at(json::indexof())); + const size_t &value{events__prev_state__cache_comp__size}; + db::capacity(db::cache_compressed(column), value); + } +}; + const ircd::database::descriptor ircd::m::dbs::desc::events_prev_state { @@ -1919,10 +2604,10 @@ ircd::m::dbs::desc::events_prev_state {}, // cache size - 8_MiB, //TODO: conf + -1, //use conf item // cache size for compressed assets - 8_MiB, //TODO: conf + -1, //use conf item // bloom filter bits 12,