我正在运行 Solr集群7.4 ,其中每个分片都有 2个节点和 9个分片和 2个副本。
其中一台服务器崩溃时,我在日志中看到此消息( Skipping download for _3nap.fnm because it already exists
):
2019-04-16 09:20:21.333 INFO (recoveryExecutor-4-thread-36-processing-n:192.168.1.2:4239_solr
x:telegram_channel_post_archive_shard5_replica_n53
c:telegram_channel_post_archive s:shard5 r:core_node54)
[c:telegram_channel_post_archive s:shard5 r:core_node54
x:telegram_channel_post_archive_shard5_replica_n53]
o.a.s.h.IndexFetcher Skipping download for _3nap.fnm because it already exists
2019-04-16 09:20:35.265 INFO (recoveryExecutor-4-thread-36-processing-n:192.168.1.2:4239_solr x:telegram_channel_post_archive_shard5_replica_n53 c:telegram_channel_post_archive s:shard5 r:core_node54) [c:telegram_channel_post_archive s:shard5 r:core_node54 x:telegram_channel_post_archive_shard5_replica_n53] o.a.s.h.IndexFetcher Skipping download for _3nap.dim because it already exists
2019-04-16 09:20:51.437 INFO (recoveryExecutor-4-thread-36-processing-n:192.168.1.2:4239_solr x:telegram_channel_post_archive_shard5_replica_n53 c:telegram_channel_post_archive s:shard5 r:core_node54) [c:telegram_channel_post_archive s:shard5 r:core_node54 x:telegram_channel_post_archive_shard5_replica_n53] o.a.s.h.IndexFetcher Skipping download for _3nap.si because it already exists
2019-04-16 09:21:00.528 INFO (qtp1543148593-32) [c:telegram_channel_post_archive s:shard20 r:core_node41 x:telegram_channel_post_archive_shard20_replica_n38] o.a.s.u.p.LogUpdateProcessorFactory [telegram_channel_post_archive_shard20_replica_n38] webapp=/solr path=/update params={update.distrib=FROMLEADER&update.chain=dedupe&distrib.from=http://192.168.1.1:4239/solr/telegram_channel_post_archive_shard20_replica_n83/&min_rf=2&wt=javabin&version=2}{add=[9734588300_4723 (1630961769251864576), 9734588300_4693 (1630961769253961728), 9734588300_4670 (1630961769255010304), 9734588300_4656 (1630961769255010305)]} 0 80197
Solar中的恢复方法如何?
他们将转移碎片中的所有文档还是仅转移损坏的部分?
我在文档中找到此注释:
如果领导者失败了,则它可能已将请求发送到了某些副本,而不是其他人。因此,当识别出新的潜在领导者时,它将针对其他副本运行同步过程。如果成功,则所有内容应保持一致,领导者注册为活动状态,然后继续进行正常操作。 如果副本太不同步,系统将要求进行完全基于复制/重播的恢复。
但是我不理解这部分,这意味着什么?
If a replica is too far out of sync
答案 0 :(得分:1)
该注释只是说它将尝试尽可能少地进行同步,但是,如果这不可能,即同步太晚了,以致事务日志不再可用,则文件中的完整文件集索引将被复制到索引。这比常规复制需要更长的时间。
您收到的消息是,相关文件已被复制,因此不必再次发送到副本。