Documentation ¶
Index ¶
- Constants
- type Conn
- type DBAL
- func (d *DBAL) AddComputePlan(plan *asset.ComputePlan) error
- func (d *DBAL) AddComputeTaskOutputAsset(output *asset.ComputeTaskOutputAsset) error
- func (d *DBAL) AddComputeTasks(tasks ...*asset.ComputeTask) error
- func (d *DBAL) AddDataManager(datamanager *asset.DataManager) error
- func (d *DBAL) AddDataSamples(datasamples ...*asset.DataSample) error
- func (d *DBAL) AddEvents(events ...*asset.Event) error
- func (d *DBAL) AddFailureReport(failureReport *asset.FailureReport) error
- func (d *DBAL) AddFunction(function *asset.Function) error
- func (d *DBAL) AddModel(model *asset.Model, identifier string) error
- func (d *DBAL) AddOrganization(organization *asset.Organization) error
- func (d *DBAL) AddPerformance(perf *asset.Performance, identifier string) error
- func (d *DBAL) AddressableExists(storageAddress string) (bool, error)
- func (d *DBAL) ArePlanTasksRunning(key string) (bool, error)
- func (d *DBAL) CancelComputePlan(plan *asset.ComputePlan, cancelationDate time.Time) error
- func (d *DBAL) ComputePlanExists(key string) (bool, error)
- func (d *DBAL) CountComputeTaskRegisteredOutputs(key string) (persistence.ComputeTaskOutputCounter, error)
- func (d *DBAL) DataManagerExists(key string) (bool, error)
- func (d *DBAL) DataSampleExists(key string) (bool, error)
- func (d *DBAL) FailComputePlan(plan *asset.ComputePlan, failureDate time.Time) error
- func (d *DBAL) FunctionExists(key string) (bool, error)
- func (d *DBAL) GetAllOrganizations() ([]*asset.Organization, error)
- func (d *DBAL) GetComputePlan(key string) (*asset.ComputePlan, error)
- func (d *DBAL) GetComputePlanTasks(key string) ([]*asset.ComputeTask, error)
- func (d *DBAL) GetComputePlanTasksKeys(key string) ([]string, error)
- func (d *DBAL) GetComputeTask(key string) (*asset.ComputeTask, error)
- func (d *DBAL) GetComputeTaskChildren(key string) ([]*asset.ComputeTask, error)
- func (d *DBAL) GetComputeTaskOutputAssets(taskKey, identifier string) ([]*asset.ComputeTaskOutputAsset, error)
- func (d *DBAL) GetComputeTaskOutputModels(key string) ([]*asset.Model, error)
- func (d *DBAL) GetComputeTaskParents(key string) ([]*asset.ComputeTask, error)
- func (d *DBAL) GetComputeTasks(keys []string) ([]*asset.ComputeTask, error)
- func (d *DBAL) GetDataManager(key string) (*asset.DataManager, error)
- func (d *DBAL) GetDataSample(key string) (*asset.DataSample, error)
- func (d *DBAL) GetDataSampleKeysByManager(dataManagerKey string) ([]string, error)
- func (d *DBAL) GetExistingComputeTaskKeys(keys []string) ([]string, error)
- func (d *DBAL) GetFailureReport(assetKey string) (*asset.FailureReport, error)
- func (d *DBAL) GetFunction(key string) (*asset.Function, error)
- func (d *DBAL) GetFunctionFromTasksWithStatus(key string, statuses []asset.ComputeTaskStatus) ([]*asset.ComputeTask, error)
- func (d *DBAL) GetModel(key string) (*asset.Model, error)
- func (d *DBAL) GetOrganization(id string) (*asset.Organization, error)
- func (d *DBAL) ModelExists(key string) (bool, error)
- func (d *DBAL) NewEventID() string
- func (d *DBAL) OrganizationExists(id string) (bool, error)
- func (d *DBAL) PerformanceExists(perf *asset.Performance) (bool, error)
- func (d *DBAL) QueryComputePlans(p *common.Pagination, filter *asset.PlanQueryFilter) ([]*asset.ComputePlan, common.PaginationToken, error)
- func (d *DBAL) QueryComputeTasks(pagination *common.Pagination, filter *asset.TaskQueryFilter) ([]*asset.ComputeTask, common.PaginationToken, error)
- func (d *DBAL) QueryDataManagers(p *common.Pagination) ([]*asset.DataManager, common.PaginationToken, error)
- func (d *DBAL) QueryDataSamples(p *common.Pagination, filter *asset.DataSampleQueryFilter) ([]*asset.DataSample, common.PaginationToken, error)
- func (d *DBAL) QueryEvents(p *common.Pagination, filter *asset.EventQueryFilter, ...) ([]*asset.Event, common.PaginationToken, error)
- func (d *DBAL) QueryFunctions(p *common.Pagination, filter *asset.FunctionQueryFilter) ([]*asset.Function, common.PaginationToken, error)
- func (d *DBAL) QueryPerformances(p *common.Pagination, filter *asset.PerformanceQueryFilter) ([]*asset.Performance, common.PaginationToken, error)
- func (d *DBAL) SetComputePlanName(plan *asset.ComputePlan, name string) error
- func (d *DBAL) SubscribeToEvents(startEventID string, stream asset.EventService_SubscribeToEventsServer) error
- func (d *DBAL) UpdateComputeTaskStatus(taskKey string, taskStatus asset.ComputeTaskStatus) error
- func (d *DBAL) UpdateDataManager(datamanager *asset.DataManager) error
- func (d *DBAL) UpdateDataSample(dataSample *asset.DataSample) error
- func (d *DBAL) UpdateFunction(function *asset.Function) error
- func (d *DBAL) UpdateModel(model *asset.Model) error
- type Database
- type PgPool
- type SQLLogger
Constants ¶
const PgSortAsc = "ASC"
const PgSortDesc = "DESC"
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Conn ¶
type Conn interface { Exec(context.Context, string, ...interface{}) (pgconn.CommandTag, error) Query(context.Context, string, ...interface{}) (pgx.Rows, error) QueryRow(context.Context, string, ...interface{}) pgx.Row WaitForNotification(ctx context.Context) (*pgconn.Notification, error) }
Conn is the database connection used by the DBAL.
type DBAL ¶
type DBAL struct {
// contains filtered or unexported fields
}
DBAL is the Database Abstraction Layer around asset storage
func (*DBAL) AddComputePlan ¶
func (d *DBAL) AddComputePlan(plan *asset.ComputePlan) error
AddComputePlan stores a new ComputePlan in DB
func (*DBAL) AddComputeTaskOutputAsset ¶
func (d *DBAL) AddComputeTaskOutputAsset(output *asset.ComputeTaskOutputAsset) error
func (*DBAL) AddComputeTasks ¶
func (d *DBAL) AddComputeTasks(tasks ...*asset.ComputeTask) error
AddComputeTasks add one or multiple tasks to storage.
func (*DBAL) AddDataManager ¶
func (d *DBAL) AddDataManager(datamanager *asset.DataManager) error
AddDataManager implements persistence.DataManagerDBAL
func (*DBAL) AddDataSamples ¶
func (d *DBAL) AddDataSamples(datasamples ...*asset.DataSample) error
AddDataSamples add one or multiple data samples to storage.
func (*DBAL) AddFailureReport ¶
func (d *DBAL) AddFailureReport(failureReport *asset.FailureReport) error
func (*DBAL) AddFunction ¶
AddFunction implements persistence.FunctionDBAL
func (*DBAL) AddOrganization ¶
func (d *DBAL) AddOrganization(organization *asset.Organization) error
AddOrganization implements persistence.OrganizationDBAL
func (*DBAL) AddPerformance ¶
func (d *DBAL) AddPerformance(perf *asset.Performance, identifier string) error
func (*DBAL) AddressableExists ¶
func (*DBAL) CancelComputePlan ¶
func (*DBAL) ComputePlanExists ¶
ComputePlanExists returns true if a ComputePlan with the given key already exists
func (*DBAL) CountComputeTaskRegisteredOutputs ¶
func (d *DBAL) CountComputeTaskRegisteredOutputs(key string) (persistence.ComputeTaskOutputCounter, error)
func (*DBAL) DataManagerExists ¶
DataManagerExists implements persistence.DataManagerDBAL
func (*DBAL) DataSampleExists ¶
DataSampleExists implements persistence.DataSampleDBAL
func (*DBAL) FailComputePlan ¶
func (*DBAL) FunctionExists ¶
FunctionExists implements persistence.FunctionDBAL
func (*DBAL) GetAllOrganizations ¶
func (d *DBAL) GetAllOrganizations() ([]*asset.Organization, error)
GetAllOrganizations implements persistence.OrganizationDBAL
func (*DBAL) GetComputePlan ¶
func (d *DBAL) GetComputePlan(key string) (*asset.ComputePlan, error)
GetComputePlan fetches a given compute plan
func (*DBAL) GetComputePlanTasks ¶
func (d *DBAL) GetComputePlanTasks(key string) ([]*asset.ComputeTask, error)
GetComputePlanTasks returns the tasks of the compute plan identified by the given key
func (*DBAL) GetComputePlanTasksKeys ¶
GetComputePlanTasksKeys returns the list of task keys from the provided compute plan
func (*DBAL) GetComputeTask ¶
func (d *DBAL) GetComputeTask(key string) (*asset.ComputeTask, error)
GetComputeTask returns a single task by its key
func (*DBAL) GetComputeTaskChildren ¶
func (d *DBAL) GetComputeTaskChildren(key string) ([]*asset.ComputeTask, error)
GetComputeTaskChildren returns the children of the task identified by the given key. Warning: this function doesn't populate the task input/output fields, not the function input/output fields.
func (*DBAL) GetComputeTaskOutputAssets ¶
func (d *DBAL) GetComputeTaskOutputAssets(taskKey, identifier string) ([]*asset.ComputeTaskOutputAsset, error)
func (*DBAL) GetComputeTaskOutputModels ¶
func (*DBAL) GetComputeTaskParents ¶
func (d *DBAL) GetComputeTaskParents(key string) ([]*asset.ComputeTask, error)
func (*DBAL) GetComputeTasks ¶
func (d *DBAL) GetComputeTasks(keys []string) ([]*asset.ComputeTask, error)
GetComputeTasks returns the list of unique compute tasks identified by the provided keys. It should not be used where pagination is expected!
func (*DBAL) GetDataManager ¶
func (d *DBAL) GetDataManager(key string) (*asset.DataManager, error)
GetDataManager implements persistence.DataManagerDBAL
func (*DBAL) GetDataSample ¶
func (d *DBAL) GetDataSample(key string) (*asset.DataSample, error)
GetDataSample implements persistence.DataSample
func (*DBAL) GetDataSampleKeysByManager ¶
GetDataSampleKeysByManager returns sample keys linked to a given manager.
func (*DBAL) GetExistingComputeTaskKeys ¶
GetExistingComputeTaskKeys returns the keys of tasks already in storage among those given as input.
func (*DBAL) GetFailureReport ¶
func (d *DBAL) GetFailureReport(assetKey string) (*asset.FailureReport, error)
func (*DBAL) GetFunction ¶
GetFunction implements persistence.FunctionDBAL
func (*DBAL) GetFunctionFromTasksWithStatus ¶
func (d *DBAL) GetFunctionFromTasksWithStatus(key string, statuses []asset.ComputeTaskStatus) ([]*asset.ComputeTask, error)
GetFunctionFromTasksWithStatus returns the list of tasks linked with a function
func (*DBAL) GetOrganization ¶
func (d *DBAL) GetOrganization(id string) (*asset.Organization, error)
GetOrganization implements persistence.OrganizationDBAL
func (*DBAL) NewEventID ¶
func (*DBAL) OrganizationExists ¶
OrganizationExists implements persistence.OrganizationDBAL
func (*DBAL) PerformanceExists ¶
func (d *DBAL) PerformanceExists(perf *asset.Performance) (bool, error)
PerformanceExists implements persistence.PerformanceDBAL
func (*DBAL) QueryComputePlans ¶
func (d *DBAL) QueryComputePlans(p *common.Pagination, filter *asset.PlanQueryFilter) ([]*asset.ComputePlan, common.PaginationToken, error)
func (*DBAL) QueryComputeTasks ¶
func (d *DBAL) QueryComputeTasks(pagination *common.Pagination, filter *asset.TaskQueryFilter) ([]*asset.ComputeTask, common.PaginationToken, error)
QueryComputeTasks returns a paginated and filtered list of tasks.
func (*DBAL) QueryDataManagers ¶
func (d *DBAL) QueryDataManagers(p *common.Pagination) ([]*asset.DataManager, common.PaginationToken, error)
QueryDataManagers implements persistence.DataManagerDBAL
func (*DBAL) QueryDataSamples ¶
func (d *DBAL) QueryDataSamples(p *common.Pagination, filter *asset.DataSampleQueryFilter) ([]*asset.DataSample, common.PaginationToken, error)
QueryDataSamples implements persistence.DataSample
func (*DBAL) QueryEvents ¶
func (d *DBAL) QueryEvents(p *common.Pagination, filter *asset.EventQueryFilter, sortOrder asset.SortOrder) ([]*asset.Event, common.PaginationToken, error)
func (*DBAL) QueryFunctions ¶
func (d *DBAL) QueryFunctions(p *common.Pagination, filter *asset.FunctionQueryFilter) ([]*asset.Function, common.PaginationToken, error)
QueryFunctions implements persistence.FunctionDBAL
func (*DBAL) QueryPerformances ¶
func (d *DBAL) QueryPerformances(p *common.Pagination, filter *asset.PerformanceQueryFilter) ([]*asset.Performance, common.PaginationToken, error)
func (*DBAL) SetComputePlanName ¶
func (d *DBAL) SetComputePlanName(plan *asset.ComputePlan, name string) error
func (*DBAL) SubscribeToEvents ¶
func (d *DBAL) SubscribeToEvents(startEventID string, stream asset.EventService_SubscribeToEventsServer) error
SubscribeToEvents replays already existing events starting from startEventID (excluded), then it waits and forward newly created events.
func (*DBAL) UpdateComputeTaskStatus ¶
func (d *DBAL) UpdateComputeTaskStatus(taskKey string, taskStatus asset.ComputeTaskStatus) error
UpdateComputeTaskStatus updates the status of an existing task.
func (*DBAL) UpdateDataManager ¶
func (d *DBAL) UpdateDataManager(datamanager *asset.DataManager) error
UpdateDataManager updates the mutable fields of a data manager in the DB. List of mutable fields: name.
func (*DBAL) UpdateDataSample ¶
func (d *DBAL) UpdateDataSample(dataSample *asset.DataSample) error
UpdateDataSample implements persistence.DataSampleDBAL
func (*DBAL) UpdateFunction ¶
UpdateFunction updates the mutable fields of a function in the DB. List of mutable fields: name, status, image.
type Database ¶
type Database struct {
Pool PgPool
}
Database is a thin wrapper around PgPool. It handles the orchestrator specifics, such as DBAL creation.
func InitDatabase ¶
InitDatabase opens a database connexion from given url.
func (*Database) BeginTransaction ¶
BeginTransaction returns a new transaction. When readOnly is false the transaction is configured with SERIALIZABLE isolation level to protect against potential inconsistencies with concurrent requests.