https://t.me/databaseinternalschat/666
https://gitlab.com/savrus/shad-db старые домашки можно посмотреть тут
А еще прикольные лекции выходят тут https://shad.yandex.ru/sreweek
Ну и чтобы было более интересным постом, расскажу про забавную штуку которую нашел в
folly.Если вы когда-то использовали
std::exception_ptr, то возможно вы задумывались над тем что это довольно удобный способ сохранить ошибку:1)
std::make_exception_ptr, принимает любой тип (с недавнего времени работает быстро)2)
std::expection_ptr размером 1-2 указателя, и при этом может проверяться на null (дешёвая проверка отсутствия ошибки)3)
default constructibleК сожалению все портит, то что доставать ошибку неудобно и медленно: нужно делать
rethrow + catchВ
folly есть хак для большинства стандартных библиотек, чтобы достать из std::exception_ptr указатель на запрашиваемый тип или вернуть nullhttps://github.com/facebook/folly/blob/main/folly/lang/Exception.cpp