Hello again gentlemen!
OK, I'll start by providing you with an update on my attempt to restore my massive 414MB downloadList.zip file. Unfortunately I have not been successful. If I allocate anything more than 3GB in the .vmoptions file, I get an error message when JDownloader starts: "
The JVM could not be started. The maximum heap size (-Xmx) might be too large or an antivirus or firewall tool could block the execution.".
So did some digging and tried a few things:
1. Installing the latest version of Java and restarting my PC.
2. Disabling my antivirus & firewall for the time being (I use Norton). I haven't spoken to their tech support people as yet, but I think I might.
3. Creating a new environmental variable:
3.1. Right-click on "Computer" (or "This PC") and select "Properties".
3.2. "Advanced System Settings"
3.3. On the pop-up window, select the "Advanced" tab, and click the "Environment Variables" button.
3.4. Under "System variables", click the "New..." button.
3.5. In the "Variable name" text field, type "_JAVA_OPTIONS" and in the "Variable value" text field, type "-Xmx4g"
3.6. Restart PC.
4. Changing the Java settings in the Windows Control Panel
4.1. Go to Control Panel
4.2. Click the Java icon.
4.3. On the pop-up window, click the "Java" tab, and then click the "View..." button.
4.4. Under the "User" tab locate the latest installed version of Java (if there are more than 1 Java installation).
4.5. The "Runtime Parameters" value should be blank. Type "-Xmx4g" in there, and click the "OK" button.
4.6. Restart the PC (just in case).
Sadly none of these attempts worked either. And if I allocate anything between 2GB and 3GB in the .vmoptions file, JDownloader does not start at all. No logs are created in the logs folder and nothing shows up in the Windows Event Viewer.
Apologies for the long e-mail, but I think these hints might help someone else who's stuck in my position.
However, if you have any other recommendations of things I can try, please let me know.
About your idea of using a database to store the download information, I think that's a great idea. I think MySQL would work great, because it's platform-independent (at least, I think it is). I'm just not sure if it supports advanced features like stored procedures and SQL functions like Microsoft SQL Server does, but there are ways around that.
If you want, I can start looking into that during the December holidays. I suppose I'll just need to know the various aspects of the downloads that need to be stored (i.e. the URL, the date added, the status (queue, in progress, etc), the total bytes of the download, etc). If such documentation already exists, I'd like to have a look at it.