Comments (9)
Have you tried disabling "Intelligent Sorting" in Settings -> Content
? You should be able to do this before it crashes on a fresh install that's still taking awhile to load music @fungs. This would allow me to confirm what I think it is, that apparently the name comparison code that I do have really does require me to ensure that the comparison and equality results are 100% consistent.
from auxio.
@OxygenCobalt, I can confirm that the intelligent sorting (excluding articles etc.) option seems to cause this issue. I disabled it on a fresh install, not running into that issue and enabled it again, which caused the same error.
from auxio.
Alright, this implies something I feared would happen. The issue is that intelligent name comparison plays a tad loose with the sorting contract. If you have a name like "FooBar" and "Foo Bar", the comparator will consider those equal, but the actual equality check won't. I thought this was okay after reading the comparator contract documentation, but apparently not. Thanks for reporting this @fungs.
from auxio.
Might have figured out the issue in #810. More or less I was badly abusing Java comparators and violating their invariants, causing a crash with very specific data sequences. Care to try this out @fungs?
from auxio.
I will give it a try, probably this week!
from auxio.
Update? @fungs
from auxio.
@OxygenCobalt I cleared the cache and data and verified, that the error still exists with the standard version. Then I installed the debug version and got exactly the same error, again. I can reproduce it by clearing cache and data of the app and giving permission to access media at first startup. It scans all media, the loads the media and then shows a message that it could not load the music. I have the option between "try again" and "more". When I select "more", I get the debug log in the first post. When I hit "try again", the music database is empty. When I then restart the app with the empty database, the loading is much faster and the music is there without getting any error.
Could it be that it just has problems parsing a (defective) music file?
I re-did the whole thing many times and also observed that in rare cases I don't get the error at all!
from auxio.
Sorry for not responding @fungs. Have you tried 3.5.2? It turns out there were two points at which the sorting invariants were violated, 3.5.1 fixed one and 3.5.2 fixed the second.
from auxio.
I tried the version 3.5.0-debug you provided. Now I cannot reproduce it with the current 3.5.2. It may be fixed then. I can re-open this ticket, if it happens again.
Thanks!!!
from auxio.
Related Issues (20)
- Small split-screen UI mode HOT 6
- MIDI support HOT 1
- Missing bottom margin of player in landscape mode HOT 4
- [UX] Scroll bar for playlists, albums, artists, genres HOT 2
- Unable to load music from folder HOT 1
- Wrong "Now playing" state HOT 1
- Artist and albums splitting for no reason. HOT 1
- Chosing a music folder error HOT 2
- Change non-repeat icon in music player notification HOT 3
- Quickly moving queue items breaks queue display HOT 4
- Exclude / Include Music folders does not work HOT 5
- [Feature] Sort by "random" option HOT 1
- Propose playlist filename as playlist name when importing playlist HOT 1
- Extreme lag on 3.5.0 HOT 33
- Add a sleep timer HOT 1
- Show repeat and shuffle in android auto
- Add some e-mail/website/contact/feedback handle from within the app HOT 1
- Bookmark timestamps on the songs' timeline UI, so that user can get back quickly to banger moments :100: HOT 3
- Disable repeat when playing an entire album/artist HOT 1
- Offer "Folders" view tab when "Include folders" option is used HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from auxio.