Skip to content

Commit 0839215

Browse files
committed
sql: move Session into execution module
1 parent 889aef9 commit 0839215

File tree

9 files changed

+17
-18
lines changed

9 files changed

+17
-18
lines changed

src/bin/toysql.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ use rustyline_derive::{Completer, Helper, Highlighter, Hinter};
1717
use toydb::Client;
1818
use toydb::errinput;
1919
use toydb::error::Result;
20-
use toydb::sql::engine::StatementResult;
20+
use toydb::sql::execution::StatementResult;
2121
use toydb::sql::parser::{Lexer, Token};
2222

2323
fn main() {

src/client.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ use crate::encoding::Value as _;
88
use crate::errdata;
99
use crate::error::{Error, Result};
1010
use crate::server::{Request, Response, Status};
11-
use crate::sql::engine::StatementResult;
11+
use crate::sql::execution::StatementResult;
1212
use crate::sql::types::Table;
1313
use crate::storage::mvcc;
1414

src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@ pub mod storage;
1212

1313
pub use client::Client;
1414
pub use server::Server;
15-
pub use sql::engine::StatementResult;
15+
pub use sql::execution::StatementResult;

src/server.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ use crate::encoding::{self, Value as _};
1212
use crate::error::Result;
1313
use crate::raft;
1414
use crate::sql;
15-
use crate::sql::engine::{Catalog as _, Engine as _, StatementResult};
15+
use crate::sql::engine::{Catalog as _, Engine as _};
16+
use crate::sql::execution::StatementResult;
1617
use crate::sql::types::{Row, Table};
1718
use crate::storage;
1819

@@ -275,7 +276,7 @@ impl Server {
275276
fn sql_session(
276277
id: raft::NodeID,
277278
socket: TcpStream,
278-
mut session: sql::engine::Session<sql::engine::Raft>,
279+
mut session: sql::execution::Session<sql::engine::Raft>,
279280
) -> Result<()> {
280281
let mut reader = BufReader::new(socket.try_clone()?);
281282
let mut writer = BufWriter::new(socket);

src/sql/engine/engine.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
use std::collections::{BTreeMap, BTreeSet};
22

3-
use super::Session;
43
use crate::errinput;
54
use crate::error::Result;
5+
use crate::sql::execution::Session;
66
use crate::sql::types::{Expression, Row, Rows, Table, Value};
77
use crate::storage::mvcc;
88

src/sql/engine/mod.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,7 @@
66
mod engine;
77
mod local;
88
mod raft;
9-
mod session;
109

1110
pub use engine::{Catalog, Engine, Transaction};
1211
pub use local::{Key, Local};
1312
pub use raft::{Raft, Status, Write};
14-
pub use session::{Session, StatementResult};

src/sql/execution/mod.rs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
1-
//! Executes a `Plan`.
1+
//! Executes statements and plans.
22
33
mod aggregator;
44
mod executor;
55
mod join;
6+
mod session;
67

78
pub use executor::{ExecutionResult, Executor};
9+
pub use session::{Session, StatementResult};
Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,17 @@ use itertools::Itertools as _;
22
use log::error;
33
use serde::{Deserialize, Serialize};
44

5-
use super::raft::{Raft, Status};
6-
use super::{Engine, Transaction as _};
75
use crate::error::{Error, Result};
6+
use crate::sql::engine::{Engine, Raft, Status, Transaction as _};
87
use crate::sql::execution::ExecutionResult;
98
use crate::sql::parser::{Parser, ast};
109
use crate::sql::planner::Plan;
1110
use crate::sql::types::{Label, Row, Rows, Value};
1211
use crate::storage::mvcc;
1312
use crate::{errdata, errinput};
1413

15-
/// A SQL client session. Executes raw SQL statements against a SQL engine and
16-
/// handles transaction control.
17-
///
18-
/// TODO: move into executor module.
14+
/// A SQL client session. Parses and executes raw SQL statements and handles
15+
/// transaction control.
1916
pub struct Session<'a, E: Engine<'a>> {
2017
/// The SQL engine.
2118
engine: &'a E,

src/sql/mod.rs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
//! as follows:
33
//!
44
//! 1. The `toySQL` client connects to the server, which creates a new
5-
//! `sql::engine::Session` in `Server::sql_session`.
5+
//! `sql::execution::Session` in `Server::sql_session`.
66
//!
77
//! 2. `toySQL` submits a SQL `SELECT` string, which the server executes via
88
//! `Session::execute`.
@@ -86,11 +86,12 @@ mod tests {
8686
use tempfile::TempDir;
8787
use test_each_file::test_each_path;
8888

89-
use super::engine::{Catalog as _, Session};
89+
use super::engine::Catalog as _;
90+
use super::execution::{Session, StatementResult};
9091
use super::parser::Parser;
9192
use super::planner::{OPTIMIZERS, Plan};
9293
use crate::encoding::format::{self, Formatter as _};
93-
use crate::sql::engine::{Engine, Local, StatementResult};
94+
use crate::sql::engine::{Engine, Local};
9495
use crate::sql::planner::{Planner, Scope};
9596
use crate::storage::engine::test as testengine;
9697
use crate::storage::{self, Engine as _};

0 commit comments

Comments
 (0)