Versions in this module Expand all Collapse all v0 v0.0.2 Mar 12, 2021 Changes in this version + const AdvisoryLockClassID_EthBroadcaster + const AdvisoryLockClassID_EthConfirmer + const AdvisoryLockClassID_JobSpawner + const AdvisoryLockClassID_ORM + const AdvisoryLockObjectID_EthConfirmer + const ChannelInsertOnEthTx + const ChannelJobCreated + const ChannelJobDeleted + const ChannelRunCompleted + const ChannelRunStarted + const IdleInTxSessionTimeout + const LockTimeout + var DefaultSqlTxOptions = sql.TxOptions + func GormTransaction(ctx context.Context, db *gorm.DB, fc func(tx *gorm.DB) error, ...) (err error) + func IsSerializationAnomaly(err error) bool + func NewEventBroadcaster(uri string, minReconnectInterval time.Duration, ...) *eventBroadcaster + type AdvisoryLocker interface + Close func() error + Unlock func(ctx context.Context, classID int32, objectID int32) error + WithAdvisoryLock func(ctx context.Context, classID int32, objectID int32, f func() error) error + func NewAdvisoryLock(uri string) AdvisoryLocker + type Event struct + Channel string + Payload string + type EventBroadcaster interface + Notify func(channel string, payload string) error + NotifyInsideGormTx func(tx *gorm.DB, channel string, payload string) error + Start func() error + Stop func() error + Subscribe func(channel, payloadFilter string) (Subscription, error) + type NullAdvisoryLocker struct + func (*NullAdvisoryLocker) Unlock(ctx context.Context, classID int32, objectID int32) error + func (*NullAdvisoryLocker) WithAdvisoryLock(ctx context.Context, classID int32, objectID int32, f func() error) error + func (n *NullAdvisoryLocker) Close() error + type Subscription interface + Close func() + Events func() <-chan Event