Sobre o projeto

rudb-compat é um harness de testes abrangente concebido para verificar a compatibilidade da base de dados rudb com o DuckDB. Transforma alegações de compatibilidade em dados mensuráveis, executando execuções diferenciais contra um binário DuckDB real. A suite avalia a conformidade em quatro níveis distintos: compatibilidade de dados (fidelidade do formato de armazenamento), compatibilidade de consultas (cobertura do dialeto SQL), compatibilidade de API (aderência à ABI C) e compatibilidade de ecossistema (extensões e protocolo de rede). As principais funcionalidades incluem: - **Execução Diferencial**: Compara resultados do rudb e do DuckDB em consultas idênticas para garantir paridade comportamental. - **Cobertura Ponderada**: Utiliza métricas ponderadas pelo uso em vez de simples cobertura de código para avaliar o suporte a funções e instruções SQL. - **Bissecção Automatizada**: Reduz e bisseca automaticamente consultas com falha para identificar passes específicos do otimizador ou erros de lógica que causam discrepâncias. - **Integração de Corpus**: Executa contra o corpus oficial `sqllogictest` do DuckDB, benchmarks ClickBench e consultas geradas/metamórficas para encontrar casos limite. - **Controlo de Versão Estrito**: Garante que as comparações são feitas contra um commit hash fixado do DuckDB, não apenas strings de versão, para evitar desvios. A ferramenta destina-se a programadores que mantêm o rudb para acompanhar o progresso rumo à compatibilidade total com o DuckDB e a utilizadores que verificam a segurança da migração. Opera como um repositório separado para manter independência da implementação principal e permitir verificação sem necessidade de confiança.