Author: jbellis
Date: Mon Apr 20 20:05:14 2009
New Revision: 766839
URL: http://svn.apache.org/viewvc?rev=766839&view=rev
Log:
clean up ReadCommand; it's basically a struct so use public final fields
patch by jbellis; reviewed by Eric Evans for #88
Modified:
incubator/cassandra/trunk/src/org/apache/cassandra/db/ReadCommand.java
incubator/cassandra/trunk/src/org/apache/cassandra/db/ReadVerbHandler.java
incubator/cassandra/trunk/src/org/apache/cassandra/service/ConsistencyManager.java
incubator/cassandra/trunk/src/org/apache/cassandra/service/MultiQuorumResponseHandler.java
incubator/cassandra/trunk/src/org/apache/cassandra/service/StorageProxy.java
incubator/cassandra/trunk/test/org/apache/cassandra/db/ReadMessageTest.java
Modified: incubator/cassandra/trunk/src/org/apache/cassandra/db/ReadCommand.java
URL:
http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/org/apache/cassandra/db/ReadCommand.java?rev=766839&r1=766838&r2=766839&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/org/apache/cassandra/db/ReadCommand.java
(original)
+++ incubator/cassandra/trunk/src/org/apache/cassandra/db/ReadCommand.java Mon
Apr 20 20:05:14 2009
@@ -22,9 +22,10 @@
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
-import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
+import java.util.Arrays;
+import java.util.Collections;
import org.apache.commons.lang.StringUtils;
@@ -37,197 +38,162 @@
* Author : Avinash Lakshman ( [email protected]) & Prashant Malik (
[email protected] )
*/
-public class ReadCommand implements Serializable
+public class ReadCommand
{
- private static ICompactSerializer<ReadCommand> serializer_;
- public static final String doRepair_ = "READ-REPAIR";
+ public static final String DO_REPAIR = "READ-REPAIR";
- static
- {
- serializer_ = new ReadCommandSerializer();
- }
+ private static ReadCommandSerializer serializer = new
ReadCommandSerializer();
- static ICompactSerializer<ReadCommand> serializer()
- {
- return serializer_;
- }
-
- public static Message makeReadMessage(ReadCommand readCommand) throws
IOException
- {
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- DataOutputStream dos = new DataOutputStream( bos );
- ReadCommand.serializer().serialize(readCommand, dos);
- Message message = new
Message(StorageService.getLocalStorageEndPoint(), StorageService.readStage_,
StorageService.readVerbHandler_, new Object[]{bos.toByteArray()});
- return message;
- }
-
- private String table_;
- private String key_;
- private String columnFamily_column_ = null;
- private int start_ = -1;
- private int count_ = -1 ;
- private long sinceTimestamp_ = -1 ;
- private List<String> columns_ = new ArrayList<String>();
- private boolean isDigestQuery_ = false;
-
- private ReadCommand()
- {
- }
-
- public ReadCommand(String table, String key)
+ public static ReadCommandSerializer serializer()
{
- table_ = table;
- key_ = key;
+ return serializer;
}
- public ReadCommand(String table, String key, String columnFamily_column)
- {
- table_ = table;
- key_ = key;
- columnFamily_column_ = columnFamily_column;
- }
-
- public ReadCommand(String table, String key, String columnFamily,
List<String> columns)
- {
- table_ = table;
- key_ = key;
- columnFamily_column_ = columnFamily;
- columns_ = columns;
- }
-
- public ReadCommand(String table, String key, String columnFamily_column,
int start, int count)
- {
- table_ = table;
- key_ = key;
- columnFamily_column_ = columnFamily_column;
- start_ = start ;
- count_ = count;
- }
+ private static List<String> EMPTY_COLUMNS = Arrays.asList(new String[0]);
- public ReadCommand(String table, String key, String columnFamily_column,
long sinceTimestamp)
+ public Message makeReadMessage() throws IOException
{
- table_ = table;
- key_ = key;
- columnFamily_column_ = columnFamily_column;
- sinceTimestamp_ = sinceTimestamp ;
+ ByteArrayOutputStream bos = new ByteArrayOutputStream();
+ DataOutputStream dos = new DataOutputStream(bos);
+ ReadCommand.serializer().serialize(this, dos);
+ return new Message(StorageService.getLocalStorageEndPoint(),
StorageService.readStage_, StorageService.readVerbHandler_, bos.toByteArray());
}
- String table()
+ public final String table;
+
+ public final String key;
+
+ public final String columnFamilyColumn;
+
+ public final int start;
+
+ public final int count;
+
+ public final long sinceTimestamp;
+
+ public final List<String> columnNames;
+
+ private boolean isDigestQuery = false;
+
+ public ReadCommand(String table, String key, String columnFamilyColumn,
int start, int count, long sinceTimestamp, List<String> columnNames)
{
- return table_;
+ this.table = table;
+ this.key = key;
+ this.columnFamilyColumn = columnFamilyColumn;
+ this.start = start;
+ this.count = count;
+ this.sinceTimestamp = sinceTimestamp;
+ this.columnNames = Collections.unmodifiableList(columnNames);
}
-
- public String key()
+
+ public ReadCommand(String table, String key)
{
- return key_;
+ this(table, key, null, -1, -1, -1, EMPTY_COLUMNS);
}
- String columnFamily_column()
+ public ReadCommand(String table, String key, String columnFamilyColumn)
{
- return columnFamily_column_;
+ this(table, key, columnFamilyColumn, -1, -1, -1, EMPTY_COLUMNS);
}
- int start()
+ public ReadCommand(String table, String key, String columnFamilyColumn,
List<String> columnNames)
{
- return start_;
+ this(table, key, columnFamilyColumn, -1, -1, -1, columnNames);
}
- int count()
+ public ReadCommand(String table, String key, String columnFamilyColumn,
int start, int count)
{
- return count_;
+ this(table, key, columnFamilyColumn, start, count, -1, EMPTY_COLUMNS);
}
- long sinceTimestamp()
+ public ReadCommand(String table, String key, String columnFamilyColumn,
long sinceTimestamp)
{
- return sinceTimestamp_;
+ this(table, key, columnFamilyColumn, -1, -1, sinceTimestamp,
EMPTY_COLUMNS);
}
public boolean isDigestQuery()
{
- return isDigestQuery_;
+ return isDigestQuery;
}
-
- public void setIsDigestQuery(boolean isDigestQuery)
+
+ public void setDigestQuery(boolean isDigestQuery)
{
- isDigestQuery_ = isDigestQuery;
+ this.isDigestQuery = isDigestQuery;
}
-
- public List<String> getColumnNames()
+
+ public ReadCommand copy()
{
- return columns_;
+ return new ReadCommand(table, key, columnFamilyColumn, start, count,
sinceTimestamp, columnNames);
}
public String toString()
{
return "ReadMessage(" +
- "table='" + table_ + '\'' +
- ", key='" + key_ + '\'' +
- ", columnFamily_column='" + columnFamily_column_ + '\'' +
- ", start=" + start_ +
- ", count=" + count_ +
- ", sinceTimestamp=" + sinceTimestamp_ +
- ", columns=[" + StringUtils.join(columns_, ", ") + "]" +
- ", isDigestQuery=" + isDigestQuery_ +
+ "table='" + table + '\'' +
+ ", key='" + key + '\'' +
+ ", columnFamilyColumn='" + columnFamilyColumn + '\'' +
+ ", start=" + start +
+ ", count=" + count +
+ ", sinceTimestamp=" + sinceTimestamp +
+ ", columns=[" + StringUtils.join(columnNames, ", ") + "]" +
')';
}
}
class ReadCommandSerializer implements ICompactSerializer<ReadCommand>
{
- public void serialize(ReadCommand rm, DataOutputStream dos) throws
IOException
- {
- dos.writeUTF(rm.table());
- dos.writeUTF(rm.key());
- dos.writeUTF(rm.columnFamily_column());
- dos.writeInt(rm.start());
- dos.writeInt(rm.count());
- dos.writeLong(rm.sinceTimestamp());
- dos.writeBoolean(rm.isDigestQuery());
- List<String> columns = rm.getColumnNames();
- dos.writeInt(columns.size());
- if ( columns.size() > 0 )
- {
- for ( String column : columns )
- {
- dos.writeInt(column.getBytes().length);
- dos.write(column.getBytes());
- }
- }
- }
-
+ public void serialize(ReadCommand rm, DataOutputStream dos) throws
IOException
+ {
+ dos.writeUTF(rm.table);
+ dos.writeUTF(rm.key);
+ dos.writeUTF(rm.columnFamilyColumn);
+ dos.writeInt(rm.start);
+ dos.writeInt(rm.count);
+ dos.writeLong(rm.sinceTimestamp);
+ dos.writeBoolean(rm.isDigestQuery());
+ dos.writeInt(rm.columnNames.size());
+ if (rm.columnNames.size() > 0)
+ {
+ for (String cName : rm.columnNames)
+ {
+ dos.writeInt(cName.getBytes().length);
+ dos.write(cName.getBytes());
+ }
+ }
+ }
+
public ReadCommand deserialize(DataInputStream dis) throws IOException
{
- String table = dis.readUTF();
- String key = dis.readUTF();
- String columnFamily_column = dis.readUTF();
- int start = dis.readInt();
- int count = dis.readInt();
- long sinceTimestamp = dis.readLong();
- boolean isDigest = dis.readBoolean();
-
- int size = dis.readInt();
- List<String> columns = new ArrayList<String>();
- for ( int i = 0; i < size; ++i )
- {
- byte[] bytes = new byte[dis.readInt()];
- dis.readFully(bytes);
- columns.add( new String(bytes) );
- }
- ReadCommand rm = null;
- if ( columns.size() > 0 )
- {
- rm = new ReadCommand(table, key, columnFamily_column,
columns);
- }
- else if( sinceTimestamp > 0 )
- {
- rm = new ReadCommand(table, key, columnFamily_column,
sinceTimestamp);
- }
- else
- {
- rm = new ReadCommand(table, key, columnFamily_column,
start, count);
- }
- rm.setIsDigestQuery(isDigest);
- return rm;
+ String table = dis.readUTF();
+ String key = dis.readUTF();
+ String columnFamily_column = dis.readUTF();
+ int start = dis.readInt();
+ int count = dis.readInt();
+ long sinceTimestamp = dis.readLong();
+ boolean isDigest = dis.readBoolean();
+
+ int size = dis.readInt();
+ List<String> columns = new ArrayList<String>();
+ for (int i = 0; i < size; ++i)
+ {
+ byte[] bytes = new byte[dis.readInt()];
+ dis.readFully(bytes);
+ columns.add(new String(bytes));
+ }
+ ReadCommand rm = null;
+ if (columns.size() > 0)
+ {
+ rm = new ReadCommand(table, key, columnFamily_column, columns);
+ }
+ else if (sinceTimestamp > 0)
+ {
+ rm = new ReadCommand(table, key, columnFamily_column,
sinceTimestamp);
+ }
+ else
+ {
+ rm = new ReadCommand(table, key, columnFamily_column, start,
count);
+ }
+ rm.setDigestQuery(isDigest);
+ return rm;
}
}
-
Modified:
incubator/cassandra/trunk/src/org/apache/cassandra/db/ReadVerbHandler.java
URL:
http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/org/apache/cassandra/db/ReadVerbHandler.java?rev=766839&r1=766838&r2=766839&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/org/apache/cassandra/db/ReadVerbHandler.java
(original)
+++ incubator/cassandra/trunk/src/org/apache/cassandra/db/ReadVerbHandler.java
Mon Apr 20 20:05:14 2009
@@ -73,23 +73,23 @@
try
{
ReadCommand readCommand =
ReadCommand.serializer().deserialize(readCtx.bufIn_);
- Table table = Table.open(readCommand.table());
+ Table table = Table.open(readCommand.table);
Row row = null;
long start = System.currentTimeMillis();
- if( readCommand.columnFamily_column() == null )
- row = table.get(readCommand.key());
+ if( readCommand.columnFamilyColumn == null )
+ row = table.get(readCommand.key);
else
{
- if(readCommand.getColumnNames().size() == 0)
+ if(readCommand.columnNames.size() == 0)
{
- if(readCommand.count() > 0 && readCommand.start() >= 0)
- row = table.getRow(readCommand.key(),
readCommand.columnFamily_column(), readCommand.start(), readCommand.count());
+ if(readCommand.count > 0 && readCommand.start >= 0)
+ row = table.getRow(readCommand.key,
readCommand.columnFamilyColumn, readCommand.start, readCommand.count);
else
- row = table.getRow(readCommand.key(),
readCommand.columnFamily_column());
+ row = table.getRow(readCommand.key,
readCommand.columnFamilyColumn);
}
else
{
- row = table.getRow(readCommand.key(),
readCommand.columnFamily_column(), readCommand.getColumnNames());
+ row = table.getRow(readCommand.key,
readCommand.columnFamilyColumn, readCommand.columnNames);
}
}
logger_.info("getRow() TIME: " + (System.currentTimeMillis() -
start) + " ms.");
@@ -121,8 +121,8 @@
logger_.info("ReadVerbHandler TIME 2: " +
(System.currentTimeMillis() - start) + " ms.");
/* Do read repair if header of the message says so */
- String repair = new String(
message.getHeader(ReadCommand.doRepair_) );
- if ( repair.equals( ReadCommand.doRepair_ ) )
+ String repair = new String(
message.getHeader(ReadCommand.DO_REPAIR) );
+ if ( repair.equals( ReadCommand.DO_REPAIR) )
doReadRepair(row, readCommand);
}
catch ( IOException ex)
@@ -139,25 +139,25 @@
{
if ( DatabaseDescriptor.getConsistencyCheck() )
{
- List<EndPoint> endpoints =
StorageService.instance().getNLiveStorageEndPoint(readCommand.key());
+ List<EndPoint> endpoints =
StorageService.instance().getNLiveStorageEndPoint(readCommand.key);
/* Remove the local storage endpoint from the list. */
endpoints.remove( StorageService.getLocalStorageEndPoint() );
- if(readCommand.getColumnNames().size() == 0)
+ if(readCommand.columnNames.size() == 0)
{
- if( readCommand.start() >= 0 && readCommand.count() <
Integer.MAX_VALUE)
+ if( readCommand.start >= 0 && readCommand.count <
Integer.MAX_VALUE)
{
- StorageService.instance().doConsistencyCheck(row,
endpoints, readCommand.columnFamily_column(), readCommand.start(),
readCommand.count());
+ StorageService.instance().doConsistencyCheck(row,
endpoints, readCommand.columnFamilyColumn, readCommand.start,
readCommand.count);
}
- if( readCommand.sinceTimestamp() > 0)
+ if( readCommand.sinceTimestamp > 0)
{
- StorageService.instance().doConsistencyCheck(row,
endpoints, readCommand.columnFamily_column(), readCommand.sinceTimestamp());
+ StorageService.instance().doConsistencyCheck(row,
endpoints, readCommand.columnFamilyColumn, readCommand.sinceTimestamp);
}
}
else
{
- StorageService.instance().doConsistencyCheck(row, endpoints,
readCommand.columnFamily_column(), readCommand.getColumnNames());
+ StorageService.instance().doConsistencyCheck(row, endpoints,
readCommand.columnFamilyColumn, readCommand.columnNames);
}
}
}
Modified:
incubator/cassandra/trunk/src/org/apache/cassandra/service/ConsistencyManager.java
URL:
http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/org/apache/cassandra/service/ConsistencyManager.java?rev=766839&r1=766838&r2=766839&view=diff
==============================================================================
---
incubator/cassandra/trunk/src/org/apache/cassandra/service/ConsistencyManager.java
(original)
+++
incubator/cassandra/trunk/src/org/apache/cassandra/service/ConsistencyManager.java
Mon Apr 20 20:05:14 2009
@@ -94,7 +94,7 @@
String table = DatabaseDescriptor.getTables().get(0);
ReadCommand readCommand = constructReadMessage(false);
// ReadMessage readMessage = new ReadMessage(table,
row_.key(), columnFamily_);
- Message message = ReadCommand.makeReadMessage(readCommand);
+ Message message = readCommand.makeReadMessage();
MessagingService.getMessagingInstance().sendRR(message,
replicas_.toArray( new EndPoint[0] ), responseHandler);
}
}
@@ -186,7 +186,7 @@
ReadCommand readCommandDigestOnly = constructReadMessage(true);
try
{
- Message messageDigestOnly =
ReadCommand.makeReadMessage(readCommandDigestOnly);
+ Message messageDigestOnly =
readCommandDigestOnly.makeReadMessage();
IAsyncCallback digestResponseHandler = new
DigestResponseHandler();
MessagingService.getMessagingInstance().sendRR(messageDigestOnly,
replicas_.toArray(new EndPoint[0]), digestResponseHandler);
}
@@ -221,7 +221,7 @@
readCommand = new ReadCommand(table, row_.key(), columnFamily_,
columnNames_);
}
- readCommand.setIsDigestQuery(isDigestQuery);
+ readCommand.setDigestQuery(isDigestQuery);
return readCommand;
}
}
Modified:
incubator/cassandra/trunk/src/org/apache/cassandra/service/MultiQuorumResponseHandler.java
URL:
http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/org/apache/cassandra/service/MultiQuorumResponseHandler.java?rev=766839&r1=766838&r2=766839&view=diff
==============================================================================
---
incubator/cassandra/trunk/src/org/apache/cassandra/service/MultiQuorumResponseHandler.java
(original)
+++
incubator/cassandra/trunk/src/org/apache/cassandra/service/MultiQuorumResponseHandler.java
Mon Apr 20 20:05:14 2009
@@ -130,9 +130,9 @@
if ( DatabaseDescriptor.getConsistencyCheck())
{
ReadCommand readCommand = readMessages_.get(key);
- readCommand.setIsDigestQuery(false);
- Message messageRepair =
ReadCommand.makeReadMessage(readCommand);
- EndPoint[] endpoints =
MultiQuorumResponseHandler.this.endpoints_.get( readCommand.key() );
+ readCommand.setDigestQuery(false);
+ Message messageRepair = readCommand.makeReadMessage();
+ EndPoint[] endpoints =
MultiQuorumResponseHandler.this.endpoints_.get(readCommand.key);
Message[][] messages = new Message[][]{ {messageRepair,
messageRepair, messageRepair} };
EndPoint[][] epList = new EndPoint[][]{ endpoints };
MessagingService.getMessagingInstance().sendRR(messages,
epList, MultiQuorumResponseHandler.this);
Modified:
incubator/cassandra/trunk/src/org/apache/cassandra/service/StorageProxy.java
URL:
http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/org/apache/cassandra/service/StorageProxy.java?rev=766839&r1=766838&r2=766839&view=diff
==============================================================================
---
incubator/cassandra/trunk/src/org/apache/cassandra/service/StorageProxy.java
(original)
+++
incubator/cassandra/trunk/src/org/apache/cassandra/service/StorageProxy.java
Mon Apr 20 20:05:14 2009
@@ -149,7 +149,7 @@
Set<String> keys = readMessages.keySet();
for ( String key : keys )
{
- Message message = ReadCommand.makeReadMessage(
readMessages.get(key) );
+ Message message = readMessages.get(key).makeReadMessage();
messages.put(key, message);
}
return messages;
@@ -210,8 +210,8 @@
EndPoint endPoint =
StorageService.instance().findSuitableEndPoint(key);
if(endPoint != null)
{
- Message message = ReadCommand.makeReadMessage(readCommand);
- message.addHeader(ReadCommand.doRepair_,
ReadCommand.doRepair_.getBytes());
+ Message message = readCommand.makeReadMessage();
+ message.addHeader(ReadCommand.DO_REPAIR,
ReadCommand.DO_REPAIR.getBytes());
IAsyncResult iar =
MessagingService.getMessagingInstance().sendRR(message, endPoint);
Object[] result = iar.get(DatabaseDescriptor.getRpcTimeout(),
TimeUnit.MILLISECONDS);
byte[] body = (byte[])result[0];
@@ -437,7 +437,7 @@
ReadCommand readCommand = new ReadCommand(tablename, key,
columnFamily, columns);
ReadCommand readCommandDigestOnly = new ReadCommand(tablename, key,
columnFamily, columns);
- readCommandDigestOnly.setIsDigestQuery(true);
+ readCommandDigestOnly.setDigestQuery(true);
Row row = StorageProxy.doStrongReadProtocol(key, readCommand,
readCommandDigestOnly);
logger_.debug("readProtocol: " + (System.currentTimeMillis() -
startTime) + " ms.");
@@ -474,7 +474,7 @@
{
readCommand = new ReadCommand(tablename, key, columnFamily);
}
- Message message = ReadCommand.makeReadMessage(readCommand);
+ Message message = readCommand.makeReadMessage();
if( start >= 0 && count < Integer.MAX_VALUE)
{
readCommandDigestOnly = new ReadCommand(tablename, key,
columnFamily, start, count);
@@ -483,7 +483,7 @@
{
readCommandDigestOnly = new ReadCommand(tablename, key,
columnFamily);
}
- readCommandDigestOnly.setIsDigestQuery(true);
+ readCommandDigestOnly.setDigestQuery(true);
Row row = doStrongReadProtocol(key, readCommand,
readCommandDigestOnly);
logger_.debug("readProtocol: " + (System.currentTimeMillis() -
startTime) + " ms.");
return row;
@@ -508,24 +508,24 @@
Map<String, ReadCommand[]> readMessages = new HashMap<String,
ReadCommand[]>();
for (String key : keys )
{
- ReadCommand[] readCommand = new ReadCommand[2];
+ ReadCommand[] readParameters = new ReadCommand[2];
if( start >= 0 && count < Integer.MAX_VALUE)
{
- readCommand[0] = new ReadCommand(tablename, key, columnFamily,
start, count);
+ readParameters[0] = new ReadCommand(tablename, key,
columnFamily, start, count);
}
else
{
- readCommand[0] = new ReadCommand(tablename, key, columnFamily);
+ readParameters[0] = new ReadCommand(tablename, key,
columnFamily);
}
if( start >= 0 && count < Integer.MAX_VALUE)
{
- readCommand[1] = new ReadCommand(tablename, key, columnFamily,
start, count);
+ readParameters[1] = new ReadCommand(tablename, key,
columnFamily, start, count);
}
else
{
- readCommand[1] = new ReadCommand(tablename, key, columnFamily);
+ readParameters[1] = new ReadCommand(tablename, key,
columnFamily);
}
- readCommand[1].setIsDigestQuery(true);
+ readParameters[1].setDigestQuery(true);
}
rows = doStrongReadProtocol(readMessages);
logger_.debug("readProtocol: " + (System.currentTimeMillis() -
startTime) + " ms.");
@@ -539,9 +539,9 @@
ReadCommand readCommand = null;
ReadCommand readCommandDigestOnly = null;
readCommand = new ReadCommand(tablename, key, columnFamily,
sinceTimestamp);
- Message message = ReadCommand.makeReadMessage(readCommand);
+ Message message = readCommand.makeReadMessage();
readCommandDigestOnly = new ReadCommand(tablename, key, columnFamily,
sinceTimestamp);
- readCommandDigestOnly.setIsDigestQuery(true);
+ readCommandDigestOnly.setDigestQuery(true);
Row row = doStrongReadProtocol(key, readCommand,
readCommandDigestOnly);
logger_.debug("readProtocol: " + (System.currentTimeMillis() -
startTime) + " ms.");
return row;
@@ -556,8 +556,8 @@
private static Row doStrongReadProtocol(String key, ReadCommand
readCommand, ReadCommand readCommandDigest) throws IOException, TimeoutException
{
Row row = null;
- Message message = ReadCommand.makeReadMessage(readCommand);
- Message messageDigestOnly =
ReadCommand.makeReadMessage(readCommandDigest);
+ Message message = readCommand.makeReadMessage();
+ Message messageDigestOnly = readCommandDigest.makeReadMessage();
IResponseResolver<Row> readResponseResolver = new
ReadResponseResolver();
QuorumResponseHandler<Row> quorumResponseHandler = new
QuorumResponseHandler<Row>(
@@ -605,9 +605,9 @@
QuorumResponseHandler<Row> quorumResponseHandlerRepair =
new QuorumResponseHandler<Row>(
DatabaseDescriptor.getReplicationFactor(),
readResponseResolverRepair);
- readCommand.setIsDigestQuery(false);
+ readCommand.setDigestQuery(false);
logger_.info("DigestMismatchException: " + key);
- Message messageRepair =
ReadCommand.makeReadMessage(readCommand);
+ Message messageRepair = readCommand.makeReadMessage();
MessagingService.getMessagingInstance().sendRR(messageRepair, endPoints,
quorumResponseHandlerRepair);
try
{
@@ -634,11 +634,11 @@
for ( String key : keys )
{
Message[] msg = new
Message[DatabaseDescriptor.getReplicationFactor()];
- ReadCommand[] readCommand = readMessages.get(key);
- msg[0] = ReadCommand.makeReadMessage( readCommand[0] );
+ ReadCommand[] readParameters = readMessages.get(key);
+ msg[0] = readParameters[0].makeReadMessage();
for ( int i = 1; i < msg.length; ++i )
{
- msg[i] = ReadCommand.makeReadMessage( readCommand[1] );
+ msg[i] = readParameters[1].makeReadMessage();
}
}
return messages;
Modified:
incubator/cassandra/trunk/test/org/apache/cassandra/db/ReadMessageTest.java
URL:
http://svn.apache.org/viewvc/incubator/cassandra/trunk/test/org/apache/cassandra/db/ReadMessageTest.java?rev=766839&r1=766838&r2=766839&view=diff
==============================================================================
--- incubator/cassandra/trunk/test/org/apache/cassandra/db/ReadMessageTest.java
(original)
+++ incubator/cassandra/trunk/test/org/apache/cassandra/db/ReadMessageTest.java
Mon Apr 20 20:05:14 2009
@@ -25,7 +25,7 @@
private ReadCommand serializeAndDeserializeReadMessage(ReadCommand rm)
{
ReadCommand rm2 = null;
- ReadCommandSerializer rms = (ReadCommandSerializer)
ReadCommand.serializer();
+ ReadCommandSerializer rms = ReadCommand.serializer();
DataOutputBuffer dos = new DataOutputBuffer();
DataInputBuffer dis = new DataInputBuffer();