Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
W wendelin.core
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 1
    • Issues 1
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge requests 4
    • Merge requests 4
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value Stream
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • nexedi
  • wendelin.core
  • Merge requests
  • !15

Closed
Created May 11, 2023 by Levin Zimmermann@levin.zimmermannMaintainer
  • Report abuse
Report abuse

wcfs: Fix fusermount for NEO storage \w > 1 master

  • Overview 20
  • Commits 1
  • Changes 1

Hello Kirill,

I hope everything is ok on your side. Things process slow, but I already could successfully run WCFS (not yet any zope using it) with a NEO cluster which has more than one master node. This MR is the small wendelin.core part of kirr/neo!2 (merged). While the NEO parts are still in-the-pipeline, I think we can already proceed with this small patch.

The basic context is:

We use the zuri for the FsName. The NEO uri contains commas if the respective cluster uses more than one master node [1]. Unfortunately fusermount doesn't support commas in mount options, because mount options are separated from each other by commas [2], [3]. Therefore before this patch WCFS failed to mount the filesystem if the NEO cluster had more than one master: this failure is fixed now.

[1] https://lab.nexedi.com/kirr/neo/blob/8c974485/go/neo/client.go#L613

[2] https://www.man7.org/linux/man-pages/man1/fusermount3.1.html

[3] https://lab.nexedi.com/kirr/go-fuse/blob/4a0e6eb5/fuse/server.go#L186

The fsname option sets the first field of WCFS' /etc/mstab row. If undeclared it's simply the name of the filesystem process. git grep FsName didn't found any other line in wendelin.core sources. I therefore conclude it's safe to replace the commas with semicolons. As far as I understand this field has merely the purpose to understand the rows origin for a human being reading /etc/mstab, is this right?

Best, Levin

Assignee
Assign to
Reviewer
Request review from
None
Milestone
None
Assign milestone
Time tracking
Source branch: fixfusermount
GitLab Nexedi Edition | About GitLab | About Nexedi | 沪ICP备2021021310号-2 | 沪ICP备2021021310号-7