mirror of
https://github.com/zitadel/zitadel.git
synced 2025-08-12 03:37:34 +00:00
feat(eventstore): accept transaction in push (#8945)
# Which Problems Are Solved Push is not capable of external transactions. # How the Problems Are Solved A new function `PushWithClient` is added to the eventstore framework which allows to pass a client which can either be a `*sql.Client` or `*sql.Tx` and is used during push. # Additional Changes Added interfaces to database package. # Additional Context - part of https://github.com/zitadel/zitadel/issues/8931 --------- Co-authored-by: Livio Spring <livio.a@gmail.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This commit is contained in:
@@ -330,6 +330,12 @@ func Test_eventData(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
var _ Pusher = (*testPusher)(nil)
|
||||
|
||||
func (repo *testPusher) Client() *database.DB {
|
||||
return nil
|
||||
}
|
||||
|
||||
type testPusher struct {
|
||||
events []Event
|
||||
errs []error
|
||||
@@ -341,7 +347,7 @@ func (repo *testPusher) Health(ctx context.Context) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (repo *testPusher) Push(ctx context.Context, commands ...Command) (events []Event, err error) {
|
||||
func (repo *testPusher) Push(_ context.Context, _ database.QueryExecuter, commands ...Command) (events []Event, err error) {
|
||||
if len(repo.errs) != 0 {
|
||||
err, repo.errs = repo.errs[0], repo.errs[1:]
|
||||
return nil, err
|
||||
|
Reference in New Issue
Block a user