summaryrefslogtreecommitdiff
path: root/s/server.cpp
diff options
context:
space:
mode:
Diffstat (limited to 's/server.cpp')
-rw-r--r--s/server.cpp17
1 files changed, 8 insertions, 9 deletions
diff --git a/s/server.cpp b/s/server.cpp
index 9bdeede..51f30f1 100644
--- a/s/server.cpp
+++ b/s/server.cpp
@@ -77,19 +77,19 @@ namespace mongo {
public:
virtual ~ShardedMessageHandler() {}
- virtual void process( Message& m , AbstractMessagingPort* p ) {
+ virtual void connected( AbstractMessagingPort* p ) {
+ assert( ClientInfo::get() );
+ }
+
+ virtual void process( Message& m , AbstractMessagingPort* p , LastError * le) {
assert( p );
Request r( m , p );
- LastError * le = lastError.startRequest( m , r.getClientId() );
- assert( le );
+ assert( le );
+ lastError.startRequest( m , le );
- if ( logLevel > 5 ) {
- log(5) << "client id: " << hex << r.getClientId() << "\t" << r.getns() << "\t" << dec << r.op() << endl;
- }
try {
r.init();
- setClientId( r.getClientId() );
r.process();
}
catch ( AssertionException & e ) {
@@ -119,8 +119,7 @@ namespace mongo {
}
virtual void disconnected( AbstractMessagingPort* p ) {
- ClientInfo::disconnect( p->getClientId() );
- lastError.disconnect( p->getClientId() );
+ // all things are thread local
}
};