openlp-core team mailing list archive
-
openlp-core team
-
Mailing list archive
-
Message #25002
[Bug 1391638] Re: Songs database error when upgrading from 2.0.5 to 2.1.1
I got the song DB from one of users effected by this and can reproduce it. Found the traceback below in the debug log.
The problem seems to be that during the DB upgrade we try to drop a table called "media_files_songs", but it doesn't exists.
2014-11-12 14:03:49,008 openlp.core.lib.db ERROR Could not run database upgrade script "upgrade_1", upgrade process has been halted.
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/sqlalchemy/engine/base.py", line 867, in _execute_context
context)
File "/usr/lib/python3/dist-packages/sqlalchemy/engine/default.py", line 326, in do_execute
cursor.execute(statement, parameters)
sqlite3.OperationalError: no such table: media_files_songs
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/tgc/OpenLP/trunk/openlp/core/lib/db.py", line 146, in upgrade_db
upgrade_func(session, metadata)
File "/home/tgc/OpenLP/trunk/openlp/plugins/songs/lib/upgrade.py", line 60, in upgrade_1
op.drop_table('media_files_songs')
File "/usr/local/lib/python3.4/dist-packages/alembic/operations.py", line 735, in drop_table
self._table(name, **kw)
File "/usr/local/lib/python3.4/dist-packages/alembic/ddl/impl.py", line 158, in drop_table
self._exec(schema.DropTable(table))
File "/usr/local/lib/python3.4/dist-packages/alembic/ddl/impl.py", line 76, in _exec
conn.execute(construct, *multiparams, **params)
File "/usr/lib/python3/dist-packages/sqlalchemy/engine/base.py", line 662, in execute
params)
File "/usr/lib/python3/dist-packages/sqlalchemy/engine/base.py", line 720, in _execute_ddl
compiled
File "/usr/lib/python3/dist-packages/sqlalchemy/engine/base.py", line 874, in _execute_context
context)
File "/usr/lib/python3/dist-packages/sqlalchemy/engine/base.py", line 1024, in _handle_dbapi_exception
exc_info
File "/usr/lib/python3/dist-packages/sqlalchemy/util/compat.py", line 188, in raise_from_cause
reraise(type(exception), exception, tb=exc_tb, cause=exc_value)
File "/usr/lib/python3/dist-packages/sqlalchemy/util/compat.py", line 183, in reraise
raise value.with_traceback(tb)
File "/usr/lib/python3/dist-packages/sqlalchemy/engine/base.py", line 867, in _execute_context
context)
File "/usr/lib/python3/dist-packages/sqlalchemy/engine/default.py", line 326, in do_execute
cursor.execute(statement, parameters)
sqlalchemy.exc.OperationalError: (OperationalError) no such table: media_files_songs '\nDROP TABLE media_files_songs' ()
--
You received this bug notification because you are a member of OpenLP
Core, which is subscribed to OpenLP.
https://bugs.launchpad.net/bugs/1391638
Title:
Songs database error when upgrading from 2.0.5 to 2.1.1
Status in OpenLP - Worship Presentation Software:
New
Bug description:
Reported by a few of our users (and experienced by me too).
http://support.openlp.org/scp/tickets.php?id=2575
http://support.openlp.org/scp/tickets.php?id=2567
*OpenLP Bug Report*
Version: {'build': None, 'full': '2.1.1', 'version': '2.1.1'}
--- Details of the Exception. ---
Songs list empty after upgrade to 2.11 (Ubuntu ppa).
Every time I try to acces my songs list, I get this error. Also after manually importin from 2.05 (backup folder)
--- Exception Traceback ---
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/sqlalchemy/engine/base.py", line 951, in _execute_context
context)
File "/usr/lib/python3/dist-packages/sqlalchemy/engine/default.py", line 436, in do_execute
cursor.execute(statement, parameters)
sqlite3.OperationalError: no such column: authors_songs_1.author_type
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/share/openlp/openlp/plugins/songs/lib/mediaitem.py", line 282, in on_clear_text_button_click
self.on_search_text_button_clicked()
File "/usr/share/openlp/openlp/plugins/songs/lib/mediaitem.py", line 189, in on_search_text_button_clicked
self.display_results_author(search_results)
File "/usr/share/openlp/openlp/plugins/songs/lib/mediaitem.py", line 252, in display_results_author
for song in author.songs:
File "/usr/lib/python3/dist-packages/sqlalchemy/orm/attributes.py", line 239, in __get__
return self.impl.get(instance_state(instance), dict_)
File "/usr/lib/python3/dist-packages/sqlalchemy/orm/attributes.py", line 591, in get
value = self.callable_(state, passive)
File "/usr/lib/python3/dist-packages/sqlalchemy/orm/strategies.py", line 534, in _load_for_state
return self._emit_lazyload(session, state, ident_key, passive)
File "<string>", line 1, in <lambda>
File "/usr/lib/python3/dist-packages/sqlalchemy/orm/strategies.py", line 603, in _emit_lazyload
result = q.all()
File "/usr/lib/python3/dist-packages/sqlalchemy/orm/query.py", line 2300, in all
return list(self)
File "/usr/lib/python3/dist-packages/sqlalchemy/orm/query.py", line 2412, in __iter__
return self._execute_and_instances(context)
File "/usr/lib/python3/dist-packages/sqlalchemy/orm/query.py", line 2427, in _execute_and_instances
result = conn.execute(querycontext.statement, self._params)
File "/usr/lib/python3/dist-packages/sqlalchemy/engine/base.py", line 729, in execute
return meth(self, multiparams, params)
File "/usr/lib/python3/dist-packages/sqlalchemy/sql/elements.py", line 321, in _execute_on_connection
return connection._execute_clauseelement(self, multiparams, params)
File "/usr/lib/python3/dist-packages/sqlalchemy/engine/base.py", line 826, in _execute_clauseelement
compiled_sql, distilled_params
File "/usr/lib/python3/dist-packages/sqlalchemy/engine/base.py", line 958, in _execute_context
context)
File "/usr/lib/python3/dist-packages/sqlalchemy/engine/base.py", line 1160, in _handle_dbapi_exception
exc_info
File "/usr/lib/python3/dist-packages/sqlalchemy/util/compat.py", line 188, in raise_from_cause
reraise(type(exception), exception, tb=exc_tb, cause=exc_value)
File "/usr/lib/python3/dist-packages/sqlalchemy/util/compat.py", line 181, in reraise
raise value.with_traceback(tb)
File "/usr/lib/python3/dist-packages/sqlalchemy/engine/base.py", line 951, in _execute_context
context)
File "/usr/lib/python3/dist-packages/sqlalchemy/engine/default.py", line 436, in do_execute
cursor.execute(statement, parameters)
sqlalchemy.exc.OperationalError: (OperationalError) no such column: authors_songs_1.author_type 'SELECT songs.id AS songs_id, songs.song_book_id AS songs_song_book_id, songs.title AS songs_title, songs.alternate_title AS songs_alternate_title, songs.lyrics AS songs_lyrics, songs.verse_order AS songs_verse_order, songs.copyright AS songs_copyright, songs.comments AS songs_comments, songs.ccli_number AS songs_ccli_number, songs.song_number AS songs_song_number, songs.theme_name AS songs_theme_name, songs.search_title AS songs_search_title, songs.search_lyrics AS songs_search_lyrics, songs.create_date AS songs_create_date, songs.last_modified AS songs_last_modified, songs."temporary" AS songs_temporary, anon_1.authors_1_id AS authors_1_id, anon_1.authors_1_first_name AS authors_1_first_name, anon_1.authors_1_last_name AS authors_1_last_name, anon_1.authors_1_display_name AS authors_1_display_name \nFROM authors_songs, songs LEFT OUTER JOIN (SELECT authors_songs_1.author_id AS authors_songs_1_author_id, authors_songs_1.song_id AS authors_songs_1_song_id, authors_songs_1.author_type AS authors_songs_1_author_type, authors_1.id AS authors_1_id, authors_1.first_name AS authors_1_first_name, authors_1.last_name AS authors_1_last_name, authors_1.display_name AS authors_1_display_name \nFROM authors_songs AS authors_songs_1 JOIN authors AS authors_1 ON authors_1.id = authors_songs_1.author_id) AS anon_1 ON songs.id = anon_1.authors_songs_1_song_id \nWHERE ? = authors_songs.author_id AND songs.id = authors_songs.song_id' (77,)
--- System information ---
Plattform: Linux-3.16.0-24-generic-x86_64-with-Ubuntu-14.10-utopic
Desktop: KDE SC
--- Library Versions ---
Python: 3.4.2
Qt4: 4.8.6
Phonon: 4.7.80
PyQt4: 4.11.2
QtWebkit: 537.21
SQLAlchemy: 0.9.7
SQLAlchemy Migrate: -
BeautifulSoup: 4.3.2
lxml: 3.3.6
Chardet: 2.2.1
PyEnchant: 1.6.6
Mako: 1.0.0
pyICU: -
pyUNO bridge: 4.3
VLC: 2.2.0-pre2 Weatherwax
To manage notifications about this bug go to:
https://bugs.launchpad.net/openlp/+bug/1391638/+subscriptions
References