Bug 187085 - amarok crashes, InnoDB vs MyISAM
Summary: amarok crashes, InnoDB vs MyISAM
Status: RESOLVED DOWNSTREAM
Alias: None
Product: amarok
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Fedora RPMs Unspecified
: NOR crash
Target Milestone: ---
Assignee: Amarok Developers
URL:
Keywords:
: 187142 191110 (view as bug list)
Depends on:
Blocks:
 
Reported: 2009-03-13 23:09 UTC by Juha Tuomala
Modified: 2009-05-04 17:14 UTC (History)
6 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Juha Tuomala 2009-03-13 23:09:09 UTC
Version:            (using KDE 4.2.1)
Installed from:    Fedora RPMs

(gdb) run                                                                                                            
The program being debugged has been started already.                                                                 
Start it from the beginning? (y or n) y                                                                              
Starting program: /usr/bin/amarok                                                                                    
[Thread debugging using libthread_db enabled]                                                                        
[New Thread 0x7ffff7fb4800 (LWP 18310)]                                                                              
[Thread debugging using libthread_db enabled]                                                                        
[New Thread 0x7ffff7fb4800 (LWP 18333)]                                                                              
[New Thread 0x7fffebddf950 (LWP 18339)]                                                                              
[New Thread 0x7fffeaf61950 (LWP 18340)]                                                                              
[New Thread 0x7fffea560950 (LWP 18341)]                                                                              
[New Thread 0x7fffe9b5f950 (LWP 18342)]                                                                              
[New Thread 0x7fffdf251950 (LWP 18343)]                                                                              
[Thread 0x7fffdf251950 (LWP 18343) exited]                                                                           
[New Thread 0x7fffdf251950 (LWP 18344)]                                                                              
[New Thread 0x7fffdd949950 (LWP 18345)]                                                                              
[New Thread 0x7fffdcf48950 (LWP 18346)]                                                                              
[New Thread 0x7fffdc547950 (LWP 18347)]                                                                              
InnoDB: The log sequence number in ibdata files does not match                                                       
InnoDB: the log sequence number in the ib_logfiles!                                                                  
090313 23:54:31  InnoDB: Database was not shut down normally!                                                        
InnoDB: Starting crash recovery.                                                                                     
InnoDB: Reading tablespace information from the .ibd files...                                                        
InnoDB: Restoring possible half-written data pages from the doublewrite                                              
InnoDB: buffer...                                                                                                    
[New Thread 0x7fffdb630950 (LWP 18348)]                                                                              
[Thread 0x7fffdb630950 (LWP 18348) exited]                                                                           
[New Thread 0x7fffdac2f950 (LWP 18349)]                                                                              
[New Thread 0x7fffda22e950 (LWP 18350)]                                                                              
[New Thread 0x7fffd982d950 (LWP 18351)]                                                                              
<unknown program name>(18310)/: Communication problem with  "amarok" , it probably crashed.                          
Error message was:  "org.freedesktop.DBus.Error.NoReply" : " "Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken." "                                                                            

