/** * Prints a debug log message that details the time taken for the Http * request to be parsed by the coordinator * * @param operationType * @param receivedTimeInMs */ protected void debugLog(String operationType, Long receivedTimeInMs) { long durationInMs = receivedTimeInMs - (this.parsedRequestOriginTimeInMs); int numVectorClockEntries = (this.parsedVectorClock == null ? 0 : this.parsedVectorClock.getVersionMap() .size()); logger.debug("Received a new request. Operation type: " + operationType + " , Key(s): " + keysHexString(this.parsedKeys) + " , Store: " + this.storeName + " , Origin time (in ms): " + (this.parsedRequestOriginTimeInMs) + " , Request received at time(in ms): " + receivedTimeInMs + " , Num vector clock entries: " + numVectorClockEntries + " , Duration from RESTClient to CoordinatorRestRequestValidator(in ms): " + durationInMs); }
boolean v2Bigger = false; SortedSet<Short> v1Nodes = v1.getVersionMap().navigableKeySet(); SortedSet<Short> v2Nodes = v2.getVersionMap().navigableKeySet(); break; long v1Version = v1.getVersionMap().get(nodeId); long v2Version = v2.getVersionMap().get(nodeId); if(v1Version > v2Version) { v1Bigger = true;
numVectorClockEntries += successfulPutVC.getVersionMap().size(); String serializedVC = RestUtils.getSerializedVectorClock(successfulPutVC); response.setHeader(RestMessageHeaders.X_VOLD_VECTOR_CLOCK, serializedVC);
vcEntrySize += ((VectorClock) vc.getVersion()).getVersionMap().size();
@Override public void sendResponse(StoreStats performanceStats, boolean isFromLocalZone, long startTimeInMs) throws Exception { String base64Key = RestUtils.encodeVoldemortKey(key.get()); String contentLocationKey = "/" + this.storeName + "/" + base64Key; List<VectorClock> vectorClocks = new ArrayList<VectorClock>(); for(Version versionedValue: versionedValues) { VectorClock vectorClock = (VectorClock) versionedValue; vectorClocks.add(vectorClock); numVectorClockEntries += vectorClock.getVersionMap().size(); } String eTags = RestUtils.getSerializedVectorClocks(vectorClocks); byte[] responseContent = eTags.getBytes(); ChannelBuffer responseContentBuffer = ChannelBuffers.dynamicBuffer(responseContent.length); responseContentBuffer.writeBytes(responseContent); // Create the Response object HttpResponse response = new DefaultHttpResponse(HTTP_1_1, OK); // Set the right headers response.setHeader(CONTENT_TYPE, "binary"); response.setHeader(CONTENT_TRANSFER_ENCODING, "binary"); response.setHeader(CONTENT_LOCATION, contentLocationKey); // Copy the data into the payload response.setContent(responseContentBuffer); response.setHeader(CONTENT_LENGTH, response.getContent().readableBytes()); // Write the response to the Netty Channel this.messageEvent.getChannel().write(response); }
int vcEntrySize = 0; for(Versioned<V> vc: items) { vcEntrySize += ((VectorClock) vc.getVersion()).getVersionMap().size();
numVectorClockEntries += vectorClock.getVersionMap().size();
numVectorClockEntries += vectorClock.getVersionMap().size();