Gifford's quorum consensus replication is in use at servers X, Y and Z which all hold replicas of data items A and B. The initial values of all replicas of A and B are 100 and the votes for A and B are 1 at each of X, Y and Z. Also R = W = 2 for both A and B. A client reads the value of A and then writes it to B.
(i) At the time the client performs these operations, a partition separates servers X and Y from server Z. Describe the quora obtained and the operations that take place if the client can access servers X and Y.
(ii) Describe the quora obtained and the operations that take place if the client can access only server Z.
(iii) The partition is repaired and then another partition occurs so that X and Z are separated from Y. Describe the quora obtained and the operations that take place if the client can access servers X and Z.
i) Partition separates X and Y from Z when all data items have version v0 say:
A client reads the value of A and then writes it to B:
read quorum = 1+1 for A and B - client Reads A from X or Y
write quorum = 1+1 for B client Writes B at X and Y
ii) Client can access only server Z: read quorum = 1, so client cannot read, write quorum = 1 so client cannot write, therefore neither operation takes place.
iii) After the partition is repaired, the values of A and B at Z may be out of date, due to clients having written new values at servers X and Y. e.g. versions v1:
Then another partition occurs so that X and Z are separated from Y.
The client Read request causes an attempt to obtain a read quorum from X and Z. This notes that the versions
(
You might also like to view...
Which of the following statements is false?
a. When we say that Python applies certain operators from left to right, we are referring to the operators’ grouping. b. In the following expression, the addition operators (+) group as if we paren-thesized the expression as a + (b + c): a + b + c c. All Python operators of the same precedence group left-to-right except for the exponentiation operator (**), which groups right-to-left. d. You can use redundant parentheses to group subexpressions to make expres-sions clearer. For example, the second-degree polynomial y = a * x ** 2 + b * x + c can be parenthesized, for clarity, as y = (a * (x ** 2)) + (b * x) + c
For IPv6 addresses, you can use two periods to indicate a string of consecutive 16-bit groups with a value of zero.
Answer the following statement true (T) or false (F)
A two-dimensional array that will accumulate the rows and columns:
a. Should have an additional row and column specified for the totals. b. Should use two other one-dimensional arrays for the totals. c. Should have a third dimension for the totals. d. None of the above.
Which of the following statements about the C format specifier is false.
a) It formats the string as currency. b) It includes an appropriate currency symbol ($ in the U.S.) next to the number. c) It separates digits with an appropriate separator character (in the U.S. its a comma between every digit.) d) It sets the number of decimal places to two by default.