warning: "/usr/lib/debug/usr/lib64/libcurl.so.4.1.1.debug": The separate debug info file has no debug info
Object::connect: No such slot MainWindow::showStatistics()                                                
Object::connect:  (receiver name: 'MainWindow')                                                           
QLayout: Attempting to add QLayout "" to MainWindow "MainWindow", which already has a layout              
link XMLID_7_ hasn't been detected!                                                                       
link XMLID_7_ hasn't been detected!                                                                       
Couldn't resolve property: radialGradient3986                                                             
link XMLID_7_ hasn't been detected!                                                                       
link XMLID_7_ hasn't been detected!                                                                       
Couldn't resolve property: radialGradient3986                                                             
QWidget::insertAction: Attempt to insert null action                                                      
QWidget::insertAction: Attempt to insert null action                                                      
QWidget::insertAction: Attempt to insert null action                                                      
QWidget::insertAction: Attempt to insert null action                                                      
QWidget::insertAction: Attempt to insert null action                                                      
QWidget::insertAction: Attempt to insert null action                                                      
QWidget::insertAction: Attempt to insert null action                                                      
amarok(18333)/kdecore (trader) KServiceTypeTrader::defaultOffers: KServiceTypeTrader: serviceType  "AmarokContext/Animator"  not found                                                                                                    
link XMLID_7_ hasn't been detected!                                                                                  
link XMLID_7_ hasn't been detected!                                                                                  
Couldn't resolve property: radialGradient3986                                                                        
link XMLID_7_ hasn't been detected!                                                                                  
link XMLID_7_ hasn't been detected!                                                                                  
Couldn't resolve property: radialGradient3986                                                                        
link XMLID_7_ hasn't been detected!                                                                                  
link XMLID_7_ hasn't been detected!                                                                                  
Couldn't resolve property: radialGradient3986                                                                        
link XMLID_7_ hasn't been detected!                                                                                  
link XMLID_7_ hasn't been detected!                                                                                  
Couldn't resolve property: radialGradient3986                                                                        
link XMLID_7_ hasn't been detected!                                                                                  
link XMLID_7_ hasn't been detected!                                                                                  
Couldn't resolve property: radialGradient3986                                                                        
link XMLID_7_ hasn't been detected!                                                                                  
link XMLID_7_ hasn't been detected!                                                                                  
Couldn't resolve property: radialGradient3986                                                                        
Object::connect: No such slot FileBrowser::Widget::setDir(QString)                                                   
Object::connect:  (sender name:   'KBookmarkHandler')                                                                
Object::connect:  (receiver name: 'FileBrowser::Widget')                                                             
link XMLID_7_ hasn't been detected!                                                                                  
link XMLID_7_ hasn't been detected!                                                                                  
Couldn't resolve property: radialGradient3986                                                                        
link XMLID_7_ hasn't been detected!                                                                                  
link XMLID_7_ hasn't been detected!                                                                                  
Couldn't resolve property: radialGradient3986                                                                        
[New Thread 0x7fffd0c81950 (LWP 18352)]                                                                              
[New Thread 0x7fffcfe77950 (LWP 18353)]                                                                              
[New Thread 0x7fffcf289950 (LWP 18354)]                                                                              
[New Thread 0x7fffce888950 (LWP 18355)]                                                                              
[Thread 0x7fffce888950 (LWP 18355) exited]                                                                           
[Thread 0x7fffcf289950 (LWP 18354) exited]                                                                           
[Thread 0x7fffcfe77950 (LWP 18353) exited]                                                                           
QPixmap: Invalid pixmap parameters                                                                                   
QPainter::begin: Cannot paint on a null pixmap                                                                       
QPixmap: Invalid pixmap parameters                                                                                   
QPainter::begin: Cannot paint on a null pixmap                                                                       
QPixmap: Invalid pixmap parameters                                                                                   
QPainter::begin: Cannot paint on a null pixmap                                                                       
QPixmap: Invalid pixmap parameters                                                                                   
QPainter::begin: Cannot paint on a null pixmap                                                                       
QPixmap: Invalid pixmap parameters                                                                                   
QPainter::begin: Cannot paint on a null pixmap                                                                       
QDir::exists: Empty or null file name                                                                                
[New Thread 0x7fffcfe77950 (LWP 18356)]                                                                              
[New Thread 0x7fffcf289950 (LWP 18357)]                                                                              
[New Thread 0x7fffce888950 (LWP 18358)]                                                                              
QString::arg: Argument missing: Amarok - No track playing., 0:00                                                     
[New Thread 0x7fffc370f950 (LWP 18359)]                                                                              
[New Thread 0x7fffc2d0e950 (LWP 18360)]                                                                              
========== Starting Statistics Script ==========                                                                     

[RATING_STATISTICS] [SQL] SHOW TABLES


[RATING_STATISTICS] [SQL] SELECT value FROM rating_statistics_config WHERE name="ignore_unrated"


[RATING_STATISTICS] [SQL] SELECT value FROM rating_statistics_config WHERE name="reverse_results"


[RATING_STATISTICS] [SQL] SELECT value FROM rating_statistics_config WHERE name="min_tracks_per_album"


[RATING_STATISTICS] [SQL] SELECT value FROM rating_statistics_config WHERE name="results_limit"


[RATING_STATISTICS] [SQL] SHOW TABLES


[RATING_STATISTICS] [SQL] DELETE FROM rating_statistics_include


[RATING_STATISTICS] [SQL] INSERT INTO rating_statistics_include (SELECT ID FROM amarok.albums)


[RATING_STATISTICS] [SQL] DELETE FROM rating_statistics_include WHERE albumid in (SELECT ALBUMID FROM rating_statistics_exclude)                                                                                                          

========== Finished Statistics Script ==========
[New Thread 0x7fffba2eb950 (LWP 18361)]         
[New Thread 0x7fffb98ea950 (LWP 18362)]         
X Error: BadWindow (invalid Window parameter) 3 
  Major opcode: 20 (X_GetProperty)              
  Resource id:  0xa20000c                       
