protected void readData(DOMStoreReadTransaction transaction, ReadData message,
final boolean returnSerialized) {
- final ActorRef sender = getSender();
- final ActorRef self = getSelf();
- final YangInstanceIdentifier path = message.getPath();
- final CheckedFuture<Optional<NormalizedNode<?, ?>>, ReadFailedException> future =
- transaction.read(path);
-
- future.addListener(new Runnable() {
- @Override
- public void run() {
- try {
- Optional<NormalizedNode<?, ?>> optional = future.checkedGet();
- ReadDataReply readDataReply = new ReadDataReply(optional.orNull());
- sender.tell((returnSerialized ? readDataReply.toSerializable(clientTxVersion):
- readDataReply), self);
+ final YangInstanceIdentifier path = message.getPath();
+ try {
+ final CheckedFuture<Optional<NormalizedNode<?, ?>>, ReadFailedException> future = transaction.read(path);
+ Optional<NormalizedNode<?, ?>> optional = future.checkedGet();
+ ReadDataReply readDataReply = new ReadDataReply(optional.orNull(), clientTxVersion);
- } catch (Exception e) {
- shardStats.incrementFailedReadTransactionsCount();
- sender.tell(new akka.actor.Status.Failure(e), self);
- }
+ sender().tell((returnSerialized ? readDataReply.toSerializable(): readDataReply), self());
- }
- }, getContext().dispatcher());
+ } catch (Exception e) {
+ LOG.debug(String.format("Unexpected error reading path %s", path), e);
+ shardStats.incrementFailedReadTransactionsCount();
+ sender().tell(new akka.actor.Status.Failure(e), self());
+ }
}
protected void dataExists(DOMStoreReadTransaction transaction, DataExists message,