Documentation
¶
Index ¶
- Constants
- func IsMatchQuery(q string, prefix string) bool
- func IsPgbenchGetPartitionQuery(q string) bool
- func NewConnWith(netconn net.Conn, opts ...connOption) *conn
- func NewCopyCompleteResponsesFrom(q query.Copy, stream *CopyStream, conn Conn, schema *sql.Schema, ...) (protocol.Responses, error)
- func NewCopyInResponsesFrom(q query.Copy, schema *sql.Schema) (protocol.Responses, error)
- func NewCopyQueryFrom(schema *query.Schema, copyColumns sql.ColumnList, copyData *protocol.CopyData) (query.Insert, error)
- func NewGetPartitionResponseForPgbench() (protocol.Responses, error)
- func WithTLSConnectionState(s *tls.ConnectionState) func(*conn)
- func WithconnDatabase(name string) func(*conn)
- func WithconnStartupMessage(msg *protocol.Startup) func(*conn)
- func WithconnTracer(t tracer.Context) func(*conn)
- type BaseAuthExecutor
- type BaseBulkExecutor
- type BaseErrorHandler
- type BaseExecutor
- func (executor *BaseExecutor) SetBulkExecutor(be BulkExecutor)
- func (executor *BaseExecutor) SetErrorHandler(eh ErrorHandler)
- func (executor *BaseExecutor) SetExtendedQueryExecutor(eqe ExtendedQueryExecutor)
- func (executor *BaseExecutor) SetQueryExecutor(qe QueryExecutor)
- func (executor *BaseExecutor) SetQueryExtraExecutor(qe QueryExtraExecutor)
- func (executor *BaseExecutor) SetStartupHandler(sh StartupHandler)
- func (executor *BaseExecutor) SetSystemQueryExecutor(sq SystemQueryExecutor)
- func (executor *BaseExecutor) SetTransactionExecutor(te TCLExecutor)
- type BaseExtendedQueryExecutor
- func (executor *BaseExtendedQueryExecutor) Bind(conn Conn, msg *protocol.Bind) (protocol.Responses, error)
- func (executor *BaseExtendedQueryExecutor) Close(conn Conn, msg *protocol.Close) (protocol.Responses, error)
- func (executor *BaseExtendedQueryExecutor) Describe(conn Conn, msg *protocol.Describe) (protocol.Responses, error)
- func (executor *BaseExtendedQueryExecutor) Execute(conn Conn, msg *protocol.Execute) (protocol.Responses, error)
- func (executor *BaseExtendedQueryExecutor) Flush(conn Conn, msg *protocol.Flush) (protocol.Responses, error)
- func (executor *BaseExtendedQueryExecutor) Parse(conn Conn, msg *protocol.Parse) (protocol.Responses, error)
- func (executor *BaseExtendedQueryExecutor) Query(conn Conn, msg *protocol.Query) (protocol.Responses, error)
- func (executor *BaseExtendedQueryExecutor) Sync(conn Conn, msg *protocol.Sync) (protocol.Responses, error)
- type BaseQueryExecutor
- func (executor *BaseQueryExecutor) AlterDatabase(Conn, query.AlterDatabase) (protocol.Responses, error)
- func (executor *BaseQueryExecutor) AlterTable(Conn, query.AlterTable) (protocol.Responses, error)
- func (executor *BaseQueryExecutor) CreateDatabase(Conn, query.CreateDatabase) (protocol.Responses, error)
- func (executor *BaseQueryExecutor) CreateTable(Conn, query.CreateTable) (protocol.Responses, error)
- func (executor *BaseQueryExecutor) Delete(Conn, query.Delete) (protocol.Responses, error)
- func (executor *BaseQueryExecutor) DropDatabase(Conn, query.DropDatabase) (protocol.Responses, error)
- func (executor *BaseQueryExecutor) DropTable(Conn, query.DropTable) (protocol.Responses, error)
- func (executor *BaseQueryExecutor) Insert(Conn, query.Insert) (protocol.Responses, error)
- func (executor *BaseQueryExecutor) Select(Conn, query.Select) (protocol.Responses, error)
- func (executor *BaseQueryExecutor) Update(Conn, query.Update) (protocol.Responses, error)
- type BaseStartupExecutor
- type BaseSugarExecutor
- type BaseSystemQueryExecutor
- type BaseTransactionExecutor
- type BulkExecutor
- type Config
- type Conn
- type ConnID
- type ConnManager
- func (mgr *ConnManager) AddConn(c Conn)
- func (mgr *ConnManager) Close() error
- func (mgr *ConnManager) ConnByUUID(uuid uuid.UUID) (Conn, bool)
- func (mgr *ConnManager) Conns() []Conn
- func (mgr *ConnManager) RemoveConn(conn Conn) error
- func (mgr *ConnManager) Start() error
- func (mgr *ConnManager) Stop() error
- type CopyStream
- type DDOExecutor
- type DMOExecutor
- type DMOExtraExecutor
- type ErrorHandler
- type Executor
- type ExtendedQueryExecutor
- type MessageConn
- type PreparedConn
- type PreparedPortal
- type PreparedPortalMap
- type PreparedStatement
- type PreparedStatementMap
- type QueryExecutor
- type QueryExtraExecutor
- type Server
- type StartupAuthHandler
- type StartupHandler
- type SystemQueryExecutor
- type TCLExecutor
- type TLSConf
- func (config *TLSConf) IsTLSEnabled() bool
- func (config *TLSConf) SetClientAuthType(authType tls.ClientAuthType)
- func (config *TLSConf) SetRootCertFiles(files ...string) error
- func (config *TLSConf) SetRootCerts(certs ...[]byte)
- func (config *TLSConf) SetServerCert(cert []byte)
- func (config *TLSConf) SetServerCertFile(file string) error
- func (config *TLSConf) SetServerKey(key []byte)
- func (config *TLSConf) SetServerKeyFile(file string) error
- func (config *TLSConf) SetTLSConfig(tlsConfig *tls.Config)
- func (config *TLSConf) SetTLSEnabled(enabled bool)
- func (config *TLSConf) TLSConfig() (*tls.Config, error)
- type TLSConn
Constants ¶
const ( // PackageName is the package name. PackageName = "go-postgresql" // DefaultPort is the default port for PostgreSQL protocol server. DefaultPort = 5432 )
const (
Version = "v1.5.7"
)
Variables ¶
This section is empty.
Functions ¶
func IsMatchQuery ¶ added in v1.3.0
IsMatchQuery returns true if the query is matched with the prefix.
func IsPgbenchGetPartitionQuery ¶ added in v1.3.0
IsPgbenchGetPartitionQuery returns true if the query is pgbenchGetPartitionQuery.
func NewConnWith ¶
NewConnWith returns a connection with a raw connection.
func NewCopyCompleteResponsesFrom ¶ added in v1.3.0
func NewCopyCompleteResponsesFrom(q query.Copy, stream *CopyStream, conn Conn, schema *sql.Schema, queryExecutor QueryExecutor) (protocol.Responses, error)
NewCopyCompleteResponsesFrom returns a new copy complete response from the specified query.
func NewCopyInResponsesFrom ¶ added in v1.3.0
NewCopyInResponsesFrom returns a new copy in response from the specified query.
func NewCopyQueryFrom ¶ added in v1.3.0
func NewCopyQueryFrom(schema *query.Schema, copyColumns sql.ColumnList, copyData *protocol.CopyData) (query.Insert, error)
NewCopyQueryFrom returns a new copy query from the specified query.
func NewGetPartitionResponseForPgbench ¶ added in v1.3.0
NewGetPartitionResponseForPgbench returns a new response for pgbenchGetPartitionQuery.
func WithTLSConnectionState ¶ added in v1.5.3
func WithTLSConnectionState(s *tls.ConnectionState) func(*conn)
WithTLSConnectionState sets a TLS connection state.
func WithconnDatabase ¶ added in v1.5.6
func WithconnDatabase(name string) func(*conn)
WithconnDatabase sets a database name.
func WithconnStartupMessage ¶ added in v1.5.6
WithconnStartupMessage sets a startup protocol.
func WithconnTracer ¶ added in v1.5.6
WithconnTracer sets a tracer context.
Types ¶
type BaseAuthExecutor ¶ added in v1.4.0
type BaseAuthExecutor struct {
*auth.AuthManager
}
BaseAuthExecutor represents a base authenticator.
func NewBaseAuthExecutor ¶ added in v1.4.0
func NewBaseAuthExecutor() *BaseAuthExecutor
NewBaseAuthExecutor returns a base authenticator.
func (*BaseAuthExecutor) Authenticate ¶ added in v1.4.0
func (executor *BaseAuthExecutor) Authenticate(conn Conn) (protocol.Response, error)
Authenticate authenticates the connection with the startup protocol.
type BaseBulkExecutor ¶ added in v1.0.0
type BaseBulkExecutor struct { }
BaseBulkExecutor represents a base bulk message executor.
func NewBaseBulkExecutor ¶ added in v1.0.0
func NewBaseBulkExecutor() *BaseBulkExecutor
NewBaseBulkExecutor returns a base frontend message executor.
func (*BaseBulkExecutor) CopyData ¶ added in v1.3.0
func (executor *BaseBulkExecutor) CopyData(Conn, query.Copy, *CopyStream) (protocol.Responses, error)
Copy handles a COPY DATA protocol.
type BaseErrorHandler ¶ added in v1.1.0
type BaseErrorHandler struct { }
BaseErrorHandler represents a base error handler.
func NewBaseErrorHandler ¶ added in v1.1.0
func NewBaseErrorHandler() *BaseErrorHandler
NewBaseErrorHandler returns a new BaseErrorHandler.
func (*BaseErrorHandler) ParserError ¶ added in v1.1.0
func (executor *BaseErrorHandler) ParserError(conn Conn, q string, err error) (protocol.Responses, error)
ParserError handles a parser error.
type BaseExecutor ¶
type BaseExecutor struct { StartupHandler QueryExecutor QueryExtraExecutor TCLExecutor ExtendedQueryExecutor BulkExecutor ErrorHandler SystemQueryExecutor }
BaseExecutor represents a base frontend message executor.
func NewBaseExecutor ¶
func NewBaseExecutor() *BaseExecutor
NewBaseExecutor returns a base frontend message executor.
func (*BaseExecutor) SetBulkExecutor ¶ added in v1.0.0
func (executor *BaseExecutor) SetBulkExecutor(be BulkExecutor)
SetBulkExecutor sets a user bulk executor.
func (*BaseExecutor) SetErrorHandler ¶ added in v1.1.0
func (executor *BaseExecutor) SetErrorHandler(eh ErrorHandler)
SetErrorHandler sets a user error handler.
func (*BaseExecutor) SetExtendedQueryExecutor ¶ added in v1.3.0
func (executor *BaseExecutor) SetExtendedQueryExecutor(eqe ExtendedQueryExecutor)
SetExtendedQueryExecutor sets a user extended query executor.
func (*BaseExecutor) SetQueryExecutor ¶
func (executor *BaseExecutor) SetQueryExecutor(qe QueryExecutor)
SetQueryExecutor sets a user query executor.
func (*BaseExecutor) SetQueryExtraExecutor ¶ added in v1.2.0
func (executor *BaseExecutor) SetQueryExtraExecutor(qe QueryExtraExecutor)
SetQueryExtraExecutor sets a user query extra executor.
func (*BaseExecutor) SetStartupHandler ¶ added in v1.0.0
func (executor *BaseExecutor) SetStartupHandler(sh StartupHandler)
SetStartupHandler sets a user startup handler.
func (*BaseExecutor) SetSystemQueryExecutor ¶ added in v1.3.0
func (executor *BaseExecutor) SetSystemQueryExecutor(sq SystemQueryExecutor)
SetSystemQueryExecutor sets a system query executor.
func (*BaseExecutor) SetTransactionExecutor ¶ added in v1.2.0
func (executor *BaseExecutor) SetTransactionExecutor(te TCLExecutor)
SetTransactionExecutor sets a user transaction executor.
type BaseExtendedQueryExecutor ¶ added in v1.3.0
type BaseExtendedQueryExecutor struct {
*BaseExecutor
}
BaseExtendedQueryExecutor represents a base extended query message executor.
func NewBaseExtendedQueryExecutorWith ¶ added in v1.3.0
func NewBaseExtendedQueryExecutorWith(executor *BaseExecutor) *BaseExtendedQueryExecutor
NewBaseExtendedQueryExecutorWith returns a base extended query message executor.
func (*BaseExtendedQueryExecutor) Bind ¶ added in v1.3.0
func (executor *BaseExtendedQueryExecutor) Bind(conn Conn, msg *protocol.Bind) (protocol.Responses, error)
Bind handles a bind protocol.
func (*BaseExtendedQueryExecutor) Close ¶ added in v1.3.0
func (executor *BaseExtendedQueryExecutor) Close(conn Conn, msg *protocol.Close) (protocol.Responses, error)
Close handles a close protocol.
func (*BaseExtendedQueryExecutor) Describe ¶ added in v1.3.0
func (executor *BaseExtendedQueryExecutor) Describe(conn Conn, msg *protocol.Describe) (protocol.Responses, error)
Describe handles a describe protocol.
func (*BaseExtendedQueryExecutor) Execute ¶ added in v1.3.0
func (executor *BaseExtendedQueryExecutor) Execute(conn Conn, msg *protocol.Execute) (protocol.Responses, error)
Execute handles a execute protocol.
func (*BaseExtendedQueryExecutor) Flush ¶ added in v1.3.0
func (executor *BaseExtendedQueryExecutor) Flush(conn Conn, msg *protocol.Flush) (protocol.Responses, error)
Flush handles a flush protocol.
func (*BaseExtendedQueryExecutor) Parse ¶ added in v1.3.0
func (executor *BaseExtendedQueryExecutor) Parse(conn Conn, msg *protocol.Parse) (protocol.Responses, error)
Prepare handles a parse protocol.
type BaseQueryExecutor ¶
type BaseQueryExecutor struct { }
BaseQueryExecutor represents a base query message executor.
func NewBaseQueryExecutor ¶
func NewBaseQueryExecutor() *BaseQueryExecutor
NewBaseQueryExecutor returns a base frontend message executor.
func (*BaseQueryExecutor) AlterDatabase ¶ added in v1.2.0
func (executor *BaseQueryExecutor) AlterDatabase(Conn, query.AlterDatabase) (protocol.Responses, error)
AlterDatabase handles a ALTER DATABASE query.
func (*BaseQueryExecutor) AlterTable ¶ added in v1.2.0
func (executor *BaseQueryExecutor) AlterTable(Conn, query.AlterTable) (protocol.Responses, error)
AlterTable handles a ALTER TABLE query.
func (*BaseQueryExecutor) CreateDatabase ¶
func (executor *BaseQueryExecutor) CreateDatabase(Conn, query.CreateDatabase) (protocol.Responses, error)
CreateDatabase handles a CREATE DATABASE query.
func (*BaseQueryExecutor) CreateTable ¶
func (executor *BaseQueryExecutor) CreateTable(Conn, query.CreateTable) (protocol.Responses, error)
CreateTable handles a CREATE TABLE query.
func (*BaseQueryExecutor) DropDatabase ¶
func (executor *BaseQueryExecutor) DropDatabase(Conn, query.DropDatabase) (protocol.Responses, error)
DropDatabase handles a DROP DATABASE query.
type BaseStartupExecutor ¶ added in v1.4.0
type BaseStartupExecutor struct { *BaseAuthExecutor // contains filtered or unexported fields }
BaseStartupExecutor represents a base frontend message executor.
func NewBaseProtocolExecutor ¶
func NewBaseProtocolExecutor() *BaseStartupExecutor
NewBaseProtocolExecutor returns a base frontend message executor.
func (*BaseStartupExecutor) BackendKeyData ¶ added in v1.4.0
func (executor *BaseStartupExecutor) BackendKeyData(Conn) (protocol.Response, error)
BackendKeyData returns the backend key data.
func (*BaseStartupExecutor) ParameterStatuses ¶ added in v1.4.0
func (executor *BaseStartupExecutor) ParameterStatuses(Conn) (protocol.Responses, error)
ParameterStatuses returns the parameter statuses.
type BaseSugarExecutor ¶ added in v1.2.1
type BaseSugarExecutor struct {
*BaseExecutor
}
BaseSugarExecutor represents a base sugar query executor.
func NewBaseSugarExecutorWith ¶ added in v1.2.1
func NewBaseSugarExecutorWith(executor *BaseExecutor) *BaseSugarExecutor
NewBaseSugarExecutor returns a base sugar query executor.
type BaseSystemQueryExecutor ¶ added in v1.3.0
type BaseSystemQueryExecutor struct { }
BaseSystemQueryExecutor represents a base query message executor.
func NewBaseSystemQueryExecutor ¶ added in v1.3.0
func NewBaseSystemQueryExecutor() *BaseSystemQueryExecutor
NewBaseSystemQueryExecutor returns a base frontend message executor.
func (*BaseSystemQueryExecutor) SystemSelect ¶ added in v1.3.0
func (executor *BaseSystemQueryExecutor) SystemSelect(Conn, query.Select) (protocol.Responses, error)
SystemSelect handles a SELECT query for system tables.
type BaseTransactionExecutor ¶ added in v1.2.0
type BaseTransactionExecutor struct { }
BaseTransactionExecutor represents a base bulk message executor.
func NewBaseTransactionExecutor ¶ added in v1.2.0
func NewBaseTransactionExecutor() *BaseTransactionExecutor
NewBaseTransactionExecutor returns a base frontend message executor.
type BulkExecutor ¶ added in v0.9.1
type BulkExecutor interface { // Copy handles a COPY query. Copy(Conn, query.Copy) (protocol.Responses, error) // CopyData handles a COPY data protocol. CopyData(Conn, query.Copy, *CopyStream) (protocol.Responses, error) }
BulkExecutor defines a executor interface for bulk operations.
type Config ¶
type Config struct { *TLSConf // contains filtered or unexported fields }
Config stores server configuration parammeters.
func NewDefaultConfig ¶
func NewDefaultConfig() *Config
NewDefaultConfig returns a default configuration instance.
func (*Config) SetAddress ¶ added in v1.0.0
SetAddress sets a listen address to the configuration.
type Conn ¶
type Conn interface { sql.Conn PreparedConn MessageConn TLSConn }
Conn represents a connection.
type ConnManager ¶ added in v1.5.4
type ConnManager struct {
// contains filtered or unexported fields
}
ConnManager represents a connection map.
func NewConnManager ¶ added in v1.5.4
func NewConnManager() *ConnManager
NewConnManager returns a connection map.
func (*ConnManager) AddConn ¶ added in v1.5.4
func (mgr *ConnManager) AddConn(c Conn)
AddConn adds the specified connection.
func (*ConnManager) Close ¶ added in v1.5.4
func (mgr *ConnManager) Close() error
Close closes the connection manager.
func (*ConnManager) ConnByUUID ¶ added in v1.5.4
func (mgr *ConnManager) ConnByUUID(uuid uuid.UUID) (Conn, bool)
ConnByUUID returns the connection with the specified UUID.
func (*ConnManager) Conns ¶ added in v1.5.4
func (mgr *ConnManager) Conns() []Conn
Conns returns the included connections.
func (*ConnManager) RemoveConn ¶ added in v1.5.4
func (mgr *ConnManager) RemoveConn(conn Conn) error
RemoveConn deletes the specified connection from the map.
func (*ConnManager) Start ¶ added in v1.5.4
func (mgr *ConnManager) Start() error
Start starts the connection manager.
func (*ConnManager) Stop ¶ added in v1.5.4
func (mgr *ConnManager) Stop() error
Stop closes all connections.
type CopyStream ¶ added in v0.9.1
type CopyStream struct {
*protocol.MessageReader
}
CopyStream represents a copy stream.
func NewCopyStreamWithReader ¶ added in v0.9.1
func NewCopyStreamWithReader(reader *protocol.MessageReader) *CopyStream
NewCopyStreamWithReader returns a new copy stream with the specified reader.
type DDOExecutor ¶
type DDOExecutor interface { // CreateDatabase handles a CREATE DATABASE query. CreateDatabase(Conn, query.CreateDatabase) (protocol.Responses, error) // CreateTable handles a CREATE TABLE query. CreateTable(Conn, query.CreateTable) (protocol.Responses, error) // AlterDatabase handles a ALTER DATABASE query. AlterDatabase(Conn, query.AlterDatabase) (protocol.Responses, error) // AlterTable handles a ALTER TABLE query. AlterTable(Conn, query.AlterTable) (protocol.Responses, error) // DropDatabase handles a DROP DATABASE query. DropDatabase(Conn, query.DropDatabase) (protocol.Responses, error) // DropIndex handles a DROP INDEX query. DropTable(Conn, query.DropTable) (protocol.Responses, error) }
DDOExecutor defines a executor interface for DDO (Data Definition Operations).
type DMOExecutor ¶
type DMOExecutor interface { // Insert handles a INSERT query. Insert(Conn, query.Insert) (protocol.Responses, error) // Select handles a SELECT query. Select(Conn, query.Select) (protocol.Responses, error) // Update handles a UPDATE query. Update(Conn, query.Update) (protocol.Responses, error) // Delete handles a DELETE query. Delete(Conn, query.Delete) (protocol.Responses, error) }
DMOExecutor defines a executor interface for DMO (Data Manipulation Operations).
type DMOExtraExecutor ¶ added in v1.2.0
type DMOExtraExecutor interface { // Vacuum handles a VACUUM query. Vacuum(Conn, query.Vacuum) (protocol.Responses, error) // Truncate handles a TRUNCATE query. Truncate(Conn, query.Truncate) (protocol.Responses, error) }
DMOExtraExecutor defines a executor interface for DMO (Data Manipulation Operations).
type ErrorHandler ¶ added in v1.1.0
ErrorHandler represents a user error handler.
type Executor ¶
type Executor interface { StartupHandler QueryExecutor QueryExtraExecutor TCLExecutor ExtendedQueryExecutor SystemQueryExecutor BulkExecutor ErrorHandler // SetStartupHandler sets a user startup handler. SetStartupHandler(StartupHandler) // SetQueryExecutor sets a user query executor. SetQueryExecutor(QueryExecutor) // SetQueryExecutor sets a user query executor. SetQueryExtraExecutor(QueryExtraExecutor) // SetTransactionExecutor sets a user transaction executor. SetTransactionExecutor(TCLExecutor) // SetSystemQueryExecutor sets a system query executor. SetSystemQueryExecutor(SystemQueryExecutor) // SetBulkExecutor sets a user bulk executor. SetBulkExecutor(BulkExecutor) // SetErrorHandler sets a user error handler. SetErrorHandler(ErrorHandler) }
Executor represents a frontend message executor.
type ExtendedQueryExecutor ¶ added in v1.3.0
type ExtendedQueryExecutor interface { // Query handles a query protocol. Query(Conn, *protocol.Query) (protocol.Responses, error) // Prepare handles a parse protocol. Parse(Conn, *protocol.Parse) (protocol.Responses, error) // Bind handles a bind protocol. Bind(Conn, *protocol.Bind) (protocol.Responses, error) // Describe handles a describe protocol. Describe(Conn, *protocol.Describe) (protocol.Responses, error) // Execute handles a execute protocol. Execute(Conn, *protocol.Execute) (protocol.Responses, error) // Close handles a close protocol. Close(Conn, *protocol.Close) (protocol.Responses, error) // Sync handles a sync protocol. Sync(Conn, *protocol.Sync) (protocol.Responses, error) // Flush handles a flush protocol. Flush(Conn, *protocol.Flush) (protocol.Responses, error) }
ExtendedQueryExecutor defines a executor interface for extended query operations.
type MessageConn ¶ added in v1.5.6
type MessageConn interface { // SetStartupMessage sets a startup protocol. SetStartupMessage(msg *protocol.Startup) // StartupMessage return the startup protocol. StartupMessage() (*protocol.Startup, bool) // MessageReader returns a message reader. MessageReader() *protocol.MessageReader // ResponseMessage sends a response protocol. ResponseMessage(resMsg protocol.Response) error // ResponseMessages sends response messages. ResponseMessages(resMsgs protocol.Responses) error // ResponseError sends an error response. ResponseError(err error) error // SkipMessage skips a protocol. SkipMessage() error // ReadyForMessage sends a ready for protocol. ReadyForMessage(status protocol.TransactionStatus) error }
type PreparedConn ¶ added in v1.5.6
type PreparedConn interface { // PreparedStatement returns a prepared statement. PreparedStatement(name string) (*PreparedStatement, error) // SetPreparedStatement sets a prepared statement. SetPreparedStatement(msg *protocol.Parse) error // RemovePreparedStatement removes a prepared statement. RemovePreparedStatement(name string) error // PreparedPortal returns a prepared query statement. PreparedPortal(name string) (*PreparedPortal, error) // SetPreparedPortal sets a prepared query statement. SetPreparedPortal(name string, query *PreparedPortal) error // RemovePreparedPortal removes a prepared query statement. RemovePreparedPortal(name string) error }
type PreparedPortal ¶ added in v1.3.0
PreparedPortal represents a prepared query statement.
type PreparedPortalMap ¶ added in v1.3.0
type PreparedPortalMap map[string]PreparedPortal
PreparedPortalMap represents a prepared query statement map.
func NewPreparedPortalMap ¶ added in v1.3.0
func NewPreparedPortalMap() PreparedPortalMap
NewPreparedPortalMap returns a new prepared query statement map.
func (PreparedPortalMap) PreparedPortal ¶ added in v1.3.0
func (portalMap PreparedPortalMap) PreparedPortal(name string) (*PreparedPortal, error)
PreparedPortal returns a prepared query statement.
func (PreparedPortalMap) RemovePreparedPortal ¶ added in v1.3.0
func (portalMap PreparedPortalMap) RemovePreparedPortal(name string) error
RemovePreparedPortal removes a prepared query statement.
func (PreparedPortalMap) SetPreparedPortal ¶ added in v1.3.0
func (portalMap PreparedPortalMap) SetPreparedPortal(name string, query *PreparedPortal) error
SetPreparedPortal sets a prepared query statement.
type PreparedStatement ¶ added in v1.3.0
PreparedStatement represents a prepared statement.
func (*PreparedStatement) Name ¶ added in v1.3.0
func (stmt *PreparedStatement) Name() string
Name returns a prepared statement name.
type PreparedStatementMap ¶ added in v1.3.0
type PreparedStatementMap map[string]*PreparedStatement
PreparedStatementMap represents a prepared statement map.
func NewPreparedStatementMap ¶ added in v1.3.0
func NewPreparedStatementMap() PreparedStatementMap
NewPreparedStatementMap returns a new prepared statement map.
func (PreparedStatementMap) PreparedStatement ¶ added in v1.3.0
func (stmtMap PreparedStatementMap) PreparedStatement(name string) (*PreparedStatement, error)
PreparedStatement returns a prepared statement.
func (PreparedStatementMap) RemovePreparedStatement ¶ added in v1.3.0
func (stmtMap PreparedStatementMap) RemovePreparedStatement(name string) error
RemovePreparedStatement removes a prepared statement.
func (PreparedStatementMap) SetPreparedStatement ¶ added in v1.3.0
func (stmtMap PreparedStatementMap) SetPreparedStatement(msg *protocol.Parse) error
SetPreparedStatement sets a prepared statement.
type QueryExecutor ¶
type QueryExecutor interface { DDOExecutor DMOExecutor }
QueryExecutor represents a user query message executor.
type QueryExtraExecutor ¶ added in v1.2.0
type QueryExtraExecutor interface { DMOExtraExecutor }
QueryExtraExecutor represents a user query message executor.
type Server ¶
type Server struct { *Config *ConnManager tracer.Tracer Executor // contains filtered or unexported fields }
Server represents a PostgreSQL protocol server.
type StartupAuthHandler ¶ added in v1.4.0
type StartupAuthHandler interface { // Authenticate handles the Start-up message and returns an Authentication or ErrorResponse protocol. Authenticate(Conn) (protocol.Response, error) // AddAuthenticator adds a new authenticator. AddAuthenticator(auth.Authenticator) // ClearAuthenticators clears all authenticators. ClearAuthenticators() }
StartupAuthHandler represents a start-up authenticatation handler.
type StartupHandler ¶ added in v1.0.0
type StartupHandler interface { StartupAuthHandler // ParameterStatuses returns the parameter statuses. ParameterStatuses(Conn) (protocol.Responses, error) // BackendKeyData returns the backend key data. BackendKeyData(Conn) (protocol.Response, error) }
StartupAuthHandler represents a start-up message handler.
type SystemQueryExecutor ¶ added in v1.3.0
type SystemQueryExecutor interface { // SystemSelect handles a SELECT query for system tables. SystemSelect(Conn, query.Select) (protocol.Responses, error) }
SystemQueryExecutor represents a system query message executor.
type TCLExecutor ¶ added in v1.3.4
type TCLExecutor interface { // Begin handles a BEGIN query. Begin(Conn, query.Begin) (protocol.Responses, error) // Commit handles a COMMIT query. Commit(Conn, query.Commit) (protocol.Responses, error) // Rollback handles a ROLLBACK query. Rollback(Conn, query.Rollback) (protocol.Responses, error) }
TCLExecutor defines a executor interface for TCL (Transaction Control Language).
type TLSConf ¶ added in v1.5.0
type TLSConf struct { ClientAuthType tls.ClientAuthType ServerCert []byte ServerKey []byte RootCerts [][]byte // contains filtered or unexported fields }
TLSConf represents a TLS configuration.
func NewTLSConf ¶ added in v1.5.0
func NewTLSConf() *TLSConf
NewTLSConf returns a new TLS configuration.
func (*TLSConf) IsTLSEnabled ¶ added in v1.5.1
IsEnabled returns true if the TLS is enabled.
func (*TLSConf) SetClientAuthType ¶ added in v1.5.0
func (config *TLSConf) SetClientAuthType(authType tls.ClientAuthType)
SetClientAuthType sets a client authentication type.
func (*TLSConf) SetRootCertFiles ¶ added in v1.5.0
SetRootCertFile sets a SSL root certificates.
func (*TLSConf) SetRootCerts ¶ added in v1.5.2
SetRootCerts sets a SSL root certificates.
func (*TLSConf) SetServerCert ¶ added in v1.5.2
SetServerCert sets a SSL server certificate.
func (*TLSConf) SetServerCertFile ¶ added in v1.5.0
SetServerCertFile sets a SSL server certificate file.
func (*TLSConf) SetServerKey ¶ added in v1.5.2
SetServerKey sets a SSL server key.
func (*TLSConf) SetServerKeyFile ¶ added in v1.5.0
SetServerKeyFile sets a SSL server key file.
func (*TLSConf) SetTLSConfig ¶ added in v1.5.2
SetTLSConfig sets a TLS configuration.
func (*TLSConf) SetTLSEnabled ¶ added in v1.5.1
SetTLSEnabled sets a TLS enabled flag.
Source Files
¶
- config.go
- config_tls.go
- conn.go
- conn_impl.go
- conn_manager.go
- const.go
- copy.go
- copy_stream.go
- executor.go
- executor_auth.go
- executor_base.go
- executor_bulk.go
- executor_error.go
- executor_extend.go
- executor_query.go
- executor_startup.go
- executor_sugar.go
- executor_system.go
- executor_transaction.go
- pgbench.go
- query.go
- server.go
- version.go