[Thread 0x7fffce888950 (LWP 18358) exited]      
[Thread 0x7fffcf289950 (LWP 18357) exited]      
[Thread 0x7fffcfe77950 (LWP 18356) exited]      
[New Thread 0x7fffcfe77950 (LWP 18368)]         
QString::arg: Argument missing: Amarok - No track playing., 0:00
[New Thread 0x7fffcf289950 (LWP 18369)]                         
[New Thread 0x7fffce888950 (LWP 18370)]                         
[New Thread 0x7fffb4a2b950 (LWP 18371)]                         
[New Thread 0x7fffb402a950 (LWP 18373)]                         
QString::arg: Argument missing: Amarok - No track playing., 0:00
[flac @ 0x7fffbc0034e0]decode_frame() failed                    
[Thread 0x7fffb4a2b950 (LWP 18371) exited]                      
[New Thread 0x7fffb4a2b950 (LWP 18374)]                         
QGraphicsGridLayout::itemAt: invalid row, column 0, 1           
QGraphicsGridLayout::itemAt: invalid row, column 0, 1           
QDir::exists: Empty or null file name                           
[Thread 0x7fffb402a950 (LWP 18373) exited]                      
[Thread 0x7fffb4a2b950 (LWP 18374) exited]                      
QString::arg: Argument missing: Amarok - No track playing., 0:00
QString::arg: Argument missing: Amarok - No track playing., 0:00
QString::arg: Argument missing: Amarok - No track playing., 0:00
[New Thread 0x7fffb4a2b950 (LWP 18393)]                         
QString::arg: Argument missing: Amarok - No track playing., 0:00
QString::arg: Argument missing: Amarok - No track playing., 0:00
QDir::exists: Empty or null file name                           
QString::arg: Argument missing: Amarok - No track playing., 0:00
[flac @ 0x7fffbc0033d0]invalid coding type                      
[flac @ 0x7fffbc0033d0]decode_frame() failed                    
[flac @ 0x7fffbc0033d0]FRAME HEADER not here                    
[flac @ 0x7fffbc0033d0]unsupported channel assignment 6 (channels=2)
[flac @ 0x7fffbc0033d0]decode_frame() failed                        
[flac @ 0x7fffbc0033d0]FRAME HEADER not here                        
[flac @ 0x7fffbc0033d0]invalid subframe padding                     
[flac @ 0x7fffbc0033d0]decode_frame() failed                        
[flac @ 0x7fffbc0033d0]FRAME HEADER not here                        
[flac @ 0x7fffbc0033d0]FRAME HEADER not here                        
[flac @ 0x7fffbc0033d0]decode_frame() failed                        
[flac @ 0x7fffbc0033d0]FRAME HEADER not here                        
[flac @ 0x7fffbc0033d0]invalid subframe padding                     
[flac @ 0x7fffbc0033d0]decode_frame() failed                        
[flac @ 0x7fffbc0033d0]FRAME HEADER not here                        
[flac @ 0x7fffbc0033d0]decode_frame() failed                        
[flac @ 0x7fffbc0033d0]FRAME HEADER not here                        
[flac @ 0x7fffbc0033d0]FRAME HEADER not here                        
[Thread 0x7fffb4a2b950 (LWP 18393) exited]                          
QString::arg: Argument missing: Amarok - No track playing., 0:00    
QString::arg: Argument missing: Amarok - No track playing., 0:00    
[New Thread 0x7fffb4a2b950 (LWP 18394)]                             
[Thread 0x7fffb4a2b950 (LWP 18394) exited]                          

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7ffff7fb4800 (LWP 18333)]    
0x000000386e274dfc in EngineController::slotAboutToFinish (this=0x657ab0)
    at /usr/src/debug/amarok-2.0.2/src/EngineController.cpp:567          
567         m_currentTrack->finishedPlaying( 1.0 ); // If we reach aboutToFinish, the track is done as far as we are concerned.                                                                                                           
(gdb) bt                                                                                                             
#0  0x000000386e274dfc in EngineController::slotAboutToFinish (this=0x657ab0)                                        
    at /usr/src/debug/amarok-2.0.2/src/EngineController.cpp:567                                                      
#1  0x000000386e275fa5 in EngineController::qt_metacall (this=0x657ab0, _c=QMetaObject::InvokeMetaMethod,            
    _id=<value optimized out>, _a=0x7fffffffc310)                                                                    
    at /usr/src/debug/amarok-2.0.2/x86_64-redhat-linux-gnu/src/EngineController.moc:152                              
