From f090a97fe344bf5d8e580af3f8cdaedbbef02178 Mon Sep 17 00:00:00 2001 From: sage Date: Mon, 20 Mar 2006 23:52:52 +0000 Subject: [PATCH] *** empty log message *** git-svn-id: https://ceph.svn.sf.net/svnroot/ceph@723 29311d96-e01e-0410-9327-a35deaab8ce9 --- ceph/client/Client.cc | 14 +++++++++++--- ceph/msg/Messenger.cc | 10 ++++++++++ ceph/msg/TCPMessenger.cc | 12 ++++++++---- ceph/script/comb.pl | 1 + ceph/script/runset.pl | 2 +- ceph/script/sum.pl | 2 +- 6 files changed, 32 insertions(+), 9 deletions(-) diff --git a/ceph/client/Client.cc b/ceph/client/Client.cc index 9608553e39a25..2e346e9f54e05 100644 --- a/ceph/client/Client.cc +++ b/ceph/client/Client.cc @@ -2175,12 +2175,14 @@ int Client::write(fh_t fh, const char *buf, off_t size, off_t offset) Cond cond; int rvalue = 0; + utime_t start = g_clock.now(); + bool done = false; C_Client_Cond *onfinish = new C_Client_Cond(&cond, &done, &rvalue); C_Client_HackUnsafe *onsafe = new C_Client_HackUnsafe(this); unsafe_sync_write++; - dout(-20) << " sync write start " << onfinish << endl; + dout(20) << " sync write start " << onfinish << endl; filer->write(in->inode, size, offset, blist, 0, //NULL,NULL); // no wait hack @@ -2188,10 +2190,16 @@ int Client::write(fh_t fh, const char *buf, off_t size, off_t offset) while (!done) { cond.Wait(client_lock); - dout(-20) << " sync write bump " << onfinish << endl; + dout(20) << " sync write bump " << onfinish << endl; } - dout(-20) << " sync write done " << onfinish << endl; + // time + utime_t lat = g_clock.now(); + lat -= start; + client_logger->finc("wrlsum",(double)lat); + client_logger->inc("wrlnum"); + + dout(20) << " sync write done " << onfinish << endl; } } diff --git a/ceph/msg/Messenger.cc b/ceph/msg/Messenger.cc index 9eb72d5aaeac2..9784d9e2f6ba1 100644 --- a/ceph/msg/Messenger.cc +++ b/ceph/msg/Messenger.cc @@ -71,6 +71,9 @@ using namespace std; #include "messages/MExportDirNotifyAck.h" #include "messages/MExportDirFinish.h" +#include "messages/MHashReaddir.h" +#include "messages/MHashReaddirReply.h" + #include "messages/MHashDirDiscover.h" #include "messages/MHashDirDiscoverAck.h" #include "messages/MHashDirPrep.h" @@ -392,6 +395,13 @@ decode_message(msg_envelope_t& env, bufferlist& payload) break; + case MSG_MDS_HASHREADDIR: + m = new MHashReaddir(); + break; + case MSG_MDS_HASHREADDIRREPLY: + m = new MHashReaddirReply(); + break; + case MSG_MDS_HASHDIRDISCOVER: m = new MHashDirDiscover(); break; diff --git a/ceph/msg/TCPMessenger.cc b/ceph/msg/TCPMessenger.cc index c548cdc8c9a41..32fac8f7f577e 100644 --- a/ceph/msg/TCPMessenger.cc +++ b/ceph/msg/TCPMessenger.cc @@ -590,6 +590,11 @@ Message *tcp_recv(int sd) size_t s = blist.length(); Message *m = decode_message(env, blist); + if (logger) { + logger->inc("in"); + logger->inc("inb", s+sizeof(env)); + } + dout(DBL) << "tcp_recv got " << s << " byte message from " << MSG_ADDR_NICE(m->get_source()) << endl; return m; @@ -800,21 +805,20 @@ void *tcp_inthread(void *r) //dout(1) << "inthread got " << m << " from sd " << sd << " who is " << who << endl; // give to dispatch loop - size_t sz; + size_t sz = m->get_payload().length(); incoming_lock.Lock(); { incoming.push_back(m); incoming_cond.Signal(); stat_inq++; - sz = m->get_payload().length(); stat_inqb += sz; } incoming_lock.Unlock(); if (logger) { - logger->inc("in"); - logger->inc("inb", sz); + //logger->inc("in"); + //logger->inc("inb", sz); } } diff --git a/ceph/script/comb.pl b/ceph/script/comb.pl index d246c7384614c..869a64369598a 100755 --- a/ceph/script/comb.pl +++ b/ceph/script/comb.pl @@ -46,6 +46,7 @@ sub load_sum { # clnode latency? if ($fn =~ /cl/) { + $s->{$k}->{'wrlat'} = $s->{$k}->{'wrlsum'} / $s->{$k}->{'wrlnum'} if $s->{$k}->{'wrlnum'} > 0; $s->{$k}->{'lat'} = $s->{$k}->{'lsum'} / $s->{$k}->{'lnum'} if $s->{$k}->{'lnum'} > 0; $s->{$k}->{'latw'} = $s->{$k}->{'lwsum'} / $s->{$k}->{'lwnum'} if $s->{$k}->{'lwnum'} > 0; $s->{$k}->{'latr'} = $s->{$k}->{'lrsum'} / $s->{$k}->{'lrnum'} if $s->{$k}->{'lrnum'} > 0; diff --git a/ceph/script/runset.pl b/ceph/script/runset.pl index 348ad16e3efa7..9d7f86dec10ba 100755 --- a/ceph/script/runset.pl +++ b/ceph/script/runset.pl @@ -79,7 +79,7 @@ unless (ref $sim) { exit 1; } -open(W, "$out/in"); +open(W, ">$out/in"); print W $raw; close W; diff --git a/ceph/script/sum.pl b/ceph/script/sum.pl index 4e751bf964658..50291b77b2bf9 100755 --- a/ceph/script/sum.pl +++ b/ceph/script/sum.pl @@ -97,6 +97,6 @@ print join("\t", '#maxval', map { $max{$col{$_}} } @c ) . "\n"; print join("\t", '#rows', map { $rows } @c) . "\n"; print join("\t", '#files', map { $files } @c) . "\n"; print join("\t", '#avgval', #map int, - map { $_ / ($rows*$files) } map { $avg{$col{$_}} } @c ) . "\n"; + map { ($rows*$files) ? ($_ / ($rows*$files)):0 } map { $avg{$col{$_}} } @c ) . "\n"; print join("\t", '#avgsum', #map int, map { $_ / $rows } map { $avg{$col{$_}} } @c ) . "\n"; -- 2.39.5