Comments (14)
I actually identified the cause of the bug. A recent change in my scrobble display listview style has caused the listview to disable its virtualization. Basically what happens is that all 50000 items are loaded at once and the application can't keep up. I think I can work around this, I just need some days figuring it out.
from last.fm-scrubbler-wpf.
I can reproduce the bug, I'll try to find a fix but I actually have no idea what the problem is.
The csv file is parsed fine, but for some reason it can't be displayed.
from last.fm-scrubbler-wpf.
I got some spare time today and did a bit of testing with versions 1.18, 1.19. Maybe we can shed some light on the issue.
1.18
What works:
I can successfully parse the CSV file from @lucianasena in 1.18.0.0 and all the scrobbles can be displayed in the list. It shows 52198 rows.
What doesn't work
When I click in “select all” the program becomes unresponsive.
I tested a smaller version of the file, with 970 rows. It parsed the file very quick and it also managed to select all the files. It also scrobbled all files successfully in a test account.
- Is there a maximum amount of rows that the program can process?
- Do you have any idea what is the reason for the program to crash with 50 thousand rows but parse and scrobble them properly with less than one thousand?
- I couldn't find a log file in this version.. is there one?
Also when I opened the CVS file in Libre Office in order to make it smaller, it asked me which character set, I chose UTF-8, but it had another by default, Western Europe ISP 8859. Is this relevant?
1.19
What works
Nothing yet
What doesnt work
The program cant parse the CSV file anymore. It gets stuck in Reading CSV file…
However, even though the program becomes unresponsive and eventually shuts itself down, the log file says Successfully parsed CSV file. Parsed 52198 rows
.
- Why?
from last.fm-scrubbler-wpf.
Firstly, thanks for putting your time and effort into this.
Knowing it works in 1.18 is good information. I'll try to find out what changed and caused the bug. (I could already rule out external package versions)
About your problems with 1.18: When you click "Select All" it just takes a while to select all of the records. I might be able to optimize this part, but it just takes a while for that many rows. The more rows the longer the "Select All" process will take. And yes, there is no logging in 1.18. I'm not 100% sure about encoding but I want to make encoding settable in the future anyways so it shouldnt be a problem. (I already tested all encodings and the csv file could still not be displayed in 1.20)
About 1.19: The csv file is actually parsed successfully, it just can't be displayed. When I removed the control that displayed the rows the program did not get unresponsive. Apparently something changed between 1.18 and 1.19 that causes this bug. I'll have to look further into it.
from last.fm-scrubbler-wpf.
I have to give an update again, as I continued testing:
All versions (1.18, 1.19 and 1.20) can parse and scrobble a file that has up to 5000 rows. I tried different amount of rows for all these versions, and eventually they crash, I don't know yet the reason, but 5000 rows is a number that all of them can parse. It could also be my VM.. maybe you can try a bigger file if you run Windows and see if you don't have any sort of memory restrictions.
Because there is a limitation on 2800 scrobbles per day, a workaround would be to directly add in the documentation that if the CVS file has more than those rows, that users should first split the file into smaller chunks using for example filesplit as you suggested, and that would work in all the versions of your software, doing one chunk a day.
Unfortunately for me, as I have been scrobbling since 2006, that would mean that I would end up importing my last.fm scrobbles in 50 days ( •_•)
from last.fm-scrubbler-wpf.
I think I fixed it. Could you try with this attached version please?
Debug.zip
from last.fm-scrubbler-wpf.
That works very smooth. Good job!
from last.fm-scrubbler-wpf.
I'm not using a VM, but I'm having exactly the same problem. I'm also using Windows 10.
from last.fm-scrubbler-wpf.
Please upload the csv files you are using
from last.fm-scrubbler-wpf.
Please upload the csv files you are using
I uploaded mine: link
from last.fm-scrubbler-wpf.
I am pretty sure it has something to do with malformed rows of the csv file. Probably some encoding bullshit. Can't seem to find a fix tho :(
from last.fm-scrubbler-wpf.
Ok :(
from last.fm-scrubbler-wpf.
Thank you! Although, when I try to scrobble my 52192 tracks, it gives an error saying that these tracks would break the daily scrobble cap. Hahaha, I didn't even know that existed.
from last.fm-scrubbler-wpf.
Its there since a few versions. Some people scrobbled so many tracks that it caused outages of the last.fm server. The last.fm dev team contacted me directly and made me implement a scrobble limit ^^
from last.fm-scrubbler-wpf.
Related Issues (20)
- Error while scrobbling selected tracks: Cached HOT 5
- Track and album swapped and other errors HOT 10
- Link to last.fm album using double encoding/leads to 404
- issue while trying to scrobble tracks with parentheses HOT 3
- iPod plays not detected HOT 1
- Error: failed to login or authenticate
- Plans to make scrubbler compatible with Apple Music on Win 11? HOT 8
- File Parse JSON Scrobbler not scrobbling the date the song played. HOT 1
- Failed to Login or Authenticate HOT 3
- Minor: Track/Artist/Album links in iTunes Scrobbler show last played piece but don't work HOT 2
- iTunes "scrobbling now" not active once the song reaches 50% scrobbling HOT 1
- Last.fm tracklist occasionally not working
- Add JSON splitter HOT 1
- Fatal Error: Null object could not be converted to a value type
- Error while scrobbling: Cached HOT 1
- Application icon HOT 1
- Randomly Dropped Scrobbles when Listening to Music in iTunes HOT 8
- Error while Scrobbling Selected Tracks: Cached HOT 1
- Beta-1.29 does't work on win7. HOT 1
- Scrobble time doesn't stay 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 last.fm-scrubbler-wpf.