From 417b203b0919fc8407722ae71bde93caf905161f Mon Sep 17 00:00:00 2001 From: mcrakhman Date: Thu, 16 Mar 2023 17:57:10 +0100 Subject: [PATCH 1/4] Derive space id as a separate method --- commonspace/spaceservice.go | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/commonspace/spaceservice.go b/commonspace/spaceservice.go index 89e9283b..0fc01125 100644 --- a/commonspace/spaceservice.go +++ b/commonspace/spaceservice.go @@ -35,6 +35,7 @@ const AddSpaceCtxKey ctxKey = 0 type SpaceService interface { DeriveSpace(ctx context.Context, payload SpaceDerivePayload) (string, error) + DerivedId(ctx context.Context, payload SpaceDerivePayload) (string, error) CreateSpace(ctx context.Context, payload SpaceCreatePayload) (string, error) NewSpace(ctx context.Context, id string) (sp Space, err error) app.Component @@ -88,6 +89,15 @@ func (s *spaceService) CreateSpace(ctx context.Context, payload SpaceCreatePaylo return store.Id(), nil } +func (s *spaceService) DerivedId(ctx context.Context, payload SpaceDerivePayload) (id string, err error) { + storageCreate, err := storagePayloadForSpaceDerive(payload) + if err != nil { + return + } + id = storageCreate.SpaceHeaderWithId.Id + return +} + func (s *spaceService) DeriveSpace(ctx context.Context, payload SpaceDerivePayload) (id string, err error) { storageCreate, err := storagePayloadForSpaceDerive(payload) if err != nil { From 2691da66f7506149867728664647a31dc07e00f4 Mon Sep 17 00:00:00 2001 From: mcrakhman Date: Thu, 16 Mar 2023 18:27:19 +0100 Subject: [PATCH 2/4] Update rpc err in pull space --- commonspace/spaceservice.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/commonspace/spaceservice.go b/commonspace/spaceservice.go index 0fc01125..47427831 100644 --- a/commonspace/spaceservice.go +++ b/commonspace/spaceservice.go @@ -17,6 +17,7 @@ import ( "github.com/anytypeio/any-sync/commonspace/syncstatus" "github.com/anytypeio/any-sync/net/peer" "github.com/anytypeio/any-sync/net/pool" + "github.com/anytypeio/any-sync/net/rpc/rpcerr" "github.com/anytypeio/any-sync/nodeconf" "sync/atomic" ) @@ -216,6 +217,7 @@ func (s *spaceService) getSpaceStorageFromRemote(ctx context.Context, id string) cl := spacesyncproto.NewDRPCSpaceSyncClient(p) res, err := cl.SpacePull(ctx, &spacesyncproto.SpacePullRequest{Id: id}) if err != nil { + err = rpcerr.Unwrap(err) return } From ed1b597fc5fb1af755e4b68cead44868dda72ecf Mon Sep 17 00:00:00 2001 From: mcrakhman Date: Thu, 16 Mar 2023 18:46:48 +0100 Subject: [PATCH 3/4] Add error wrapping in app --- app/app.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/app.go b/app/app.go index 85d67f61..3655724c 100644 --- a/app/app.go +++ b/app/app.go @@ -172,7 +172,7 @@ func (app *App) Start(ctx context.Context) (err error) { for i, s := range app.components { if err = s.Init(app); err != nil { closeServices(i) - return fmt.Errorf("can't init service '%s': %v", s.Name(), err) + return fmt.Errorf("can't init service '%s': %w", s.Name(), err) } } @@ -181,7 +181,7 @@ func (app *App) Start(ctx context.Context) (err error) { start := time.Now() if err = serviceRun.Run(ctx); err != nil { closeServices(i) - return fmt.Errorf("can't run service '%s': %v", serviceRun.Name(), err) + return fmt.Errorf("can't run service '%s': %w", serviceRun.Name(), err) } spent := time.Since(start).Milliseconds() app.startStat.SpentMsTotal += spent From 305c509fc6a1edce94fbc31e84fb6867631fa66b Mon Sep 17 00:00:00 2001 From: mcrakhman Date: Thu, 16 Mar 2023 19:01:05 +0100 Subject: [PATCH 4/4] Update derive id method name --- commonspace/spaceservice.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/commonspace/spaceservice.go b/commonspace/spaceservice.go index 47427831..cf4a2710 100644 --- a/commonspace/spaceservice.go +++ b/commonspace/spaceservice.go @@ -36,7 +36,7 @@ const AddSpaceCtxKey ctxKey = 0 type SpaceService interface { DeriveSpace(ctx context.Context, payload SpaceDerivePayload) (string, error) - DerivedId(ctx context.Context, payload SpaceDerivePayload) (string, error) + DeriveId(ctx context.Context, payload SpaceDerivePayload) (string, error) CreateSpace(ctx context.Context, payload SpaceCreatePayload) (string, error) NewSpace(ctx context.Context, id string) (sp Space, err error) app.Component @@ -90,7 +90,7 @@ func (s *spaceService) CreateSpace(ctx context.Context, payload SpaceCreatePaylo return store.Id(), nil } -func (s *spaceService) DerivedId(ctx context.Context, payload SpaceDerivePayload) (id string, err error) { +func (s *spaceService) DeriveId(ctx context.Context, payload SpaceDerivePayload) (id string, err error) { storageCreate, err := storagePayloadForSpaceDerive(payload) if err != nil { return