From ba0a67a179e43e187d5b3281305666cb89920140 Mon Sep 17 00:00:00 2001 From: Sayan Nandan Date: Wed, 12 May 2021 11:32:31 +0530 Subject: [PATCH] Fix queries returning full responses They should return groups instead --- server/src/admin/mksnap.rs | 16 ++++++---------- server/src/dbnet/connection.rs | 4 +++- server/src/kvengine/del.rs | 2 +- server/src/kvengine/uset.rs | 4 ++-- server/src/protocol/responses.rs | 2 +- 5 files changed, 13 insertions(+), 15 deletions(-) diff --git a/server/src/admin/mksnap.rs b/server/src/admin/mksnap.rs index 8a831b4b..ca8178f0 100644 --- a/server/src/admin/mksnap.rs +++ b/server/src/admin/mksnap.rs @@ -82,7 +82,7 @@ where } if was_engine_error { return con - .write_response(responses::fresp::R_SERVER_ERR.to_owned()) + .write_response(responses::groups::SERVER_ERR.to_owned()) .await; } if engine_was_busy { @@ -93,14 +93,12 @@ where if let Some(succeeded) = snap_result { if succeeded { // Snapshotting succeeded, return Okay - return con - .write_response(responses::fresp::R_OKAY.to_owned()) - .await; + return con.write_response(responses::groups::OKAY.to_owned()).await; } else { // Nope, something happened while creating a snapshot // return a server error return con - .write_response(responses::fresp::R_SERVER_ERR.to_owned()) + .write_response(responses::groups::SERVER_ERR.to_owned()) .await; } } else { @@ -149,16 +147,14 @@ where } if failed { return con - .write_response(responses::fresp::R_SERVER_ERR.to_owned()) + .write_response(responses::groups::SERVER_ERR.to_owned()) .await; } else { - return con - .write_response(responses::fresp::R_OKAY.to_owned()) - .await; + return con.write_response(responses::groups::OKAY.to_owned()).await; } } else { return con - .write_response(responses::fresp::R_ACTION_ERR.to_owned()) + .write_response(responses::groups::ACTION_ERR.to_owned()) .await; } } diff --git a/server/src/dbnet/connection.rs b/server/src/dbnet/connection.rs index fc2cb980..8b9c1487 100644 --- a/server/src/dbnet/connection.rs +++ b/server/src/dbnet/connection.rs @@ -148,7 +148,9 @@ where Err(ParseError::NotEnough) => (), Err(ParseError::DataTypeParseError) => return Ok(QueryResult::Wrongtype), Err(ParseError::UnexpectedByte) | Err(ParseError::BadPacket) => { - return Ok(QueryResult::E(responses::fresp::R_PACKET_ERR.to_owned())); + return Ok(QueryResult::E( + responses::full_responses::R_PACKET_ERR.to_owned(), + )); } Err(ParseError::UnknownDatatype) => { unimplemented!() diff --git a/server/src/kvengine/del.rs b/server/src/kvengine/del.rs index 3acd2551..a2675360 100644 --- a/server/src/kvengine/del.rs +++ b/server/src/kvengine/del.rs @@ -64,6 +64,6 @@ where if let Some(done_howmany) = done_howmany { con.write_response(done_howmany).await } else { - con.write_response(&**responses::fresp::R_SERVER_ERR).await + con.write_response(&**responses::groups::SERVER_ERR).await } } diff --git a/server/src/kvengine/uset.rs b/server/src/kvengine/uset.rs index e46d0276..75fe1c90 100644 --- a/server/src/kvengine/uset.rs +++ b/server/src/kvengine/uset.rs @@ -45,7 +45,7 @@ where // An odd number of arguments means that the number of keys // is not the same as the number of values, we won't run this // action at all - return con.write_response(&**responses::fresp::R_ACTION_ERR).await; + return con.write_response(&**responses::groups::ACTION_ERR).await; } let mut kviter = act.into_iter().skip(1); let failed = { @@ -62,7 +62,7 @@ where } }; if failed { - con.write_response(&**responses::fresp::R_SERVER_ERR).await + con.write_response(&**responses::groups::SERVER_ERR).await } else { con.write_response(howmany / 2).await } diff --git a/server/src/protocol/responses.rs b/server/src/protocol/responses.rs index 1999db56..41c0110c 100644 --- a/server/src/protocol/responses.rs +++ b/server/src/protocol/responses.rs @@ -61,7 +61,7 @@ pub mod groups { } } -pub mod fresp { +pub mod full_responses { //! # Pre-compiled **responses** //! These are pre-compiled **complete** responses. This means that they should //! be written off directly to the stream and should **not be preceded by any response metaframe**