aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoralex <[email protected]>2026-07-04 22:06:14 +0200
committeralex <[email protected]>2026-07-04 22:06:14 +0200
commit901e8a7bd85cdb6ba1e610a492aadfbdf5e26a39 (patch)
treecc5f7d9b47145625630e776b1db3548566a13baa
parent7d7a61b655ebf71c2e1bf7e57a1dd345363e2775 (diff)
downloadredis-clone-901e8a7bd85cdb6ba1e610a492aadfbdf5e26a39.tar.xz
redis-clone-901e8a7bd85cdb6ba1e610a492aadfbdf5e26a39.zip
added flushall keyword
-rw-r--r--main.go8
1 files changed, 8 insertions, 0 deletions
diff --git a/main.go b/main.go
index 3130b26..7e8c13e 100644
--- a/main.go
+++ b/main.go
@@ -126,6 +126,12 @@ func handleDecr(conn net.Conn, key string){
func handlePing(conn net.Conn) {
conn.Write([]byte("+PONG\r\n"))
}
+func handleFlushall(conn net.Conn){
+ db.mu.Lock()
+ db.data = make(map[string]string)
+ conn.Write([]byte("+OK\r\n"))
+ db.mu.Unlock()
+}
func parseRESP(reader *bufio.Reader) ([]string, error) {
line, err := reader.ReadString('\n')
@@ -196,6 +202,8 @@ func handleConnection(conn net.Conn) {
handleDecr(conn, args[1])
case command == "PING" && len(args) == 1:
handlePing(conn)
+ case command == "FLUSHALL" && len(args) == 1:
+ handleFlushall(conn)
default:
conn.Write([]byte("-ERR unknown command or wrong arguments\r\n"))
}