Skip to content
New issue

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

Fixs permission recursive in paperless chart #2640

Closed
wants to merge 5 commits into from

Conversation

faan11
Copy link

@faan11 faan11 commented Jul 7, 2024

Hi,

This merge requests fixs the paperless initialization by avoiding the recursive permission that is quite slow on Truenas Scale. The solution can be found also here: paperless-ngx/paperless-ngx#5086
This merge requests increases the version from 1.2.43 to 1.2.44

faan11 and others added 5 commits July 7, 2024 12:56
Removes install permissions
This version avoids recursive permission checking
Updates catalog.json
Recover app permission initContainer
Copy link
Contributor

@stavros-k stavros-k left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hello, changes should only happen under ix-dev directory. Also do not manually update catalog.json, it is automatically generated.

Now regarding the functional change, have you tried opening a bug report on the upstream so all downstreams get the fix? If I understand correctly, it does not apply the groupmod, regardless of the message that is being printed. (So that sounds like a bug that upstream should fix. Either the functionality or the wording).
If there is such bug report, what is the outcome of it?

@faan11
Copy link
Author

faan11 commented Jul 10, 2024

Hi @stavros-k
thank you for you feedback, i did not know that, i'll try to fix that manually.

As you read in the discussion, this issue is not related to upstream. The upstream fixes permission in the frontend folder. This operation is usually fast on a raspberry pi ( i tried that ), but if you try that on a truenas system, is slow. This slowness will lead the deployment to timeout.

Should you have any more question or doubt, let me know

Thank you again,
Kind regard
Fabio

@stavros-k
Copy link
Contributor

As you read in the discussion, this issue is not related to upstream. The upstream fixes permission in the frontend folder. This operation is usually fast on a raspberry pi ( i tried that ), but if you try that on a truenas system, is slow. This slowness will lead the deployment to timeout.

The issue here is not TrueNAS exactly, but any system using overlayFS as a storage driver would have this issue.
This is noticeable on systems with HDDs, SSDs are recommended for using apps, at least for the apps dataset.

But I still don't get why we need this change.
This will still chown and usermod/groupmod (which also does a chown btw) right before the entrypoint.
While this running, the timeout still counts.

I'd be more happy to increase the timeout like we did on NginxProxyManager, instead of overriding entrypoint.

In an ideal scenario paperless would run rootless, or at least would have a env var to skip chown at startup.

@faan11
Copy link
Author

faan11 commented Jul 10, 2024 via email

@stavros-k
Copy link
Contributor

Adding the env upstream would be ideal yes.

As for the slowness, its "expected" behavior from the overlayFS, because when you manipulate the ephemeral layers of the image, it has to copy every layer on a new mutable layer before modifying which consumes a lot of IO.

@faan11
Copy link
Author

faan11 commented Jul 14, 2024

Thank you, I was expecting that the final layer ( result of merging all layers ) was partially cached in memory. Do you have any documentation reference for this? It's an interesting topic

@stavros-k
Copy link
Contributor

Thank you, I was expecting that the final layer ( result of merging all layers ) was partially cached in memory. Do you have any documentation reference for this? It's an interesting topic

https://github.com/docker/docs/blob/3ec9c7dc1db5f355a7bde794baecc06ee24868be/content/storage/storagedriver/overlayfs-driver.md#modifying-files-or-directories

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants