load prev state
This commit is contained in:
@@ -257,7 +257,7 @@ func (a *CheckoutPoolServer) getGrainFromKlarnaOrder(ctx context.Context, order
|
|||||||
if !ok {
|
if !ok {
|
||||||
return nil, fmt.Errorf("invalid cart id in order reference: %s", order.MerchantReference1)
|
return nil, fmt.Errorf("invalid cart id in order reference: %s", order.MerchantReference1)
|
||||||
}
|
}
|
||||||
grain, err := a.Get(ctx, uint64(cartId))
|
grain, err := a.getAnywhere(ctx, uint64(cartId))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("failed to get cart grain: %w", err)
|
return nil, fmt.Errorf("failed to get cart grain: %w", err)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -79,6 +79,11 @@ func main() {
|
|||||||
grainSpawns.Inc()
|
grainSpawns.Inc()
|
||||||
|
|
||||||
ret := checkout.NewCheckoutGrain(id, 0, 0, time.Now(), nil) // version to be set later
|
ret := checkout.NewCheckoutGrain(id, 0, 0, time.Now(), nil) // version to be set later
|
||||||
|
// Load persisted events/state for this checkout if present
|
||||||
|
if err := diskStorage.LoadEvents(ctx, id, ret); err != nil {
|
||||||
|
// Return the grain along with error (e.g., not found) so callers can decide
|
||||||
|
return ret, err
|
||||||
|
}
|
||||||
return ret, nil
|
return ret, nil
|
||||||
},
|
},
|
||||||
Destroy: func(grain actor.Grain[checkout.CheckoutGrain]) error {
|
Destroy: func(grain actor.Grain[checkout.CheckoutGrain]) error {
|
||||||
|
|||||||
Reference in New Issue
Block a user