Versions in this module Expand all Collapse all v0 v0.1.0 Aug 31, 2026 Changes in this version + var ErrCancelled = errors.New("execution: cancelled") + var ErrDataPorchAccessDenied = errors.New("execution: dataporch access denied") + var ErrDatabaseAuthenticationFailed = errors.New("execution: database authentication failed") + var ErrDatabaseConflict = errors.New("execution: database conflict") + var ErrDatabaseError = errors.New("execution: database error") + var ErrDatabasePermissionDenied = errors.New("execution: database permission denied") + var ErrDatabaseResourceExhausted = errors.New("execution: database resource exhausted") + var ErrDatabaseUnavailable = errors.New("execution: database unavailable") + var ErrInternal = errors.New("execution: internal failure") + var ErrInvalidCursor = errors.New("execution: invalid cursor") + var ErrInvalidLimit = errors.New("execution: invalid resource limit") + var ErrInvalidQuery = errors.New("execution: invalid query") + var ErrInvalidRequest = errors.New("execution: invalid request") + var ErrQueryCancelled = errors.New("execution: query cancelled") + var ErrQueryTimeout = errors.New("execution: query timeout") + var ErrReadOnlyViolation = errors.New("execution: read only violation") + var ErrRelationNotFound = errors.New("execution: relation not found") + var ErrResultTooLarge = errors.New("execution: result too large") + var ErrSchemaNotFound = errors.New("execution: schema not found") + var ErrSourceKindMismatch = errors.New("execution: source kind mismatch") + var ErrSourceNotFound = errors.New("execution: source not found") + var ErrUnsupportedRelationKind = errors.New("execution: unsupported relation kind") + var ErrUnsupportedSourceCapability = errors.New("execution: unsupported source capability") + type Authorizer interface + Authorize func(context.Context, access.Request) error + type Capability string + const CapabilityRelationalDatabase + type Column struct + DefaultExpression *string + Description *string + FormattedType string + Generated *Generated + Identity *Identity + Name string + Nullable bool + OrdinalPosition int + Type DataType + type ColumnDiscoveryPage struct + Columns []Column + Constraints []Constraint + HasMore bool + RelationKind RelationKind + type ColumnDiscoveryRequest struct + AfterOrdinal int + IncludeDescriptions bool + Limit int + Schema string + Search string + SourceID connection.ID + Table string + type Constraint struct + CheckExpression *string + Columns []string + Deferrable bool + DeleteAction string + InitiallyDeferred bool + Kind string + MatchType string + Name string + NullsNotDistinct *bool + Referenced *ConstraintReference + UpdateAction string + Validated bool + type ConstraintReference struct + Columns []string + Schema string + Table string + type DataSource struct + Capabilities []Capability + ID connection.ID + Kind connection.Kind + type DataType struct + Affinity TypeAffinity + Category TypeCategory + DomainBaseType *TypeReference + ElementType *TypeReference + IsArray bool + Length *int32 + Name string + Precision *int32 + Scale *int32 + Schema string + TemporalPrecision *int32 + type DatabaseError struct + Code string + ColumnName string + ConstraintName string + DataTypeName string + Detail string + ExtendedCode string + File string + Hint string + InternalPosition int32 + InternalQuery string + Kind connection.Kind + Line int32 + Message string + Position int32 + Routine string + SchemaName string + Severity string + SeverityUnlocalized string + TableName string + Truncated bool + Where string + func (e *DatabaseError) Error() string + type DatabaseFailure struct + func NewDatabaseFailure(category ErrorCategory, retryable bool, databaseError *DatabaseError) *DatabaseFailure + func (f *DatabaseFailure) Error() string + func (f *DatabaseFailure) Unwrap() error + type Dependencies struct + Authorizer Authorizer + MaxLimit int + RelationalDiscoverers []RelationalDiscoverer + RelationalQueryExecutors []RelationalQueryExecutor + Sources SourceRegistry + type ErrorCategory string + const ErrorCategoryCancelled + const ErrorCategoryDataPorchAccessDenied + const ErrorCategoryDatabaseAuthenticationFailed + const ErrorCategoryDatabaseConflict + const ErrorCategoryDatabaseError + const ErrorCategoryDatabasePermissionDenied + const ErrorCategoryDatabaseResourceExhausted + const ErrorCategoryDatabaseUnavailable + const ErrorCategoryInternal + const ErrorCategoryInvalidCursor + const ErrorCategoryInvalidQuery + const ErrorCategoryInvalidRequest + const ErrorCategoryQueryCancelled + const ErrorCategoryQueryTimeout + const ErrorCategoryReadOnlyViolation + const ErrorCategoryRelationNotFound + const ErrorCategoryResultTooLarge + const ErrorCategorySchemaNotFound + const ErrorCategorySourceKindMismatch + const ErrorCategorySourceNotFound + const ErrorCategoryUnsupportedRelationKind + const ErrorCategoryUnsupportedSourceCapability + type Failure struct + Category ErrorCategory + DatabaseError *DatabaseError + Message string + Retryable bool + func Classify(err error) Failure + func ClassifyRelationalQuery(ctx context.Context, err error) Failure + type Generated struct + Expression string + Kind string + type Identity struct + Generation string + type ListDataSourcesRequest struct + Cursor string + Limit *int + Search string + type ListDataSourcesResult struct + NextCursor string + Sources []DataSource + type ListRelationalColumnsRequest struct + Cursor string + IncludeDescriptions bool + Limit *int + Schema string + Search string + SourceID connection.ID + Table string + type ListRelationalColumnsResult struct + Columns []Column + Constraints []Constraint + NextCursor string + RelationKind RelationKind + Schema string + SourceID connection.ID + Table string + type ListRelationalSchemasRequest struct + Cursor string + IncludeDescriptions bool + Limit *int + Search string + SourceID connection.ID + type ListRelationalSchemasResult struct + NextCursor string + Schemas []Schema + SourceID connection.ID + type ListRelationalTablesRequest struct + Cursor string + IncludeDescriptions bool + Limit *int + Schema string + Search string + SourceID connection.ID + type ListRelationalTablesResult struct + NextCursor string + Schema string + SourceID connection.ID + Tables []Table + type RelationKind string + const RelationKindForeignTable + const RelationKindMaterializedView + const RelationKindPartitionedTable + const RelationKindTable + const RelationKindView + const RelationKindVirtualTable + type RelationalDiscoverer interface + Kind func() connection.Kind + ListColumns func(context.Context, ColumnDiscoveryRequest) (ColumnDiscoveryPage, error) + ListSchemas func(context.Context, SchemaDiscoveryRequest) (SchemaDiscoveryPage, error) + ListTables func(context.Context, TableDiscoveryRequest) (TableDiscoveryPage, error) + type RelationalQueryColumn struct + DatabaseType string + Name string + type RelationalQueryExecutionRequest struct + Query string + Source connection.Definition + type RelationalQueryExecutor interface + Kind func() connection.Kind + Query func(context.Context, RelationalQueryExecutionRequest) (RelationalQueryResult, error) + type RelationalQueryRequest struct + Kind connection.Kind + Query string + SourceID connection.ID + type RelationalQueryResult struct + Columns []RelationalQueryColumn + Kind connection.Kind + RowCount int + Rows [][]*string + SourceID connection.ID + Truncated bool + type Schema struct + Description *string + Name string + type SchemaDiscoveryPage struct + HasMore bool + Schemas []Schema + type SchemaDiscoveryRequest struct + AfterName string + IncludeDescriptions bool + Limit int + Search string + SourceID connection.ID + type Service struct + func New(dependencies Dependencies) (*Service, error) + func (s *Service) ListDataSources(ctx context.Context, request ListDataSourcesRequest) (ListDataSourcesResult, error) + func (s *Service) ListRelationalColumns(ctx context.Context, request ListRelationalColumnsRequest) (ListRelationalColumnsResult, error) + func (s *Service) ListRelationalSchemas(ctx context.Context, request ListRelationalSchemasRequest) (ListRelationalSchemasResult, error) + func (s *Service) ListRelationalTables(ctx context.Context, request ListRelationalTablesRequest) (ListRelationalTablesResult, error) + func (s *Service) QueryRelationalDatabase(ctx context.Context, request RelationalQueryRequest) (RelationalQueryResult, error) + type SourceRegistry interface + List func() []connection.Definition + Lookup func(connection.ID) (connection.Definition, error) + type Table struct + Description *string + Kind RelationKind + Name string + type TableDiscoveryPage struct + HasMore bool + Tables []Table + type TableDiscoveryRequest struct + AfterName string + IncludeDescriptions bool + Limit int + Schema string + Search string + SourceID connection.ID + type TypeAffinity string + const TypeAffinityBlob + const TypeAffinityInteger + const TypeAffinityNumeric + const TypeAffinityReal + const TypeAffinityText + type TypeCategory string + const TypeCategoryArray + const TypeCategoryBase + const TypeCategoryComposite + const TypeCategoryDomain + const TypeCategoryDynamic + const TypeCategoryEnum + const TypeCategoryMultirange + const TypeCategoryOther + const TypeCategoryPseudo + const TypeCategoryRange + type TypeReference struct + Name string + Schema string