Olá
RSS FeedRegistro do que vou aprendendo e dos desafios que aparecem ao longo da carreira. Cada texto parte de um problema real, mostra o que medi, a decisão tomada e o que eu faria diferente. Os assuntos variam com o que estou estudando ou resolvendo.
Artigos recentes
Criar partições novas sem travar a tabela raiz
O comando óbvio do PostgreSQL segura um ACCESS EXCLUSIVE na tabela inteira até o commit. O caminho que não trava a raiz são dois comandos em vez de um. Com chaves estrangeiras no meio, ele precisa de um terceiro, e isso eu aprendi em produção.
CDC ou outbox: por que escolhi o outbox para publicar eventos
Os dois garantem que o evento sai se, e só se, a transação do banco foi gravada. A diferença está no que sai, em quem define o contrato e no que você passa a operar.
Trace distribuído que atravessa o outbox e a fila em memória
O trace de uma requisição termina no commit. O evento sai minutos depois, por outro processo, e aparece no APM como se não tivesse pai. Três peças pequenas resolvem isso.
Particionar um ledger em dois níveis: grupo de conta e ano
LIST por grupo de conta, RANGE por ano, chave primária composta e uma regra que ninguém pode esquecer: toda consulta leva as duas chaves.