Jepsen: ParticleDB 1.1.4
Uma nova análise da Jepsen sobre o ParticleDB, uma base de dados compatível com Postgres e comercializada como “formalmente provada” e centrada em IA, relata um número invulgarmente elevado de bugs graves de correção, desde escritas perdidas até resultados de consultas sem sentido, como `WHERE 4 = 5` devolver linhas. Comentadores argumentam que a extensão e a natureza das falhas apontam para problemas fundamentais de design e QA, provavelmente agravados por uma forte dependência de modelos de linguagem de grande dimensão, e veem o episódio como um alerta sobre projetos de bases de dados movidos pelo hype. Muitos concluem que tal sistema não é seguro para uso em produção e que testes ao estilo Jepsen deveriam ser um requisito mínimo para qualquer datastore sério.
Âmbito e Gravidade dos Problemas
- Comentadores descrevem o relatório da Jepsen como invulgarmente condenatório em comparação com análises típicas de bases de dados.
- Diz-se que o ParticleDB apresenta numerosos bugs graves: falhas, deadlocks, perda de dados, comportamento SQL bizarro (por exemplo, predicados impossíveis a devolverem linhas, predicados em colunas inexistentes) e anomalias transacionais generalizadas mesmo num único nó sem falhas.
- Vários participantes argumentam que isto sugere um design fundamentalmente defeituoso (“incorrect by construction”), e não apenas bugs localizados.
Reivindicações de Marketing vs. Realidade
- Crítica forte ao marketing: alegações de ser “formalmente provado” com TLA+, “compatível com PostgreSQL”, pronto para produção e com reivindicações extremas de desempenho (por exemplo, mais rápido que Redis, ordens de grandeza mais rápido que Postgres).
- O relatório da Jepsen observa que não estava disponível qualquer especificação TLA+, e que a compatibilidade básica com Postgres falhou claramente.
- Alguns apontam que o site e a redação parecem ter sido discretamente revistos após os resultados dos testes.
Processo de Testes e QA
- Muitos ficam perplexos por bugs tão básicos terem sido lançados: inferem a ausência de testes, testes ineficazes ou testes que não estavam a ser executados.
- A Jepsen nota que o harness existente de Jepsen para Postgres supostamente já tinha sido executado anteriormente, mas falha imediatamente na versão testada.
- Comentadores veem isto como evidência de problemas estruturais profundos de QA, possivelmente incluindo dependência excessiva de agentes automatizados.
Papel da IA / “Vibecoding”
- Especulação repetida de que modelos de linguagem de grande dimensão foram amplamente usados para escrever tanto a base de dados como os seus testes, sem que os humanos compreendessem totalmente o sistema.
- “Base de dados vibecoded” torna-se um atalho para código e documentação gerados por IA e mal validados.
- Alguns observam que a IA pode ser poderosa nas mãos certas, mas aqui parece ter amplificado a inexperiência e o mau julgamento.
Resposta do Fornecedor e Confiança Futura
- Um membro da equipa afirma que os problemas foram entretanto resolvidos, o motor foi redesenhado, cargas de trabalho diárias da Jepsen são agora executadas e os testes foram reforçados.
- A maioria das respostas é altamente cética: corrigir os bugs listados é chamado de “table stakes”, e as pessoas questionam por que razão um sistema tão imaturo foi comercializado como pronto para produção e formalmente verificado.
- Vários dizem que nunca implantariam o produto; alguns sugerem recomeçar do zero ou abandonar completamente a área, citando danos reputacionais.
- Uma minoria sublinha que o objetivo da Jepsen é encontrar bugs para que possam ser corrigidos e que sobreviver a futuras execuções da Jepsen poderia restaurar alguma confiança.
Conclusões Mais Amplas
- Muitos defendem que todos os fornecedores de bases de dados deveriam ser submetidos a testes ao estilo Jepsen, e que relatórios francos, mesmo severos, são necessários para proteger os utilizadores.
- O debate destaca um contraste entre engenharia de bases de dados rigorosa e orientada por testes e desenvolvimento impulsionado pelo hype e acelerado por IA que negligencia a correção.