Skip to content

Commit

Permalink
fix test
Browse files Browse the repository at this point in the history
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
  • Loading branch information
butonic committed Dec 14, 2023
1 parent 24518cd commit 6309bec
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 7 deletions.
1 change: 1 addition & 0 deletions pkg/storage/utils/decomposedfs/upload/store.go
Original file line number Diff line number Diff line change
Expand Up @@ -167,6 +167,7 @@ func (store ocisstore) Cleanup(ctx context.Context, session UploadSession, failu
appctx.GetLogger(ctx).Info().Str("session", session.ID()).Err(err).Msg("could not read node")
return
}
// FIXME: after cleanup the node might already be deleted ...
if n != nil { // node can be nil when there was an error before it was created (eg. checksum-mismatch)
if err := n.UnmarkProcessing(ctx, session.ID()); err != nil {
appctx.GetLogger(ctx).Info().Str("path", n.InternalPath()).Err(err).Msg("unmarking processing failed")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ import (
"github.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs/metadata"
"github.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs/node"
"github.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs/options"
"github.com/cs3org/reva/v2/pkg/storage/utils/tus"
)

// TestInitNewNode calls greetings.initNewNode
Expand All @@ -23,6 +22,8 @@ func TestInitNewNode(t *testing.T) {

lookup := lookup.New(metadata.NewMessagePackBackend(root, cache.Config{}), &options.Options{Root: root})

store := NewOCISUploadSessionStore(lookup, nil, root, nil, false, options.TokenOptions{})

rootNode := node.New("e48c4e7a-beac-4b82-b991-a5cff7b8c39c", "e48c4e7a-beac-4b82-b991-a5cff7b8c39c", "", "", 0, "", providerv1beta1.ResourceType_RESOURCE_TYPE_CONTAINER, &userv1beta1.UserId{}, lookup)
rootNode.Exists = true
rootNode.SpaceRoot = rootNode
Expand All @@ -33,7 +34,7 @@ func TestInitNewNode(t *testing.T) {
}
n := node.New("e48c4e7a-beac-4b82-b991-a5cff7b8c39c", "930b7a2e-b745-41e1-8a9b-712582021842", "e48c4e7a-beac-4b82-b991-a5cff7b8c39c", "newchild", 10, "26493c53-2634-45f8-949f-dc07b88df9b0", providerv1beta1.ResourceType_RESOURCE_TYPE_FILE, &userv1beta1.UserId{}, lookup)
n.SpaceRoot = rootNode
f, err := initNewNode(&Upload{Ctx: context.Background(), lu: lookup, Session: tus.NewSession(context.Background(), root)}, n, 10)
f, err := store.initNewNode(context.Background(), store.New(context.Background()), n, 10)
if err != nil {
t.Fatalf(err.Error())
}
Expand All @@ -42,7 +43,7 @@ func TestInitNewNode(t *testing.T) {
// try initializing the same new node again in case a concurrent requests tries to create a file with the same name
n = node.New("e48c4e7a-beac-4b82-b991-a5cff7b8c39c", "a6ede986-cfcd-41c5-a820-6eee955a1c2b", "e48c4e7a-beac-4b82-b991-a5cff7b8c39c", "newchild", 10, "26493c53-2634-45f8-949f-dc07b88df9b0", providerv1beta1.ResourceType_RESOURCE_TYPE_FILE, &userv1beta1.UserId{}, lookup)
n.SpaceRoot = rootNode
f2, err := initNewNode(&Upload{Ctx: context.Background(), lu: lookup, Session: tus.NewSession(context.Background(), root)}, n, 10)
f2, err := store.initNewNode(context.Background(), store.New(context.Background()), n, 10)
if _, ok := err.(errtypes.IsAlreadyExists); !ok {
t.Fatalf(`initNewNode(with same 'newchild' name), %v, want %v`, err, errtypes.AlreadyExists("newchild"))
}
Expand Down
11 changes: 7 additions & 4 deletions pkg/storage/utils/decomposedfs/upload/upload.go
Original file line number Diff line number Diff line change
Expand Up @@ -299,10 +299,13 @@ func checkHash(expected string, h hash.Hash) error {
}

func (session *Session) removeNode(ctx context.Context) {
if n, err := session.Node(ctx); err != nil {
if err := n.Purge(ctx); err != nil {
appctx.GetLogger(ctx).Error().Str("nodepath", n.InternalPath()).Err(err).Msg("purging node failed")
}
n, err := session.Node(ctx)
if err != nil {
appctx.GetLogger(ctx).Error().Str("session", session.ID()).Err(err).Msg("getting node from session failed")
return
}
if err := n.Purge(ctx); err != nil {
appctx.GetLogger(ctx).Error().Str("nodepath", n.InternalPath()).Err(err).Msg("purging node failed")
}
}

Expand Down

0 comments on commit 6309bec

Please sign in to comment.