TGViewer
BASCODE BASCODE @bascodech · 140 subscribers
Post #86 131
UUID в stdlib Go, дефолтом сделали v4

Go наконец затаскивает uuid в stdlib. И сразу ставит дефолтом v4, тот самый рандомный, который размазывает вставку по индексу :-)

В апреле приняли proposal #62026. Парсер, конструкторы, всё как у google/uuid, который годами стоит почти в каждом сервисе и при этом полузаброшен. Казалось бы, радуйся.

Но uuid.New() отдаёт v4. Чистый рандом. А сортируемый v7 надо звать руками через NewV7().

Для приложения, которое пишет в Postgres, это не мелочь. Первичный ключ на v4 ложится в B-tree как попало: каждая вставка прыгает в случайную страницу, растут page split, индекс пухнет. v7 кладёт время в старшие биты, вставка идёт в хвост, локальность сохраняется. Разница на больших таблицах видна и в размере индекса, и в скорости вставки.

stdlib поставил дефолтом то, что безопаснее «вообще», а не то, что лучше для базы. Дефолты надо читать, а не доверять им :-)
  • 👍 6
  • 🔥 1
More from @bascodech
  1. Sep 18, 2026Мысли про дебаггинг и IDE в 2026 Вот интересная история... Расс Кокс выложил пять сессий,…
  2. Sep 14, 2026Кодить без AI сейчас как заниматься айкидо. Красиво и глубоко и десять лет до черного пояс…
  3. Sep 7, 2026Выложил свой statusline для claude code в публичный репозиторий. Лимитов у подписки три: п…
  4. Sep 5, 2026Рубрика "лысая мудрость" Как я больше года храбро готовился, но так ничего и не сделал. Вт…
  5. Sep 2, 2026Распаковал 30 релизов Go подряд, 2.9 ГБ исходников. Ради одного вопроса. Вопрос такой: поч…
  6. Aug 29, 2026Сегодня у кого-то будет распаковка :-)
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →