algolia / algolia/algoliasearch-client-python
Update AlgoliaUnreachableHostException to OperationTimeout
- 主要语言
- Python
- 星标
- 207
- 派生
- 63
- PR 合并指标
- 30 天内没有已合并 PR
描述
- Algolia Client Version: 2.5.0 (I see that 3.0 was released 3 days ago, not sure if that resolves this)
- Language Version: Python 3.9.7
### Description
Client throws `algoliasearch.exceptions.AlgoliaUnreachableHostException`: Unreachable hosts during `replace_all_objects` operation. The issue was not that hosts were unreachable but that the operation was timing out. I fixed the problem by setting `readTimeout` to 100:
```
client = SearchClient.create(algolia_application_id, algolia_api_key)
index = client.init_index(algolia_index)
request_options = {
"readTimeout": 100
}
index.replace_all_objects(records, request_options)
```
A timeout should produce a timeout error. Unreachable is misleading.
### Steps To Reproduce
See description.
Use `replace_all_objects` on a sufficiently big index. Mine was 6393 rows and 10+ columns some with significant text blocks.
贡献指南
调研方向
首先跟踪 Python 客户端中 replace_all_objects 的超时处理,以及它如何将失败映射为 AlgoliaUnreachableHostException。使用足够大的索引重现该操作,然后验证读取超时会报告 OperationTimeout,而真正无法访问的主机仍会报告主机异常。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- python
- 领域
- api
- Issue 类型
- 缺陷
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100