garvitcpp commited on
Commit
13a804d
·
verified ·
1 Parent(s): fc1da4f

Update app/api/v1/repositories.py

Browse files
Files changed (1) hide show
  1. app/api/v1/repositories.py +19 -2
app/api/v1/repositories.py CHANGED
@@ -81,7 +81,24 @@ async def process_repository_background(repository_id: int, user_id: str):
81
  if not embedded_chunks:
82
  raise Exception("Failed to generate local embeddings")
83
 
84
- force_log(f"💾 Step 4: Storing embeddings in ChromaDB")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
85
  await vector_service.store_embeddings(repository_id, embedded_chunks)
86
 
87
  repository.status = RepositoryStatusEnum.READY
@@ -222,7 +239,7 @@ async def delete_repository(
222
  raise HTTPException(status_code=404, detail="Repository not found or access denied")
223
 
224
  try:
225
- # Delete vector data from ChromaDB
226
  vector_service = VectorService()
227
  await vector_service.delete_repository_data(repository_id)
228
  logger.info(f"🗑️ Deleted vector data for repository {repository_id}")
 
81
  if not embedded_chunks:
82
  raise Exception("Failed to generate local embeddings")
83
 
84
+ force_log(f"💾 Step 4a: Storing full content in PostgreSQL (Neon)")
85
+ # Store full content in database
86
+ from app.models.code_file import CodeFile
87
+ for chunk in embedded_chunks:
88
+ code_file = CodeFile(
89
+ repository_id=repository_id,
90
+ file_path=chunk['file_path'],
91
+ full_content=chunk['content'],
92
+ chunk_index=chunk['chunk_index'],
93
+ start_line=chunk['start_line'],
94
+ end_line=chunk['end_line'],
95
+ chunk_type=chunk['chunk_type']
96
+ )
97
+ db.add(code_file)
98
+ db.commit()
99
+ force_log(f"✅ Saved {len(embedded_chunks)} code chunks to PostgreSQL")
100
+
101
+ force_log(f"💾 Step 4b: Storing embeddings (identifiers only) in Pinecone")
102
  await vector_service.store_embeddings(repository_id, embedded_chunks)
103
 
104
  repository.status = RepositoryStatusEnum.READY
 
239
  raise HTTPException(status_code=404, detail="Repository not found or access denied")
240
 
241
  try:
242
+ # Delete vector data from Pinecone
243
  vector_service = VectorService()
244
  await vector_service.delete_repository_data(repository_id)
245
  logger.info(f"🗑️ Deleted vector data for repository {repository_id}")