Documentation ¶
Index ¶
- Variables
- func NewHandler(ctx context.Context, ready chan bool, consumerGroupID string, ...) *loaderHandler
- func ToExtraMaskSchemaMap(r string) map[string]serializer.ExtraMaskInfo
- func ToExtraMaskSchemaString(m map[string]serializer.ExtraMaskInfo) string
- func ToMaskSchemaMap(r string) map[string]serializer.MaskInfo
- func ToMaskSchemaString(m map[string]serializer.MaskInfo) string
- type Job
- type LoaderConfig
Constants ¶
This section is empty.
Variables ¶
View Source
var ( DefaultMaxWaitSeconds int = 1800 DefaultMaxProcessingTime int32 = 600000 MaxRunningLoaders float64 = 10 ThrottlingBudget int = 10 FirstThrottlingBudget int = 120 )
View Source
var JobAvroSchema string = `` /* 867-byte string literal not displayed */
Functions ¶
func NewHandler ¶
func NewHandler( ctx context.Context, ready chan bool, consumerGroupID string, loaderConfig LoaderConfig, saramaConfig kafka.SaramaConfig, redshifter *redshift.Redshift, redshiftSchema string, redshiftGroup *string, redshiftMetrics bool, prometheusClient prometheus.Client, schemaQueries *model.Vector, ) *loaderHandler
func ToExtraMaskSchemaMap ¶
func ToExtraMaskSchemaMap(r string) map[string]serializer.ExtraMaskInfo
TODO: hack, to release fast, found unwanted complications in using map[string]interface in goavro(will revisit)
func ToExtraMaskSchemaString ¶
func ToExtraMaskSchemaString(m map[string]serializer.ExtraMaskInfo) string
TODO: hack, to release fast, found unwanted complications in using map[string]interface in goavro (may revisit if required)
func ToMaskSchemaMap ¶
func ToMaskSchemaMap(r string) map[string]serializer.MaskInfo
TODO: hack, to release fast, found unwanted complications in using map[string]interface in goavro(will revisit)
func ToMaskSchemaString ¶
func ToMaskSchemaString(m map[string]serializer.MaskInfo) string
TODO: hack, to release fast, found unwanted complications in using map[string]interface in goavro (may revisit if required)
Types ¶
type Job ¶
type Job struct { UpstreamTopic string `json:"upstreamTopic"` // batcher topic StartOffset int64 `json:"startOffset"` EndOffset int64 `json:"endOffset"` CsvDialect string `json:"csvDialect"` S3Path string `json:"s3Path"` SchemaId int `json:"schemaId"` // schema id of debezium event for the value for upstream topic (batcher topic) SchemaIdKey int `json:"schemaIdKey"` // schema id of debezium event for the key for upstream topic (batcher topic) MaskSchema map[string]serializer.MaskInfo `json:"maskSchema"` ExtraMaskSchema map[string]serializer.ExtraMaskInfo `json:"extraMaskSchema"` SkipMerge bool `json:"skipMerge"` // deprecated in favour of createEvents, updateEvents and deleteEvents BatchBytes int64 `json:"batchBytes"` // batch bytes store sum of all message bytes in this batch CreateEvents int64 `json:"createEvents"` // stores count of create events UpdateEvents int64 `json:"updateEvents"` // stores count of update events DeleteEvents int64 `json:"deleteEvents"` // stores count of delete events }
func NewJob ¶
func NewJob( upstreamTopic string, startOffset int64, endOffset int64, csvDialect string, s3Path string, schemaId int, schemaIdKey int, maskSchema map[string]serializer.MaskInfo, extraMaskSchema map[string]serializer.ExtraMaskInfo, skipMerge bool, batchBytes, createEvents, updateEvents, deleteEvents int64) Job
func StringMapToJob ¶
StringMapToUser returns a User from a map representation of the User.
func (Job) ToStringMap ¶
ToStringMap returns a map representation of the Job
type LoaderConfig ¶
type LoaderConfig struct { // Maximum size of a batch, on exceeding this batch is pushed // regarless of the wait time. // Deprecated: in favour of MaxBytesPerBatch MaxSize int `yaml:"maxSize,omitempty"` // MaxBytesPerBatch is the maximum bytes per batch. It is not the size // of kafka message but the size of all the messages that would be // loaded in the batch. Default is there // if the user has not specified a default will be applied. // If this is specified, maxSize specification is not considered. // Default would be specified after MaxSize is gone MaxBytesPerBatch *int64 `yaml:"maxBytesPerBatch,omitempty"` // MaxWaitSeconds after which the bash would be pushed regardless of its size. MaxWaitSeconds *int `yaml:"maxWaitSeconds,omitempty"` }
Click to show internal directories.
Click to hide internal directories.