loadclient

package
v0.0.0-...-b3895e6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 30, 2018 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type LoadError

type LoadError interface {
	error
	Retryable() bool
}

LoadError is an error from a load

type Loader

type Loader interface {
	LoadManifest(manifest *metadata.LoadManifest) LoadError
	CheckLoad(manifestUUID string) (scoop_protocol.LoadStatus, error)
	HealthCheck() error
}

Loader interacts with scoop loads

func NewRSLoader

func NewRSLoader(s3Uploader s3manageriface.UploaderAPI, rsBackend backend.Backend, manifestBucket string, stats monitoring.SafeStatter) (Loader, error)

NewRSLoader returns a RSLoader instance

type RSLoader

type RSLoader struct {
	// contains filtered or unexported fields
}

RSLoader contains the redshift backend, stats module, and s3 bucket for the loader

func (*RSLoader) CheckLoad

func (rsl *RSLoader) CheckLoad(manifestUUID string) (scoop_protocol.LoadStatus, error)

CheckLoad checks the status of a current manifest load into Redshift

func (*RSLoader) CreateManifestInBucket

func (rsl *RSLoader) CreateManifestInBucket(manifest *metadata.LoadManifest) (string, error)

CreateManifestInBucket takes a load manifest, converts into json, and loads it into a provided s3 bucket

func (*RSLoader) HealthCheck

func (rsl *RSLoader) HealthCheck() error

HealthCheck Checks to see if the connection to Redshift is still healthy

func (*RSLoader) LoadManifest

func (rsl *RSLoader) LoadManifest(manifest *metadata.LoadManifest) LoadError

LoadManifest takes a load manifest object and uses the RSBackend to load the manifest into redshift

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL