Documentation ¶
Index ¶
Constants ¶
const ( // ErrSSLRequired is returned when a client attempts to connect to a // secure server in cleartext. ErrSSLRequired = "cleartext connections are not permitted" // ErrDraining is returned when a client attempts to connect to a server // which is not accepting client connections. ErrDraining = "server is not accepting clients" )
Variables ¶
var ( MetaConns = metric.Metadata{Name: "sql.conns"} MetaBytesIn = metric.Metadata{Name: "sql.bytesin"} MetaBytesOut = metric.Metadata{Name: "sql.bytesout"} )
Fully-qualified names for metrics.
Functions ¶
Types ¶
type Server ¶
type Server struct { AmbientCtx log.AmbientContext // contains filtered or unexported fields }
Server implements the server side of the PostgreSQL wire protocol.
func MakeServer ¶
func MakeServer( ambientCtx log.AmbientContext, cfg *base.Config, executor *sql.Executor, internalMemMetrics *sql.MemoryMetrics, maxSQLMem int64, ) *Server
MakeServer creates a Server.
func (*Server) IsDraining ¶
IsDraining returns true if the server is not currently accepting connections.
func (*Server) Metrics ¶
func (s *Server) Metrics() *ServerMetrics
Metrics returns the metrics struct.
func (*Server) ServeConn ¶
ServeConn serves a single connection, driving the handshake process and delegating to the appropriate connection type.
func (*Server) SetDraining ¶
SetDraining (when called with 'true') prevents new connections from being served and waits a reasonable amount of time for open connections to terminate. If an error is returned, the server remains in draining state, though open connections may continue to exist. When called with 'false', switches back to the normal mode of operation in which connections are accepted.
type ServerMetrics ¶
type ServerMetrics struct { BytesInCount *metric.Counter BytesOutCount *metric.Counter Conns *metric.Counter ConnMemMetrics sql.MemoryMetrics SQLMemMetrics sql.MemoryMetrics // contains filtered or unexported fields }
ServerMetrics is the set of metrics for the pgwire server.