From 4fca7ce12b6e1cb852f37c15d0b74146e0ee3170 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jind=C5=99ich=20Moravec?= Date: Thu, 25 Jan 2024 23:23:18 +0100 Subject: [PATCH] fix: small changes --- minisql/src/interpreter.rs | 5 ++--- minisql/src/type_system.rs | 1 + server/src/main.rs | 6 +++++- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/minisql/src/interpreter.rs b/minisql/src/interpreter.rs index 949e042..a6c1235 100644 --- a/minisql/src/interpreter.rs +++ b/minisql/src/interpreter.rs @@ -166,7 +166,6 @@ impl State { mod tests { use super::*; use std::collections::HashSet; - use std::ops::Deref; fn users_schema() -> TableSchema { let id: ColumnPosition = 0; @@ -215,7 +214,7 @@ mod tests { .interpret(Operation::Select(users.clone(), ColumnSelection::All, None)) .unwrap(); assert!(matches!(response, Response::Selected(_, _))); - let Response::Selected(schema, rows) = response else { + let Response::Selected(_schema, rows) = response else { panic!() }; @@ -269,7 +268,7 @@ mod tests { .unwrap(); assert!(matches!(response, Response::Selected(_, _))); - let Response::Selected(schema, rows) = response else { + let Response::Selected(_schema, rows) = response else { panic!() }; diff --git a/minisql/src/type_system.rs b/minisql/src/type_system.rs index 03cfb13..5f1a0ca 100644 --- a/minisql/src/type_system.rs +++ b/minisql/src/type_system.rs @@ -102,6 +102,7 @@ impl Value { } } +#[cfg(test)] mod tests { use crate::error::TypeConversionError::UnknownType; use super::{Value, IndexableValue}; diff --git a/server/src/main.rs b/server/src/main.rs index d4a2e89..b35c738 100644 --- a/server/src/main.rs +++ b/server/src/main.rs @@ -44,7 +44,6 @@ async fn main() -> anyhow::Result<()> { loop { let state = state.clone(); let tokens = tokens.clone(); - let (pid, key) = random_pid_key(); let (socket, _) = listener.accept().await?; println!("New client connected: {}", socket.peer_addr()?); @@ -156,6 +155,11 @@ where while let Some(row) = rows.next() { writer.write_table_row(&row).await?; sent_rows += 1; + + if token.is_canceled() { + token.reset(); + break; + } } writer.write_command_complete(CompleteStatus::Select(sent_rows)).await?;