Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions pageindex/backend/cloud.py
Original file line number Diff line number Diff line change
Expand Up @@ -141,12 +141,13 @@ def add_document(self, collection: str, file_path: str) -> str:

doc_id = resp["doc_id"]

# Poll until retrieval-ready
# Poll until indexing completes. The cloud API signals readiness via
# status == "completed"; retrieval_ready is not a reliable indicator.
for _ in range(120): # 10 min max
tree_resp = self._request("GET", f"/doc/{self._enc(doc_id)}/", params={"type": "tree"})
if tree_resp.get("retrieval_ready"):
return doc_id
status = tree_resp.get("status", "")
if status == "completed":
return doc_id
if status == "failed":
raise CloudAPIError(f"Document {doc_id} indexing failed")
time.sleep(5)
Expand Down