#2  0x0000003881356764 in QMetaObject::activate (sender=0x657eb0, from_signal_index=<value optimized out>,           
    to_signal_index=12, argv=0x0) at kernel/qobject.cpp:3031                                                         
#3  0x0000003a01420760 in Phonon::MediaObjectPrivate::_k_aboutToFinish (this=0x658050)
    at /usr/src/debug/phonon-4.3.0/phonon/mediaobject.cpp:428
#4  0x0000003a014213d6 in Phonon::MediaObject::qt_metacall (this=0x657eb0, _c=QMetaObject::InvokeMetaMethod,
    _id=<value optimized out>, _a=0x7fffffffc480)
    at /usr/src/debug/phonon-4.3.0/x86_64-redhat-linux-gnu/phonon/moc_mediaobject.cpp:136
#5  0x0000003881356764 in QMetaObject::activate (sender=0x666260, from_signal_index=<value optimized out>,
    to_signal_index=4, argv=0x0) at kernel/qobject.cpp:3031
#6  0x00007ffff0b3b4cd in Phonon::Xine::MediaObject::needNextUrl (this=0x666260)
    at /usr/src/debug/phonon-4.3.0/xine/mediaobject.cpp:627
#7  0x00007ffff0b3df95 in Phonon::Xine::MediaObject::qt_metacall (this=0x666260, _c=QMetaObject::InvokeMetaMethod,
    _id=<value optimized out>, _a=0x7fffe4189820)
    at /usr/src/debug/phonon-4.3.0/x86_64-redhat-linux-gnu/xine/mediaobject.moc:158
#8  0x00000038813513d5 in QObject::event (this=0x666260, e=0x7fffe417f320) at kernel/qobject.cpp:1155
#9  0x00000039fcb828dd in QApplicationPrivate::notify_helper (this=0x64ff60, receiver=0x666260, e=0x7fffe417f320)
    at kernel/qapplication.cpp:3803
#10 0x00000039fcb8a68a in QApplication::notify (this=0x7fffffffcfb0, receiver=0x666260, e=0x7fffe417f320)
    at kernel/qapplication.cpp:3768
#11 0x000000386b204f3b in KApplication::notify (this=0x7fffffffcfb0, receiver=0x666260, event=0x7fffe417f320)
    at /usr/src/debug/kdelibs-4.2.1/kdeui/kernel/kapplication.cpp:307
#12 0x0000003881342391 in QCoreApplication::notifyInternal (this=0x7fffffffcfb0, receiver=0x666260,
    event=0x7fffe417f320) at kernel/qcoreapplication.cpp:587
#13 0x000000388134302a in QCoreApplication::sendEvent () at ../../src/corelib/kernel/qcoreapplication.h:209
#14 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x6116d0)
    at kernel/qcoreapplication.cpp:1198
#15 0x000000388136ab13 in QCoreApplication::sendPostedEvents () at ../../src/corelib/kernel/qcoreapplication.h:214
#16 postEventSourceDispatch (s=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:205
#17 0x000000387723779b in g_main_dispatch () at gmain.c:2144
#18 IA__g_main_context_dispatch (context=0x649520) at gmain.c:2697
#19 0x000000387723af6d in g_main_context_iterate (context=0x649520, block=1, dispatch=1, self=<value optimized out>)
    at gmain.c:2778
#20 0x000000387723b12b in IA__g_main_context_iteration (context=0x649520, may_block=1) at gmain.c:2841
#21 0x000000388136a79f in QEventDispatcherGlib::processEvents (this=0x644930, flags=<value optimized out>)
    at kernel/qeventdispatcher_glib.cpp:319
#22 0x00000039fcc1328f in QGuiEventDispatcherGlib::processEvents (this=0x0, flags=<value optimized out>)
    at kernel/qguieventdispatcher_glib.cpp:198
#23 0x0000003881340cb2 in QEventLoop::processEvents (this=<value optimized out>, flags=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece.
)
    at kernel/qeventloop.cpp:143
#24 0x0000003881340e3d in QEventLoop::exec (this=0x7fffffffcf60, flags=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece.
) at kernel/qeventloop.cpp:194
---Type <return> to continue, or q <return> to quit---
#25 0x00000038813432ed in QCoreApplication::exec () at kernel/qcoreapplication.cpp:845
#26 0x0000000000404037 in main (argc=1, argv=0x7fffffffe1c8) at /usr/src/debug/amarok-2.0.2/src/main.cpp:130
(gdb)
Comment 1 Juha Tuomala 2009-03-13 23:09:31 UTC
This is very repeatable.
Comment 2 Juha Tuomala 2009-03-13 23:16:29 UTC
running on nfs4 $HOME.
Comment 3 Seb Ruiz 2009-03-14 01:54:36 UTC
> InnoDB: The log sequence number in ibdata files does not match
> InnoDB: the log sequence number in the ib_logfiles!
> 090313 23:54:31  InnoDB: Database was not shut down normally!

