server04 passed
This commit is contained in:
@@ -4,16 +4,18 @@ import time
|
||||
import random
|
||||
from typing import Optional, Dict, List, Tuple
|
||||
|
||||
|
||||
class DatabaseTestClient:
|
||||
def __init__(self, host: str = 'localhost', server_port: int = 40000):
|
||||
self.host = host
|
||||
self.server_port = server_port
|
||||
self.sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
|
||||
self.sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM )
|
||||
self.sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
|
||||
# Bind to any available interface (empty string) on an ephemeral port (0)
|
||||
self.sock.bind(('', 0))
|
||||
self.sock.bind(('0.0.0.0', 50000))
|
||||
# Get the actual port assigned
|
||||
self.client_port = self.sock.getsockname()[1]
|
||||
self.sock.settimeout(1.0) # 1 second timeout for receives
|
||||
self.sock.settimeout(5.0) # 1 second timeout for receives
|
||||
print(f"Client bound to port {self.client_port}")
|
||||
|
||||
def send_insert(self, key: str, value: str) -> None:
|
||||
@@ -30,7 +32,7 @@ class DatabaseTestClient:
|
||||
self.sock.sendto(key.encode(), (self.host, self.server_port))
|
||||
|
||||
try:
|
||||
data, addr = self.sock.recvfrom(1000) # Changed from recvmsg to recvfrom
|
||||
data, addr = self.sock.recvfrom(1024) # Changed from recvmsg to recvfrom
|
||||
return data.decode()
|
||||
except socket.timeout:
|
||||
return None
|
||||
|
||||
Reference in New Issue
Block a user