watermill
watermill copied to clipboard
PGX Subscriber InvalidIfaceAssign
I'm getting an error when trying to create an SQL subscriber with pgx. I can't find any example of a Postgres subscriber so I've followed the simple MySQL forwarder example to no success.
Here's the code :
func InitSQLSubscriber(db *pgxpool.Pool, logger watermill.LoggerAdapter) (*sql.Subscriber, error) {
sqlSubscriber, err := sql.NewSubscriber(
db,
sql.SubscriberConfig{
SchemaAdapter: sql.DefaultPostgreSQLSchema{},
OffsetsAdapter: sql.DefaultPostgreSQLOffsetsAdapter{},
InitializeSchema: true,
},
logger,
)
if err != nil {
return nil, fmt.Errorf("could not create subscriber: %s", err)
}
return sqlSubscriber, nil
}
The error :
cannot use db (variable of type *pgxpool.Pool) as "github.com/ThreeDotsLabs/watermill-sql/v2/pkg/sql".Beginner value in argument to sql.NewSubscriber: *pgxpool.Pool does not implement "github.com/ThreeDotsLabs/watermill-sql/v2/pkg/sql".Beginner (wrong type for method BeginTx) have BeginTx(context.Context, pgx.TxOptions) (pgx.Tx, error) want BeginTx(context.Context, "database/sql".TxOptions) ("database/sql".Tx, error)compilerInvalidIfaceAssign
Any response to this?