[英]It is possible to restore document in solr usinf tlog file
每次我在 solr 中添加/更新文档时,tlog 文件都会维护每次提交的请求查询。
示例:当我使用更新命令提交时:
curl -XPOST -H 'Content-Type: application/json' 'http://localhost:8983/solr/sample_list/update' --data-binary '{"add":{"doc":{ "id":"7","name":"test dfasdata jan565765"}},"commit":{}}'
tlog 文件内容如下:
^B
^B)SOLR_TLOGA'strings<83>"id$name)版本^@^@^@)<83>A^G^VYîÖ·^@^@^@^P^C^H?<80>^@^ @á!7â7test dfasdata jan565765ã^G^VYîÖ·^@^@^@^@^@^@8<83>D`-SOLR_TLOG_END^@^@^@^Q
是否可以在 tlog 文件中执行请求查询以进行不可读格式的恢复目的?
我遇到了同样的问题,我找到了解决方案/解决方法:
在我的测试用例中,文件夹中只有一个 tlog 文件。
要找出您应该删除的字符,只需在“文档”下的管理网络界面中添加一个示例文档,其中“提交范围”为 100000 值,然后立即停止 solr。
在 solr 执行提交之前停止 solr 很重要(在 time 内提交应该很高)。
然后将新的 tlog 文件复制到桌面或其他文件夹中。 再次启动solr并比较两个文件,然后你会看到tlog添加到索引后solr附加了“ƒD`-SOLR_TLOG_END”字符串。
简而言之:如果 solr 在提交前宕机,tlog 用于将文档添加到索引中; 如果 solr 再次启动,tlog 用于添加尚未提交到索引的文档。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.