Amarok's embedded mysql database does _not_ support the InnoDB backend, only MyISAM. The cause of this is most likely an incorrectly compiled mysql package, so please ask your distribution.
Comment 4 Juha Tuomala 2009-03-14 11:51:01 UTC
Ack, thanks for the information. A related question is that I was using a lot the kde3 version with postgresql server (actual hw server running pgsql). 
- How can i get that data into new kde4 amarok?
- Will the pgsql support be re-added into upcoming releases?

Postgresql support would be highly appreciated.
Comment 5 Kevin Funk 2009-03-14 18:21:50 UTC
*** Bug 187142 has been marked as a duplicate of this bug. ***
Comment 6 Rex Dieter 2009-03-14 18:56:56 UTC
I check the downstream issue(s), but curious, does amarok have any buildtime or runtime checks for MyISAM functionality?  (If not, why not)?
Comment 7 Juha Tuomala 2009-03-14 19:00:21 UTC
http://amarok.kde.org/blog/archives/812-MySQL-in-Amarok-2-The-Reality.html
> So from the beginning of A2 development we knew we wanted just one database.
> So this leaves us with -- as you guessed -- MySQL. 

Grrrrrr.
Comment 8 Kevin Kofler 2009-03-14 19:12:50 UTC
Amarok does not specify any storage engine for the database tables, so it gets whatever is the default in that particular MySQL build.

You have to explicitly request ENGINE = MYISAM during the CREATE TABLE if you aren't willing to support anything else, see:
http://dev.mysql.com/doc/refman/5.0/en/myisam-storage-engine.html
(But even that will do absolutely nothing to fix the problem for all those users who already got their tables created with InnoDB.)

Reopening, not a downstream issue.
Comment 9 Rex Dieter 2009-03-14 19:19:01 UTC
nod, looks like some additional mysql config love (or further explanation or justification) is required.
Comment 10 Kevin Kofler 2009-03-14 19:20:13 UTC
Existing databases need to be converted using:
ALTER TABLE foo ENGINE = MYISAM;

See:
http://dev.mysql.com/doc/refman/5.0/en/alter-table.html
Comment 11 Rex Dieter 2009-03-14 19:33:37 UTC
adjusting summary to match issue at hand (InnoDB vs MyISAM table types)
Comment 12 Juha Tuomala 2009-03-14 20:30:28 UTC
Just a side note, after talking with both #postgresql and #amarok folks, it looks like there will never be pgsql support anymore in amarok. They are not willing to maintain the db abstraction layer inside the amarok anymore. :-/
Comment 13 Kevin Kofler 2009-03-14 20:40:31 UTC
About PostgreSQL no longer being supported and not being planned to be supported, that's old news! Can we please focus on the actual bug?
Comment 14 Juha Tuomala 2009-03-14 20:46:27 UTC
(In reply to comment #13)
> About PostgreSQL no longer being supported and not being planned to be
> supported, that's old news! Can we please focus on the actual bug?

In my world, there wouldn't be this Amarok bug. My focus is in Juk already.
Comment 15 Jonathan Thomas 2009-04-30 20:50:49 UTC
*** Bug 191110 has been marked as a duplicate of this bug. ***
Comment 16 Matt Whitlock 2009-05-03 11:34:13 UTC
(In reply to comment #9)
> nod, looks like some additional mysql config love (or further explanation or
> justification) is required.

To reduce memory consumption, startup time, and disk usage, MySQL Embedded can be told to disable the BerkDB and InnoDB storage engines:

cat <<EOF > ~/.kde/share/apps/amarok/my.cnf
[amarokserver]
skip-bdb
skip-innodb
default-storage-engine=MyISAM
EOF

InnoDB is better for high concurrency access, but a single user using an embedded MySQL database really has no need for it.
Comment 17 Rex Dieter 2009-05-04 17:14:51 UTC
Interesting, my reading of MySqlEmbeddedCollection.cpp is that it indeed does use MYISAM everwhere, including options:
--default-table-type=MYISAM
--defaultstorage-engine=MYISAM

and testing on my f11 box does create MYISAM tables by default, which was not the case for f10.

Looks to be a downstream issue after all (and/or mysql-5.0.x is just fsck'd)