From 69528a1b72bc578430e3a3e12d7cd63680986c29 Mon Sep 17 00:00:00 2001 From: Robby Zambito Date: Sun, 4 Jan 2026 20:25:30 -0500 Subject: Probe for optimal network buffer size. We want to match the underlying system socket buffer. Filling this buffer minimizes the number of syscalls we do. Larger would be a waste. Also changed parser to use enums that more closely match the NATS message types. --- src/server/Client.zig | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'src/server/Client.zig') diff --git a/src/server/Client.zig b/src/server/Client.zig index 53a66b9..1e93360 100644 --- a/src/server/Client.zig +++ b/src/server/Client.zig @@ -41,29 +41,29 @@ pub fn start(self: *Client, io: std.Io, alloc: std.mem.Allocator) !void { for (0..len) |i| { const msg = msgs[i]; defer switch (msg) { - .msg => |m| m.deinit(alloc), - .hmsg => |h| h.deinit(alloc), + .MSG => |m| m.deinit(alloc), + .HMSG => |h| h.deinit(alloc), else => {}, }; errdefer for (msgs[i + 1 .. len]) |mg| switch (mg) { - .msg => |m| { + .MSG => |m| { m.deinit(alloc); }, else => {}, }; switch (msg) { - .@"+ok" => { + .@"+OK" => { _ = try self.to_client.write("+OK\r\n"); }, - .pong => { + .PONG => { _ = try self.to_client.write("PONG\r\n"); }, - .info => |info| { + .INFO => |info| { _ = try self.to_client.write("INFO "); try std.json.Stringify.value(info, .{}, self.to_client); _ = try self.to_client.write("\r\n"); }, - .msg => |m| { + .MSG => |m| { @branchHint(.likely); try self.to_client.print( "MSG {s} {s} {s} {d}\r\n{s}\r\n", @@ -76,7 +76,7 @@ pub fn start(self: *Client, io: std.Io, alloc: std.mem.Allocator) !void { }, ); }, - .hmsg => |hmsg| { + .HMSG => |hmsg| { @branchHint(.likely); try self.to_client.print("HMSG {s} {s} {s} {d} {d}\r\n{s}\r\n", .{ hmsg.msg.subject, @@ -87,7 +87,7 @@ pub fn start(self: *Client, io: std.Io, alloc: std.mem.Allocator) !void { hmsg.msg.payload, }); }, - .@"-err" => |s| { + .@"-ERR" => |s| { _ = try self.to_client.print("-ERR '{s}'\r\n", .{s}); }, else => |m| { -- cgit