run-llama / sec-insights

A real world full-stack application using LlamaIndex
https://www.secinsights.ai/
MIT License
2.32k stars 631 forks source link

Delete Conversation API does not work #81

Open GojoSatoruS opened 9 months ago

GojoSatoruS commented 9 months ago

Hello,

I'm trying to run the DELETE API under conversations: getting the following foreign key reference error: raise translated_error from error sqlalchemy.exc.IntegrityError: (sqlalchemy.dialects.postgresql.asyncpg.IntegrityError) <class 'asyncpg.exceptions.ForeignKeyViolationError'>: update or delete on table "conversation" violates foreign key constraint "message_conversation_id_fkey" on table "message" DETAIL: Key (id)=(79d87f70-4829-41aa-9043-1b61e7888a74) is still referenced from table "message". [SQL: DELETE FROM conversation WHERE conversation.id = $1::UUID] [parameters: ('79d87f70-4829-41aa-9043-1b61e7888a74',)] (Background on this error at: https://sqlalche.me/e/20/gkpj

Any idea how to resolve this? I have tried to add cascade ON DELETE but alembic migrations are not updating the tables:

class Conversation(Base):
    messages = relationship("Message", back_populates="conversation", cascade="delete, merge, save-update")
    conversation_documents = relationship(
        "ConversationDocument", back_populates="conversation", cascade="delete, merge, save-update"
    )

Any help would be appreciated.

arupdeb commented 9 months ago

pull request is added to fix the API