You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Server exception not caught is lock file is not writable #1397
Mon, 27 Jan 2020 22:26:29 GMT solid:get GET -- Error: undefined EACCES: permission denied, mkdir '/Library/WebServer/Documents/profile/card$.ttl.lock'
(node:1964) UnhandledPromiseRejectionWarning: TypeError: releaseLock is not a function
at Promise (/devel/github.com/solid/node-solid-server/lib/lock.js:25:13)
at <anonymous>
(node:1964) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 105274)
Mon, 27 Jan 2020 22:26:30 GMT solid:get GET -- Error: undefined EACCES: permission denied, mkdir '/Library/WebServer/Documents/timbl/Public/Archive/linkeddata/chat/2019/08/23/chat.ttl.lock'
(node:1964) UnhandledPromiseRejectionWarning: TypeError: releaseLock is not a function
at Promise (/devel/github.com/solid/node-solid-server/lib/lock.js:25:13)
at <anonymous>
(node:1964) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 105275)
When a file is read in an area where the lock file cannot be created, the server -- from the logs above -- seems to fail ungracefully. Tries to call the unlock function which is not in fact a function.
For future reference when I get back around to this issue, could you give more information on how I would create an "area where the lock file cannot be created"
Just use the unix file protection to make the directory unwritable by the user the server runs on (or for that matter by anyone).
Also you can plug in a write-protected drive and link it into the solid file system.
((I was seeing this often as mashlib currently always guesses that there is a /profile/card file for the owner of the pod, and that for me is no a writable space. I have change that directory to be file-writable to the server, and so the server doesn't crash when you get profile/card now.)))
Activity
timbl commentedon Jan 27, 2020
When a file is read in an area where the lock file cannot be created, the server -- from the logs above -- seems to fail ungracefully. Tries to call the unlock function which is not in fact a function.
timbl commentedon Jan 27, 2020
See also related #1372
jaxoncreed commentedon Jan 28, 2020
Ah I see this is a bug.
For future reference when I get back around to this issue, could you give more information on how I would create an "area where the lock file cannot be created"
timbl commentedon Jul 26, 2020
Just use the unix file protection to make the directory unwritable by the user the server runs on (or for that matter by anyone).
Also you can plug in a write-protected drive and link it into the solid file system.
timbl commentedon Jul 26, 2020
Note there are three bugs
timbl commentedon Jul 26, 2020
((I was seeing this often as mashlib currently always guesses that there is a /profile/card file for the owner of the pod, and that for me is no a writable space. I have change that directory to be file-writable to the server, and so the server doesn't crash when you get profile/card now.)))