From 291d1011d5fcba8cde29e82838fe39553483fec5 Mon Sep 17 00:00:00 2001 From: Avinash Sajjanshetty Date: Sun, 23 Aug 2026 10:47:34 +0530 Subject: [PATCH] Add support for `ANALYZE` --- libsql/src/parser.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/libsql/src/parser.rs b/libsql/src/parser.rs index afce19af24..97cb71c785 100644 --- a/libsql/src/parser.rs +++ b/libsql/src/parser.rs @@ -121,6 +121,7 @@ impl StmtKind { Cmd::Stmt(Stmt::Attach { .. }) => Some(Self::Attach), Cmd::Stmt(Stmt::Detach(_)) => Some(Self::Detach), Cmd::Stmt(Stmt::Reindex { .. }) => Some(Self::Write), + Cmd::Stmt(Stmt::Analyze(..)) => Some(Self::Write), _ => None, } } @@ -298,4 +299,13 @@ mod tests { let stmt = result.next().unwrap().unwrap(); assert_eq!(stmt.kind, StmtKind::Attach); } + + #[test] + fn test_analyze_is_write() { + let mut result = Statement::parse("ANALYZE"); + + let stmt = result.next().unwrap().unwrap(); + assert_eq!(stmt.kind, StmtKind::Write); + assert!(!stmt.is_read_only()); + } }