DobyTang / LazyLibrarian

This project isn't finished yet. Goal is to create a SickBeard, CouchPotato, Headphones-like application for ebooks. Headphones is used as a base, so there are still a lot of references to it.
732 stars 71 forks source link

073a8cf3a2fb8374ab23d4813ef3b02d6d56139a breaks post-processing - destination folders are not created #1261

Closed splog123 closed 6 years ago

splog123 commented 6 years ago

Commit 073a8cf3a2fb8374ab23d4813ef3b02d6d56139a (found with git-bisect) now causes post-processing to fail with this log message (book and author names obfuscated to $VAR):

ERROR Postprocessing for $AUTHOR - $BOOK has failed: Unable to move file /var/download/complete/books/$AUTHOR - $BOOK LL.(4657)/$AUTHOR - $BOOKFILE to /mnt/media/eBooks/lazylibrarian/$AUTHOR/$BOOK/$AUTHOR - $BOOKFILE: IOError [Errno 2] No such file or directory: u'/mnt/media/eBooks/lazylibrarian/$AUTHOR/$BOOK/$AUTHOR - $BOOKFILE'

WARNING Residual files remain in /var/download/complete/books/$AUTHOR - $BOK LL.(4657).fail

Basically, the destination directories in the library folder are not being created. If you imagine the code were to run say "mkdir /path/to/new/folder" when it needs to be "mkdir -p ..." then you get the idea of how it will fail.

System: git checkout on Gentoo Linux. Library folder is an NFS mount. Setup has worked correctly and flawlessly for 4 years+

Config: eBook Library Folder: /mnt/media/eBooks/lazylibrarian/ eBook/AudioBook Foldername Pattern: $Author/$Title/ eBook Filename Pattern: $Author - $Title

Bug is repeatable and consistent:

The problem is not folder setup, I haven't changed this for 4 years. NFS share has not changed or been updated in months.

philborman commented 6 years ago

There were some changes to making directories to try to track down and get around a problem with Google drive. We currently try to do the equivalent of makedir -p ourselves to get info on each stage of the folder creation. This seems to be failing on your setup, not sure why. I will probably revert the change later today as the Google drive issue seems to be something we can't work around anyway. Sorry for the disruption,

splog123 commented 6 years ago

No problem. Sometimes you have to write the code and only then find all the $DUMB_ISSUES with $VENDOR :-)

philborman commented 6 years ago

Just pushed the reverted code, hopefully ok now.

splog123 commented 6 years ago

I checked out the latest push, all seems grest from here - previous behaviour restored.

Thanks for the swift reaction!

philborman commented 6 years ago

No problem, I was halfway through it anyway ;-) Google Drive Stream was/is the reason for the change, issue 1244, it doesn't seem to report permissions properly but I can't find a way around it within lazylibrarian