omusico / egfs

Automatically exported from code.google.com/p/egfs
0 stars 0 forks source link

write sequence diagram #3

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
=====================
http://www.websequencediagrams.com/
======================

Client->MetadataServer: {open, FileName, [Mode]} %Filename is the full path
Mode=r|w
activate MetadataServer
note right of MetadataServer: getFileHandle
MetadataServer->Client: {ok,FileID} | {error,Reason}
deactivate MetadataServer

loop write_chunks
Client->MetadataServer: {allocatechunk,FileID}
activate MetadataServer
note right of MetadataServer: allocateChunk
MetadataServer->Client: {ok, ChunkID, NodeList} | {error,Reason}
deactivate MetadataServer

Client->DataServer: {writechunk, FileID, ChunkID, NodeList}
activate DataServer
note right of DataServer: writeChunk
DataServer->Client: {ok,State} | {error,Reason}
Client->DataServer: DATA
DataServer->Client: ACK
Client->DataServer: DATA
DataServer->Client: ACK
Client->DataServer: DATA
DataServer->Client: ACK
Client->DataServer: FIN
DataServer->MetadataServer: {flush, FileID, ChunkID, ChunkUsedSize, NodeList}
activate MetadataServer
note right of MetadataServer: registerChunk
MetadataServer->DataServer: {ok, State} | {error,Reason}
deactivate MetadataServer

DataServer->Client: {finish, State}
deactivate DataServer
end

Client->MetadataServer: {close, FileID}

Original issue reported on code.google.com by huangxia...@gmail.com on 16 Dec 2008 at 7:14

GoogleCodeExporter commented 9 years ago

Original comment by huangxia...@gmail.com on 16 Dec 2008 at 7:18