We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
a file that does not have a parent (not in the space nor in the trashbin) cannot be deleted from the trashbin
Steps to reproduce the behavior:
the file should be deleted
the file cannot be deleted, HTTP 500 is returned and nil pointer exception thrown
Please describe how you started the server and provide a list of relevant environment variables or configuration files.
OCIS_LOG_PRETTY=true OCIS_DECOMPOSEDFS_METADATA_BACKEND=messagepack OCIS_URL=https://192.168.56.1:9200 ~/Downloads/ocis-3.0.0-rc.2-linux-amd64 server
logs
2023-05-05T17:23:20+05:45 ERR error reading permissions error="stat /home/artur/.ocis/storage/users/spaces/38/9f7f14-10b7-482f-b54e-2f424f2ffdb2/nodes/e5/a7/d9/5e/-84ce-43fd-97f8-55cec200dbae: no such file or directory" node=e5a7d95e-84ce-43fd-97f8-55cec200dbae pkg=rgrpc service=storage-users traceid=00000000000000000000000000000000 goroutine 4668 [running]: runtime/debug.Stack() runtime/debug/stack.go:24 +0x65 runtime/debug.PrintStack() runtime/debug/stack.go:16 +0x19 github.com/cs3org/reva/v2/internal/grpc/interceptors/recovery.recoveryFunc({0x429ba58, 0xc0010e3ad0}, {0x3d9dc80, 0x5a50c60}) github.com/cs3org/reva/v2@v2.13.1/internal/grpc/interceptors/recovery/recovery.go:48 +0x3a github.com/grpc-ecosystem/go-grpc-middleware/recovery.recoverFrom({0x429ba58?, 0xc0010e3ad0?}, {0x3d9dc80?, 0x5a50c60?}, 0xc010acdc10?) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/recovery/interceptors.go:61 +0x36 github.com/grpc-ecosystem/go-grpc-middleware/recovery.UnaryServerInterceptor.func1.1() github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/recovery/interceptors.go:29 +0x7b panic({0x3d9dc80, 0x5a50c60}) runtime/panic.go:884 +0x213 github.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs/node.(*Permissions).AssemblePermissions(0x3a00fd0?, {0x429ba58, 0xc0010e3dd0}, 0xc01bfc7170) github.com/cs3org/reva/v2@v2.13.1/pkg/storage/utils/decomposedfs/node/permissions.go:149 +0x64c github.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs.Permissions.AssemblePermissions(...) github.com/cs3org/reva/v2@v2.13.1/pkg/storage/utils/decomposedfs/spacepermissions.go:39 github.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs.(*Decomposedfs).PurgeRecycleItem(0xc00069b8f0, {0x429ba58, 0xc0010e3dd0}, 0xc0010e3da0?, {0xc000668750, 0x24}, {0x3a00fd0?, 0x3a08aa0?}) github.com/cs3org/reva/v2@v2.13.1/pkg/storage/utils/decomposedfs/recycle.go:349 +0x174 github.com/cs3org/reva/v2/internal/grpc/services/storageprovider.(*service).PurgeRecycle(0xc000ea4cc0, {0x429ba58?, 0xc0010e3dd0?}, 0xc01c0def00) github.com/cs3org/reva/v2@v2.13.1/internal/grpc/services/storageprovider/storageprovider.go:952 +0x1af github.com/cs3org/go-cs3apis/cs3/storage/provider/v1beta1._ProviderAPI_PurgeRecycle_Handler.func1({0x429ba58, 0xc0010e3dd0}, {0x40cf380?, 0xc01c0def00}) github.com/cs3org/go-cs3apis@v0.0.0-20221012090518-ef2996678965/cs3/storage/provider/v1beta1/provider_api.pb.go:6184 +0x7b go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc.UnaryServerInterceptor.func1({0x429ba58, 0xc0010e3d10}, {0x40cf380, 0xc01c0def00}, 0xc001a84900, 0xc01c004948) go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc@v0.36.4/interceptor.go:341 +0x437 github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x429ba58?, 0xc0010e3d10?}, {0x40cf380?, 0xc01c0def00?}) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a github.com/cs3org/reva/v2/internal/grpc/interceptors/eventsmiddleware.NewUnary.func1({0x429ba58, 0xc0010e3ce0}, {0x40cf380?, 0xc01c0def00?}, 0x30?, 0xc001a84920) github.com/cs3org/reva/v2@v2.13.1/internal/grpc/interceptors/eventsmiddleware/events.go:72 +0xe8 github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x429ba58?, 0xc0010e3ce0?}, {0x40cf380?, 0xc01c0def00?}) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a github.com/cs3org/reva/v2/internal/grpc/interceptors/prometheus.interceptorFromConfig.func1({0x429ba58?, 0xc0010e3ce0?}, {0x40cf380?, 0xc01c0def00?}, 0x3c73de0?, 0x3a08b01?) github.com/cs3org/reva/v2@v2.13.1/internal/grpc/interceptors/prometheus/prometheus.go:72 +0x43 github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x429ba58?, 0xc0010e3ce0?}, {0x40cf380?, 0xc01c0def00?}) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a github.com/cs3org/reva/v2/internal/grpc/interceptors/auth.NewUnary.func2({0x429ba58, 0xc0010e3ad0}, {0x40cf380, 0xc01c0def00}, 0xc001a84900, 0xc001a84960) github.com/cs3org/reva/v2@v2.13.1/internal/grpc/interceptors/auth/auth.go:160 +0xa06 github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x429ba58?, 0xc0010e3ad0?}, {0x40cf380?, 0xc01c0def00?}) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a github.com/grpc-ecosystem/go-grpc-middleware/recovery.UnaryServerInterceptor.func1({0x429ba58?, 0xc0010e3ad0?}, {0x40cf380?, 0xc01c0def00?}, 0xc01161d240?, 0x496137?) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/recovery/interceptors.go:33 +0xc4 github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x429ba58?, 0xc0010e3ad0?}, {0x40cf380?, 0xc01c0def00?}) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a github.com/cs3org/reva/v2/internal/grpc/interceptors/log.NewUnary.func1({0x429ba58, 0xc0010e3ad0}, {0x40cf380, 0xc01c0def00}, 0xc001a84900, 0xc001a849c0) github.com/cs3org/reva/v2@v2.13.1/internal/grpc/interceptors/log/log.go:39 +0x9a github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x429ba58?, 0xc0010e3ad0?}, {0x40cf380?, 0xc01c0def00?}) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a github.com/cs3org/reva/v2/internal/grpc/interceptors/useragent.NewUnary.func1({0x429ba58, 0xc0010e3a40}, {0x40cf380, 0xc01c0def00}, 0x1?, 0xc001a849e0) github.com/cs3org/reva/v2@v2.13.1/internal/grpc/interceptors/useragent/useragent.go:38 +0xf4 github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x429ba58?, 0xc0010e3a40?}, {0x40cf380?, 0xc01c0def00?}) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a github.com/cs3org/reva/v2/internal/grpc/interceptors/token.NewUnary.func1({0x429ba58, 0xc0010e39b0}, {0x40cf380, 0xc01c0def00}, 0x5d08ea0?, 0xc001a84a00) github.com/cs3org/reva/v2@v2.13.1/internal/grpc/interceptors/token/token.go:44 +0x16d github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x429ba58?, 0xc0010e39b0?}, {0x40cf380?, 0xc01c0def00?}) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a github.com/cs3org/reva/v2/internal/grpc/interceptors/appctx.NewUnary.func1({0x429ba58, 0xc0010e3920}, {0x40cf380, 0xc01c0def00}, 0x3e64c40?, 0xc001a84a20) github.com/cs3org/reva/v2@v2.13.1/internal/grpc/interceptors/appctx/appctx.go:51 +0x73c github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x429ba58?, 0xc0010e3920?}, {0x40cf380?, 0xc01c0def00?}) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1({0x429ba58, 0xc0010e3920}, {0x40cf380, 0xc01c0def00}, 0xc014c85a58?, 0x3d9c900?) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:34 +0xbe github.com/cs3org/go-cs3apis/cs3/storage/provider/v1beta1._ProviderAPI_PurgeRecycle_Handler({0x41fb300?, 0xc000ea4cc0}, {0x429ba58, 0xc0010e3920}, 0xc000570150, 0xc0015b97a0) github.com/cs3org/go-cs3apis@v0.0.0-20221012090518-ef2996678965/cs3/storage/provider/v1beta1/provider_api.pb.go:6186 +0x138 google.golang.org/grpc.(*Server).processUnaryRPC(0xc001a02b40, {0x42ae680, 0xc001967380}, 0xc01c203d40, 0xc0015b9950, 0x5a798a8, 0x0) google.golang.org/grpc@v1.54.0/server.go:1345 +0xdf3 google.golang.org/grpc.(*Server).handleStream(0xc001a02b40, {0x42ae680, 0xc001967380}, 0xc01c203d40, 0x0) google.golang.org/grpc@v1.54.0/server.go:1722 +0xa36 google.golang.org/grpc.(*Server).serveStreams.func1.2() google.golang.org/grpc@v1.54.0/server.go:966 +0x98 created by google.golang.org/grpc.(*Server).serveStreams.func1 google.golang.org/grpc@v1.54.0/server.go:964 +0x28a 2023-05-05T17:23:20+05:45 ERR runtime error: invalid memory address or nil pointer dereference; stack: goroutine 4668 [running]: runtime/debug.Stack() runtime/debug/stack.go:24 +0x65 github.com/cs3org/reva/v2/internal/grpc/interceptors/recovery.recoveryFunc({0x429ba58, 0xc0010e3ad0}, {0x3d9dc80, 0x5a50c60}) github.com/cs3org/reva/v2@v2.13.1/internal/grpc/interceptors/recovery/recovery.go:50 +0x5b github.com/grpc-ecosystem/go-grpc-middleware/recovery.recoverFrom({0x429ba58?, 0xc0010e3ad0?}, {0x3d9dc80?, 0x5a50c60?}, 0xc010acdc10?) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/recovery/interceptors.go:61 +0x36 github.com/grpc-ecosystem/go-grpc-middleware/recovery.UnaryServerInterceptor.func1.1() github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/recovery/interceptors.go:29 +0x7b panic({0x3d9dc80, 0x5a50c60}) runtime/panic.go:884 +0x213 github.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs/node.(*Permissions).AssemblePermissions(0x3a00fd0?, {0x429ba58, 0xc0010e3dd0}, 0xc01bfc7170) github.com/cs3org/reva/v2@v2.13.1/pkg/storage/utils/decomposedfs/node/permissions.go:149 +0x64c github.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs.Permissions.AssemblePermissions(...) github.com/cs3org/reva/v2@v2.13.1/pkg/storage/utils/decomposedfs/spacepermissions.go:39 github.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs.(*Decomposedfs).PurgeRecycleItem(0xc00069b8f0, {0x429ba58, 0xc0010e3dd0}, 0xc0010e3da0?, {0xc000668750, 0x24}, {0x3a00fd0?, 0x3a08aa0?}) github.com/cs3org/reva/v2@v2.13.1/pkg/storage/utils/decomposedfs/recycle.go:349 +0x174 github.com/cs3org/reva/v2/internal/grpc/services/storageprovider.(*service).PurgeRecycle(0xc000ea4cc0, {0x429ba58?, 0xc0010e3dd0?}, 0xc01c0def00) github.com/cs3org/reva/v2@v2.13.1/internal/grpc/services/storageprovider/storageprovider.go:952 +0x1af github.com/cs3org/go-cs3apis/cs3/storage/provider/v1beta1._ProviderAPI_PurgeRecycle_Handler.func1({0x429ba58, 0xc0010e3dd0}, {0x40cf380?, 0xc01c0def00}) github.com/cs3org/go-cs3apis@v0.0.0-20221012090518-ef2996678965/cs3/storage/provider/v1beta1/provider_api.pb.go:6184 +0x7b go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc.UnaryServerInterceptor.func1({0x429ba58, 0xc0010e3d10}, {0x40cf380, 0xc01c0def00}, 0xc001a84900, 0xc01c004948) go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc@v0.36.4/interceptor.go:341 +0x437 github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x429ba58?, 0xc0010e3d10?}, {0x40cf380?, 0xc01c0def00?}) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a github.com/cs3org/reva/v2/internal/grpc/interceptors/eventsmiddleware.NewUnary.func1({0x429ba58, 0xc0010e3ce0}, {0x40cf380?, 0xc01c0def00?}, 0x30?, 0xc001a84920) github.com/cs3org/reva/v2@v2.13.1/internal/grpc/interceptors/eventsmiddleware/events.go:72 +0xe8 github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x429ba58?, 0xc0010e3ce0?}, {0x40cf380?, 0xc01c0def00?}) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a github.com/cs3org/reva/v2/internal/grpc/interceptors/prometheus.interceptorFromConfig.func1({0x429ba58?, 0xc0010e3ce0?}, {0x40cf380?, 0xc01c0def00?}, 0x3c73de0?, 0x3a08b01?) github.com/cs3org/reva/v2@v2.13.1/internal/grpc/interceptors/prometheus/prometheus.go:72 +0x43 github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x429ba58?, 0xc0010e3ce0?}, {0x40cf380?, 0xc01c0def00?}) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a github.com/cs3org/reva/v2/internal/grpc/interceptors/auth.NewUnary.func2({0x429ba58, 0xc0010e3ad0}, {0x40cf380, 0xc01c0def00}, 0xc001a84900, 0xc001a84960) github.com/cs3org/reva/v2@v2.13.1/internal/grpc/interceptors/auth/auth.go:160 +0xa06 github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x429ba58?, 0xc0010e3ad0?}, {0x40cf380?, 0xc01c0def00?}) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a github.com/grpc-ecosystem/go-grpc-middleware/recovery.UnaryServerInterceptor.func1({0x429ba58?, 0xc0010e3ad0?}, {0x40cf380?, 0xc01c0def00?}, 0xc01161d240?, 0x496137?) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/recovery/interceptors.go:33 +0xc4 github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x429ba58?, 0xc0010e3ad0?}, {0x40cf380?, 0xc01c0def00?}) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a github.com/cs3org/reva/v2/internal/grpc/interceptors/log.NewUnary.func1({0x429ba58, 0xc0010e3ad0}, {0x40cf380, 0xc01c0def00}, 0xc001a84900, 0xc001a849c0) github.com/cs3org/reva/v2@v2.13.1/internal/grpc/interceptors/log/log.go:39 +0x9a github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x429ba58?, 0xc0010e3ad0?}, {0x40cf380?, 0xc01c0def00?}) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a github.com/cs3org/reva/v2/internal/grpc/interceptors/useragent.NewUnary.func1({0x429ba58, 0xc0010e3a40}, {0x40cf380, 0xc01c0def00}, 0x1?, 0xc001a849e0) github.com/cs3org/reva/v2@v2.13.1/internal/grpc/interceptors/useragent/useragent.go:38 +0xf4 github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x429ba58?, 0xc0010e3a40?}, {0x40cf380?, 0xc01c0def00?}) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a github.com/cs3org/reva/v2/internal/grpc/interceptors/token.NewUnary.func1({0x429ba58, 0xc0010e39b0}, {0x40cf380, 0xc01c0def00}, 0x5d08ea0?, 0xc001a84a00) github.com/cs3org/reva/v2@v2.13.1/internal/grpc/interceptors/token/token.go:44 +0x16d github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x429ba58?, 0xc0010e39b0?}, {0x40cf380?, 0xc01c0def00?}) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a github.com/cs3org/reva/v2/internal/grpc/interceptors/appctx.NewUnary.func1({0x429ba58, 0xc0010e3920}, {0x40cf380, 0xc01c0def00}, 0x3e64c40?, 0xc001a84a20) github.com/cs3org/reva/v2@v2.13.1/internal/grpc/interceptors/appctx/appctx.go:51 +0x73c github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x429ba58?, 0xc0010e3920?}, {0x40cf380?, 0xc01c0def00?}) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1({0x429ba58, 0xc0010e3920}, {0x40cf380, 0xc01c0def00}, 0xc014c85a58?, 0x3d9c900?) github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:34 +0xbe github.com/cs3org/go-cs3apis/cs3/storage/provider/v1beta1._ProviderAPI_PurgeRecycle_Handler({0x41fb300?, 0xc000ea4cc0}, {0x429ba58, 0xc0010e3920}, 0xc000570150, 0xc0015b97a0) github.com/cs3org/go-cs3apis@v0.0.0-20221012090518-ef2996678965/cs3/storage/provider/v1beta1/provider_api.pb.go:6186 +0x138 google.golang.org/grpc.(*Server).processUnaryRPC(0xc001a02b40, {0x42ae680, 0xc001967380}, 0xc01c203d40, 0xc0015b9950, 0x5a798a8, 0x0) google.golang.org/grpc@v1.54.0/server.go:1345 +0xdf3 google.golang.org/grpc.(*Server).handleStream(0xc001a02b40, {0x42ae680, 0xc001967380}, 0xc01c203d40, 0x0) google.golang.org/grpc@v1.54.0/server.go:1722 +0xa36 google.golang.org/grpc.(*Server).serveStreams.func1.2() google.golang.org/grpc@v1.54.0/server.go:966 +0x98 created by google.golang.org/grpc.(*Server).serveStreams.func1 google.golang.org/grpc@v1.54.0/server.go:964 +0x28a pkg=rgrpc service=storage-users traceid=00000000000000000000000000000000 2023-05-05T17:23:20+05:45 ERR unary code=Internal end="05/May/2023:17:23:20 +0545" from=tcp://127.0.0.1:44234 pkg=rgrpc service=storage-users start="05/May/2023:17:23:20 +0545" time_ns=6452548 traceid=00000000000000000000000000000000 uri=/cs3.storage.provider.v1beta1.ProviderAPI/PurgeRecycle user-agent="Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/112.0" 2023-05-05T17:23:20+05:45 ERR Internal Server Error code=500 item_path=/ key=68a77b3f-bfe1-4a08-a30e-ad9a8d77282b name=com.owncloud.web.ocdav reference={"path":".","resource_id":{"space_id":"389f7f14-10b7-482f-b54e-2f424f2ffdb2","storage_id":"75838d7a-5b99-4287-b4ac-407573a8b112"}} request-id=2d2f1dbc-be58-4976-b81e-b6cabd204042 service=ocdav status={"code":15,"message":"gateway could not call PurgeRecycle:rpc error: code = Internal desc = runtime error: invalid memory address or nil pointer dereference","trace":"00000000000000000000000000000000"} traceid=00000000000000000000000000000000
The text was updated successfully, but these errors were encountered:
ToDo QA-Team: create an API test for that case
Sorry, something went wrong.
Needs reva release & bump
part of #6253
dragonchaser
No branches or pull requests
Describe the bug
a file that does not have a parent (not in the space nor in the trashbin) cannot be deleted from the trashbin
Steps to reproduce
Steps to reproduce the behavior:
Expected behavior
the file should be deleted
Actual behavior
the file cannot be deleted, HTTP 500 is returned and nil pointer exception thrown
Setup
Please describe how you started the server and provide a list of relevant environment variables or configuration files.
OCIS_LOG_PRETTY=true OCIS_DECOMPOSEDFS_METADATA_BACKEND=messagepack OCIS_URL=https://192.168.56.1:9200 ~/Downloads/ocis-3.0.0-rc.2-linux-amd64 server
Additional context
logs
The text was updated successfully, but these errors were encountered: