DOCS/journey/troubleshooting/250803_ChromaDB_UUID_충돌_해결.md
Claude-51124 22557e7132 docs: 오래된 트러블슈팅 아카이브 및 구조 정리
- 7-8월 초기 구축 문서 12개를 _archive/troubleshooting/2025_07-08_initial_setup/로 이동
- book/300_architecture/390_human_in_the_loop_intent_learning.md를 journey/research/intent_classification/로 이동 (개발 여정 문서)
- 빈 폴더 제거 (journey/assets/*)
2025-11-17 14:06:05 +09:00

1.1 KiB

ChromaDB UUID 충돌 문제 해결

문제 상황

사용자가 ChromaDB에서 UUID 충돌이 발생할 수 있다는 우려를 제기했습니다.

원인 분석

ChromaDB에서 각 로빙의 메모리를 저장할 때, 컬렉션 이름 생성 방식을 확인한 결과:

# /home/heejae/rb10408_test/app/state/memory_manager.py
self.collection_name = f"robeing_{robeing_id}_memories"

각 로빙은 고유한 ID를 가지고 있어 (rb10408, rb10508_micro 등), 컬렉션 이름이 중복될 가능성이 없었습니다.

추가 확인 사항

메모리 ID 생성 로직:

def generate_id(self, content: str, timestamp: str) -> str:
    """고유 ID 생성"""
    unique_string = f"{self.robeing_id}_{content}_{timestamp}"
    return hashlib.md5(unique_string.encode()).hexdigest()

로빙 ID, 콘텐츠, 타임스탬프를 조합하여 MD5 해시를 생성하므로 충돌 가능성이 극히 낮습니다.

결론

이미 적절한 UUID 충돌 방지 메커니즘이 구현되어 있어 추가 조치가 필요하지 않았습니다.

관련 파일

  • /home/heejae/rb10408_test/app/state/memory_manager.py