You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Sep 26, 2023. It is now read-only.
@aspirer 你好,我读了下rename的设计文档,这里有几个问题想请教一下:
1 sdk是否在发送rpc时,如果是normal类型的,那么发送的txid是它内存中记录的copyset的txid,而如果是tx类型的(例如rename)那么发送的txid是它内存中记录的copyset的txid+1?
2 请问是否对于一个copyset,其metaserver同时只会处理一个操作?
3 请问如果一个sdk把A rename成了B在metaserver成功了,但是response timeout了。这样的情况下再来发送rename请求过来,对于A和B所在的copyset来说,都是需要先做类似rollback的操作的吗?例如在文档里写的“copyset需要删除dentryA副本”
4 每个sdk自己维护在本地一个copyset的txid。那如果有多个sdk的时候他们之间如何同步这些txid呢?例如sdk1 create成功了file A,使得它的txid变成了1,然后sdk2也试图去create fileA,但是它带过来的txid应该是0,那此时metaserver是如何处理的呢?
5 文中用sdk的 rpc带过来的txid和metaserver的pendingtxid比较,如果txid>=pendingtxid就认为txid是成功了,实际上的意思是不是说如果是normal类型的rpc,需要txid=pendingtxid认为txid是成功了,而对于tx类型的rpc,需要txid=pendingtxid+1才认为txid成功了?
多谢答疑解惑
The text was updated successfully, but these errors were encountered: