View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0014150 | MMW v4 | Synchronization | public | 2017-03-27 21:52 | 2017-07-25 16:58 |
Reporter | marek | Assigned To | |||
Priority | immediate | Severity | major | Reproducibility | unable to reproduce |
Status | closed | Resolution | fixed | ||
Product Version | 4.1.15 | ||||
Target Version | 4.1.16 | Fixed in Version | 4.1.16 | ||
Summary | 0014150: MMW syncs with deprecated paths over USB | ||||
Description | I do not have any MMW logs but I do see that mmstore.db.synced contains paths with old form of paths: /storage/9016-4EF8/ ... instead of 9016-4EF8: The version of MMW is OK. I do see that paths in profile settings are correct. Ludek, could you please verify the functionality? | ||||
Additional Information | Profile settings: <BiDirFolder>9016-4EF8:Music <BiDirFolder>9016-4EF8:Music/Audiobooks <BiDirFolder>9016-4EF8:Music/Classical <BiDirFolder>9016-4EF8:Music/Podcasts Inserted media: id:null,type:0,title:I'll Be Here Awhile (Acoustic Version),album:null,artists:null,path:/storage/9016-4EF8/Android/data/com.ventismedia.android.mediamonkey/files/Music/311/Enlarged to Show Detail 2/06 311 - I'll Be Here Awhile (Acoustic Version).mp3,hash:null,mime:audio/mpeg,size:4984832,syncSize:null,albumArt:/storage/9016-4EF8/Android/data/com.ventismedia.android.mediamonkey/files/Music/311/Enlarged to Show Detail 2/albumart.jpg | artists:[311] | composers:[null - 311(0/0)] | genres:[Alternative,null] | album:Album: id:822,title:Enlarged to Show Detail 2,artists:null,type:0,albumart:9016-4EF8:Music/311/Enlarged to Show Detail 2/albumart.jpg | album artists:null | ||||
Tags | No tags attached. | ||||
Fixed in build | 1835 | ||||
|
MMW takes the prefix _only_ from storageInfo.xml , so there must be invalid storageInfo.xml presented on the device. Debug log or the storageInfo.xml would show more. |
|
In build 1.3.0.686 All storageInfo.xml files are attached to log. |
|
So with new BETA release of MMA, I do have all storageInfo files. But they are all correct: primary:MediaMonkey/files/storageInfo.xml <?xml version='1.0' encoding='UTF-8' standalone='yes' ?> <storages version="1.3" storageGuid="6d37a254.0.cb7a5754-dad1-4a1b-903a-5b14f2e8eeb8"> <storage> <title>Internal storage</title> <path>/storage/emulated/0</path> <prefix>primary:</prefix> <info>MediaMonkey/files/storageInfo.xml</info> <type>read-write</type> <current>1</current> </storage> <storage> <title>SD card</title> <path>/storage/9C33-6BBD</path> <prefix>9C33-6BBD:</prefix> <info>Android/data/com.ventismedia.android.mediamonkey/files/files/storageInfo.xml</info> <type>read-write limited</type> <current>0</current> <appFolder>/Android/data/com.ventismedia.android.mediamonkey/files</appFolder> <folder>Android/data/com.ventismedia.android.mediamonkey/files</folder> </storage> </storages> 9C33-6BBD:MediaMonkey/files/storageInfo.xml <?xml version='1.0' encoding='UTF-8' standalone='yes' ?> <storages version="1.3" storageGuid="6d37a254.1.66465b17-b0c1-4cc8-8e55-ee2d0c7f4161"> <storage> <title>Internal storage</title> <path>/storage/emulated/0</path> <prefix>primary:</prefix> <info>MediaMonkey/files/storageInfo.xml</info> <type>read-write</type> <current>0</current> </storage> <storage> <title>SD card</title> <path>/storage/9C33-6BBD</path> <prefix>9C33-6BBD:</prefix> <info>MediaMonkey/files/storageInfo.xml</info> <type>read-write</type> <current>1</current> </storage> </storages> 9C33-6BBD:Android/data/com.ventismedia.android.mediamonkey/files/files/storageInfo.xml <?xml version='1.0' encoding='UTF-8' standalone='yes' ?> <storages version="1.3" storageGuid="6d37a254.1.66465b17-b0c1-4cc8-8e55-ee2d0c7f4161"> <storage> <title>Internal storage</title> <path>/storage/emulated/0</path> <prefix>primary:</prefix> <info>MediaMonkey/files/storageInfo.xml</info> <type>read-write</type> <current>0</current> </storage> <storage> <title>SD card</title> <path>/storage/9C33-6BBD</path> <prefix>9C33-6BBD:</prefix> <info>Android/data/com.ventismedia.android.mediamonkey/files/files/storageInfo.xml</info> <type>read-write limited</type> <current>1</current> <appFolder>/Android/data/com.ventismedia.android.mediamonkey/files</appFolder> <folder>Android/data/com.ventismedia.android.mediamonkey/files</folder> </storage> </storages> I do not have any user's email but here are really a lot of occurences from different devices. But I am not able to get MMW log. |
|
It seems that MMW is taking the prefix from the <path> instead of <prefix> (like if version would be < 1.3). I used the storageInfo above and couldn't replicate with current MMW (4.1.15) Couldn't it be just that the users are still using an older MMW version? Based on 0013247 the new handling was implemented in 4.1.12.1790 , so any lower version would exhibit this issue. |
|
Yes, one half of the crashlogs are from older versions of MMW and half is from newer. We still have 5 these logs per day. But you are right and I forgot to check the MMW version when posting the note above...so it might be from older version. I will add stronger verification to next MMA build to completely terminate USB sync if the version doesn't match to avoid this issue for older MMW. Notification about necessary update has been already displaying. So now I have storageInfo.xml where MMW was 4.1.14.1812: primary:MediaMonkey/files/storageInfo.xml <?xml version='1.0' encoding='UTF-8' standalone='yes' ?> <storages version="1.3" storageGuid="cb32f767.0.d2219007-c1a8-471b-8b35-6adae1699754"> <storage> <title>Internal storage</title> <path>/storage/emulated/0</path> <prefix>primary:</prefix> <info>MediaMonkey/files/storageInfo.xml</info> <type>read-write</type> <current>1</current> </storage> <storage> <title>SD card</title> <path>/storage/307F-E4BE</path> <prefix>307F-E4BE:</prefix> <info>Android/data/com.ventismedia.android.mediamonkey/files/files/storageInfo.xml</info> <type>read-write limited</type> <current>0</current> <appFolder>/Android/data/com.ventismedia.android.mediamonkey/files</appFolder> <folder></folder> </storage> </storages> 307F-E4BE:Android/data/com.ventismedia.android.mediamonkey/files/files/storageInfo.xml <?xml version='1.0' encoding='UTF-8' standalone='yes' ?> <storages version="1.3" storageGuid="cb32f767.1.d1c81530-f5f6-4b56-8e1c-0aecfa24fd94"> <storage> <title>Internal storage</title> <path>/storage/emulated/0</path> <prefix>primary:</prefix> <info>MediaMonkey/files/storageInfo.xml</info> <type>read-write</type> <current>0</current> </storage> <storage> <title>SD card</title> <path>/storage/307F-E4BE</path> <prefix>307F-E4BE:</prefix> <info>Android/data/com.ventismedia.android.mediamonkey/files/files/storageInfo.xml</info> <type>read-write limited</type> <current>1</current> <appFolder>/Android/data/com.ventismedia.android.mediamonkey/files</appFolder> <folder></folder> </storage> </storages> 307F-E4BE:MediaMonkey/files/storageInfo.xml.mmw <?xml version='1.0' encoding='UTF-8' standalone='yes' ?> <storages version="1.2" storageGuid="cb32f767.1.d1c81530-f5f6-4b56-8e1c-0aecfa24fd94"> <storage> <title>Internal storage</title> <path>/storage/emulated/0</path> <uid>primary</uid> <info>/storage/emulated/0/MediaMonkey/files/storageInfo.xml</info> <type>read-write</type> <current>0</current> </storage> <storage> <title>SD card</title> <path>/storage/3561-3134</path> <uid>3561-3134</uid> <info>/storage/3561-3134/Android/data/com.ventismedia.android.mediamonkey/files/files/storageInfo.xml</info> <type>read-write limited</type> <current>1</current> <appFolder>/storage/3561-3134/Android/data/com.ventismedia.android.mediamonkey/files/</appFolder> <folder>/storage/3561-3134/</folder> </storage> </storages> 307F-E4BE:MediaMonkey/files/storageInfo.xml <?xml version='1.0' encoding='UTF-8' standalone='yes' ?> <storages version="1.3" storageGuid="cb32f767.1.d1c81530-f5f6-4b56-8e1c-0aecfa24fd94"> <storage> <title>Internal storage</title> <path>/storage/emulated/0</path> <prefix>primary:</prefix> <info>MediaMonkey/files/storageInfo.xml</info> <type>read-write</type> <current>0</current> </storage> <storage> <title>SD card</title> <path>/storage/307F-E4BE</path> <prefix>307F-E4BE:</prefix> <info>Android/data/com.ventismedia.android.mediamonkey/files/files/storageInfo.xml</info> <type>read-write limited</type> <current>1</current> <appFolder>/Android/data/com.ventismedia.android.mediamonkey/files</appFolder> <folder></folder> </storage> </storages> So storageInfo.xml.mmw is problematic because it is still version 1.2. MMW prefers reading from .xml.mmw files? MMA doesn't write to them so that might be that cause. |
|
And this is another similar case: primary:MediaMonkey/files/storageInfo.xml <?xml version='1.0' encoding='UTF-8' standalone='yes' ?> <storages version="1.3" storageGuid="9888d9483930553836.0.c579bc6b-b986-4548-a672-74442807f555"> <storage> <title>Internal storage</title> <path>/storage/emulated/0</path> <prefix>primary:</prefix> <info>MediaMonkey/files/storageInfo.xml</info> <type>read-write</type> <current>1</current> </storage> <storage> <title>SD card</title> <path>/storage/5FDA-651E</path> <prefix>5FDA-651E:</prefix> <info>MediaMonkey/files/storageInfo.xml</info> <type>read-write</type> <current>0</current> </storage> </storages> 5FDA-651E:MediaMonkey/files/storageInfo.xml.mmw <?xml version='1.0' encoding='UTF-8' standalone='yes' ?><storages version="1.0" storageGuid="9c29b2cf-31d5-447f-a770-a2d71daa0716.1.5f6392d4-eba2-4103-ac6a-c1d112533f7d"></storages> 5FDA-651E:MediaMonkey/files/storageInfo.xml <?xml version='1.0' encoding='UTF-8' standalone='yes' ?> <storages version="1.3" storageGuid="9c29b2cf-31d5-447f-a770-a2d71daa0716.1.5f6392d4-eba2-4103-ac6a-c1d112533f7d"> <storage> <title>Internal storage</title> <path>/storage/emulated/0</path> <prefix>primary:</prefix> <info>MediaMonkey/files/storageInfo.xml</info> <type>read-write</type> <current>0</current> </storage> <storage> <title>SD card</title> <path>/storage/5FDA-651E</path> <prefix>5FDA-651E:</prefix> <info>MediaMonkey/files/storageInfo.xml</info> <type>read-write</type> <current>1</current> </storage> </storages> |
|
It occurs on Nexus devices (have seen on Nexus 7 and Nexus 5X) with MMW 4.1.15.1830 where the storageInfo.xml looks fine. primary:MediaMonkey/files/storageInfo.xml <?xml version='1.0' encoding='UTF-8' standalone='yes' ?> <storages version="1.3" storageGuid="8ae1c92d-d819-44cf-974d-08d52d6dc6c7.0.a06d5538-f6ac-4925-95b4-1ef843693fe8"> <storage> <title>Internal storage</title> <path>/storage/emulated/0</path> <prefix>primary:</prefix> <info>MediaMonkey/files/storageInfo.xml</info> <type>read-write</type> <current>1</current> </storage> </storages> |
|
MMW takes the MMW version (storageInfo.xml.mmw) only if the MMA's version (storageInfo.xml) cannot be downloaded from _any_ location. Once it downloads the MMA's version then it immediately updates also the MMW version (based on the newest MMA version). So it looks that there is a MTP issue again and MMW simply cannot download any MMA version. MMW log would confirm it. Another idea I could think of is that MMW could somehow fail to pair the Phone and SD card memories (thinking that it is not from the same phone). But this wouldn't be the case for Nexus device that has only Phone memory. MMW log would definetely shed some light on it. Maybe you could add the same request for MMW log like in case of the HTTP 202 error in the past? But I am afraid that it is most probably just the MTP refresh issue nearly after MMA 1.2 > MMA 1.3 update where (nearly after upgrade) the storageInfo.xml seen over USB isn't the actual storageInfo.xml in Android or is inaccessible from Windows? |
|
MMA 1.3.0.697 is now backward compatible with old path too. What will occur when MMW reads XML in version 1.2 and MMA DB contains paths in new form (document ids)? This might be workarounded on MMW side. |
|
Yes, this could be probably workarounded on MMW side too ('/storage/emulated/0' auto-exchanging for 'primary:' and the SD card's auto-exchanging) \. Assigned to me to add the workaround to MMW (note that we have already added similar workaround 0013283 that informs user when MMW has trouble getting the storageInfo.xml file and doesn't show the profile in MMW at all -- to prevent from duplicate profile creation). Not sure why this workaround did not work for the users, MMW log would be useful anyway. |
|
The workaround implemented in build 4.1.16.1835 and merged to 5.0.0.2066 Test note: To test the workaround you can edit storageInfo.xml and change version attribute from "1.3" to "1.2" -- this will force MMW to extract the prefix in the old form. |
|
Verified 1835 |