ocis: CreateHome fails

Describe the bug

Sometimes ™️ the CreateHome grpc request fails on first user login. As a result the logged in user sees a Resource not found page, which is yielded by a 404 from PROPFIND on the user home. What I noticed in the filesystem is that the following folder structure was created, with a symlink to a non-existing folder:

.
├── blobs
├── nodes
│   └── root
│       └── ddc2004c-0977-11eb-9d3f-a793888cd0f8 -> ../ddc2004c-0977-11eb-9d3f-a793888cd0f8
├── spaces
│   ├── personal
│   └── share
├── trash
└── uploads

Steps to reproduce

Steps to reproduce the behavior:

  1. unknown, seemingly random

A hunch that I thought I had, but still couldn’t reproduce it in a stable way:

  1. delete ~/.ocis
  2. start ocis single binary (in my case it was with a WEB_ASSET_PATH set to a locally build web): WEB_ASSET_PATH=/path/to/web/dist OCIS_INSECURE=true ./bin/ocis server
  3. try to login via https://localhost:9200 (failing)
  4. have a 2022/01/20 10:23:35 [ERR] mdns: Failed to bind to udp port: listen udp4 0.0.0.0:0: socket: too many open files listen udp6 [::]:0: socket: too many open files
  5. restart ocis with same command as above
  6. try to login again (succeeding)
  7. see the Resource not found page as described above
  8. see the ocis error log as quoted below

Again, I don’t

Expected behavior

User home gets provisioned reliably

Actual behavior

User home sometimes doesn’t get provisioned

Setup

oCIS single binary from current master at fdb2f55b77532c1ea52452664d8f7577e2bf8805

Additional context

oCIS error log

2022-01-18T10:48:44+01:00 ERR failed to create storage space error="Decomposedfs: root has no parent" pkg=rgrpc request={"name":"Admin","opaque":{"map":{"space_id":{"decoder":"plain","value":"ZGRjMjAwNGMtMDk3Ny0xMWViLTlkM2YtYTc5Mzg4OGNkMGY4"}}},"owner":{"display_name":"Admin","gid_number":30000,"groups":["users"],"id":{"idp":"https://localhost:9200","opaque_id":"ddc2004c-0977-11eb-9d3f-a793888cd0f8","type":1},"mail":"admin@example.org","mail_verified":true,"opaque":{"map":{"roles":{"decoder":"json","value":"WyI3MTg4MTg4My0xNzY4LTQ2YmQtYTI0ZC1hMzU2YTJhZmRmN2YiXQ=="}}},"uid_number":20004,"username":"admin"},"type":"personal"} service=storage status={"code":15,"message":"error listing spaces","trace":"00000000000000000000000000000000"} traceid=00000000000000000000000000000000
2022-01-18T10:48:44+01:00 ERR error when calling Createhome error="gateway: grpc failed with code CODE_INTERNAL" service=proxy

OS

macOS 11.5.2 I only have 256 file descriptors configured, but then again, I’m not even sure that the too many open files mdns error is related in any way. Of course oCIS is not fully functioning when I have the error, but I’m not sure if this is the thing that leads to the error with the failing CreateHome.

About this issue

  • Original URL
  • State: closed
  • Created 2 years ago
  • Comments: 15 (14 by maintainers)

Most upvoted comments

@nealey IIRC tmpfs does not support extended attributes in the user.* namespace, which is required by the decomposed filesystem ocis uses by default: https://cateee.net/lkddb/web-lkddb/TMPFS_XATTR.html Try using a different filesystem, or use a docker volume.