Description
O erro encontrado é um conflito de schema entre os serviços de Rails (Auth/CRM) e o serviço de Python (Processor). Eles estão tentando criar a mesma tabela no mesmo banco de dados.
1. Onde está o erro (Localização no Repositório)
O conflito ocorre entre estes dois arquivos:
Serviço Processor (Python): evo-ai-processor-community/migrations/versions/26a14ac7025d_.py (linhas 41-55).
Serviço Auth/CRM (Rails): evo-auth-service-community/db/schema.rb (linhas 528-538).
2. Descrição Técnica do Problema
O script de setup (setup.sh) executa primeiro as migrações do Rails (db:prepare). O Rails possui em seu schema a definição da tabela evo_agent_processor_execution_metrics e a cria no banco de dados.
Logo em seguida, o container do Processor tenta iniciar e executa o comando alembic upgrade head. Como a migração do Alembic (26a14ac7025d_.py) também tenta criar a tabela evo_agent_processor_execution_metrics, o PostgreSQL retorna o erro:
sqlalchemy.exc.ProgrammingError: ... relation "evo_agent_processor_execution_metrics" already exists
3. Por que isso acontece mesmo apagando os volumes?
Mesmo com o banco vazio, o processo de instalação segue esta ordem:
Rails cria a tabela.
Python (Alembic) tenta criar a mesma tabela e falha.
Sugestão de correção para a Issue:
A correção ideal seria remover a criação dessa tabela de um dos dois serviços (preferencialmente do Rails, se o Processor for o dono desse dado) ou marcar a migração do Alembic para ignorar se a tabela já existir. Além disso, notei que no Rails existem duas tabelas quase idênticas: evo_agent_processor_execution_metrics e evo_ai_agent_processor_execution_metrics, o que sugere uma inconsistência de nomenclatura entre os sub-módulos.
Affected Service
CRM Service (evo-ai-crm-community)
Steps to Reproduce
docker compose up --build
Expected Behavior
Remoção da tentativa de criação em duplicidade
Actual Behavior
Falha na criação dos containers.
Environment
- OS:
- Docker version:
- Browser:
Screenshots
No response
Relevant Logs
Description
O erro encontrado é um conflito de schema entre os serviços de Rails (Auth/CRM) e o serviço de Python (Processor). Eles estão tentando criar a mesma tabela no mesmo banco de dados.
1. Onde está o erro (Localização no Repositório)
O conflito ocorre entre estes dois arquivos:
Serviço Processor (Python): evo-ai-processor-community/migrations/versions/26a14ac7025d_.py (linhas 41-55).
Serviço Auth/CRM (Rails): evo-auth-service-community/db/schema.rb (linhas 528-538).
2. Descrição Técnica do Problema
O script de setup (setup.sh) executa primeiro as migrações do Rails (db:prepare). O Rails possui em seu schema a definição da tabela evo_agent_processor_execution_metrics e a cria no banco de dados.
Logo em seguida, o container do Processor tenta iniciar e executa o comando alembic upgrade head. Como a migração do Alembic (26a14ac7025d_.py) também tenta criar a tabela evo_agent_processor_execution_metrics, o PostgreSQL retorna o erro:
sqlalchemy.exc.ProgrammingError: ... relation "evo_agent_processor_execution_metrics" already exists3. Por que isso acontece mesmo apagando os volumes?
Mesmo com o banco vazio, o processo de instalação segue esta ordem:
Rails cria a tabela.
Python (Alembic) tenta criar a mesma tabela e falha.
Sugestão de correção para a Issue:
A correção ideal seria remover a criação dessa tabela de um dos dois serviços (preferencialmente do Rails, se o Processor for o dono desse dado) ou marcar a migração do Alembic para ignorar se a tabela já existir. Além disso, notei que no Rails existem duas tabelas quase idênticas: evo_agent_processor_execution_metrics e evo_ai_agent_processor_execution_metrics, o que sugere uma inconsistência de nomenclatura entre os sub-módulos.
Affected Service
CRM Service (evo-ai-crm-community)
Steps to Reproduce
docker compose up --build
Expected Behavior
Remoção da tentativa de criação em duplicidade
Actual Behavior
Falha na criação dos containers.
Environment
Screenshots
No response
Relevant Logs