View Issue Details

IDProjectCategoryView StatusLast Update
0012266MMW v4Synchronizationpublic2019-10-10 12:54
ReporterLudek Assigned To 
Status closedResolutionfixed 
Product Version4.1.5 
Target Version4.1.25Fixed in Version4.1.25 
Summary0012266: iOS5+ sync: Read device content rather from MediaLibrary.sqlitedb
DescriptioniTunesCDB file is quite outdated although still used by iTunes as DB file for device content. Nevertheless starting from iOS5 the device itself reads its content mainly from MediaLibrary.sqlitedb.

So MM should also read content from MediaLibrary.sqlitedb rather than from (almost deprecated?) iTunesCDB file to ensure that correct content will be presented in MM insterface even if iTunesCDB is missing or is only partial.
Additional InformationMMK-129-42607
TagsNo tags attached.
Fixed in build1893


parent of 0012814 resolvedLudek iOS8: Tracks deleted in iPhone music app are still visible by iTunes and MM 
related to 0012396 closedLudek iPhone content not read when iTunesCDB is larger than 4194304 bytes 
related to 0012806 resolvedLudek iOS8: In some cases audio doesn't match title on iPhone 
related to 0016017 closedLudek Sync: Iphone7 iOS 13.1.2 do not finish Scanning device 



2014-12-01 22:03

developer   ~0041251

Last edited: 2014-12-01 22:07

I added the code to read the contents from MediaLibrary.sqlitedb, but I finally just backed up the code and did not apply it so far for several reasons:

1) Durning the implementation I found that iTunes still prefers the old iTunesCDB file to read the device contents, namely if the file is missing or corrupted then iTunes does not see the device content

2) MediaLibrary.sqlitedb is really used rather for storing internal device contents and its DB structure is changed with every new version of iOS in any way, while iTunesCDB structure is almost unchanged for years

3) I wanted to change it because of the user from ticket VOY-630-62036 , but finally it shown another issue, there was bug in MediaMonkey that it can't read iTunesCDB larger than 2^22 = 4194304 bytes , this issue was fixed as 0012396

The original code for this issue is backed up in SVN, but not applied due to the reasons noted above and high risk of a regression

Moving target to 5.0


2019-10-08 14:54

developer   ~0054981

Last edited: 2019-10-08 14:59

We should evaluate this as possible remedy of GNK-420-16733

It could be implemented with a fallback:
i.e. whenever reading from MediaLibrary.sqlite fails for whatever reason (e.g. new SQL structure) then MM will read the tracks from iTunesCDB (as currently)


2019-10-08 15:34

developer   ~0054983

Last edited: 2019-10-08 17:03

A safe way to implement this for 4.1.25 (and remedy of GNK-420-16733) would be to read the tracks from the *.SQLite only when track count from *CDB is lower.

=> Implemented in 1892 and merged to MM5


2019-10-08 22:23

developer   ~0054984

Verified 1892

No regressions while testing with iPod Touch 4G

Close after tests in MM5


2019-10-09 08:09

developer   ~0054986

Last edited: 2019-10-09 08:10

The remedy does not work for GNK-420-16733 , there was still a bug.

Fixed in 1893 and supplied updated DLL to the user to confirm the fix...


2019-10-10 12:54

developer   ~0055000

Fix confirmed by the user and me, closing.