OPDS content server returns 500 error but web view does not
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
calibre |
Invalid
|
Undecided
|
Unassigned |
Bug Description
Calibre Release: 3.10 [64bit]
Windows (OS is Windows 10 Enterprise)
I am running the content server without a user/password setup.
About 50% of directories/Views on the OPDS return a 500 server error but the same view seen from the web shows without a problem.
For instance 5 star rated books. Show fine at http://
But return an error when browsing through FBReader (or same URL in browser, taken from the access.log)
Since so many authors/
another with 15 books will not.
Always the same error:
calibre server listening on 0.0.0.0:8080
OPDS feeds advertised via BonJour at: 192.168.1.10 port: 8080
Unhandled exception in state: State: _job_done Client: 127.0.0.1:55462 Request: GET /opds/category/
Traceback (most recent call last):
File "site-packages\
File "site-packages\
File "site-packages\
File "site-packages\
File "site-packages\
File "site-packages\
File "site-packages\
File "site-packages\
File "site-packages\
TypeError: cannot concatenate 'str' and 'NoneType' objects
I took a look at this line at Github.
ans = E.entry(
Chose a view (this case an author) and viewed all the books.
None of these where missing: Title, Author (of course not, since looking at author), last modified, published,
Only one didn't have a valid ISBN (Firstborn by Brandon Sanderson) it only has an ASIN number.
Tried searching "pubdate:false and author:"Brandon Sanderson"
"title:false", last_modified:false and etc..
I finally found 2 books with uuid:false and author:"Brandon Sanderson"
Problem is that I cannot see the UUID (tried viewing the books in debug mode) or tell Calibre to reassign a new UUID for these books.
Turns out that about 13% of my ebooks are missing a uuid. Which explains the random location of the errors.
I am using the Goodreads plugin for a metadata source, since they have the only working series categorization.
Regards
uuids are automatically generated when book records are created. The >restore
only way you could possibly have missing uuids is if some third party
software is messing with the calibre database. You can try using the
restore database tool which will rebuild the db from the OPF backup
files (Click calibre icon in the toolbar->Library maintenance-
database)
status invalid