start of new DB design

Maximilian Kossick mkossick at gmx.de
Wed Jun 6 11:38:32 CEST 2007


On Wednesday 06 June 2007, Ian Monroe wrote:
> Attached is my first crack at redesigning the database for Amarok 2.0.
> I used the demo version of theKompany.com's Data Architect (though it
> has no limitations that I could see) to do it. Its not the best piece
> of software, but at least it doesn't start going wacky like
> Umbrello...
>
> Known problem: currently the 'trackid' primary key is in the 'urls'
> table, which is why everything is pointed to it. It makes more sense
> to put it in the 'tracks' table, since thats where all the info is.
>
> I added a playlistcurrent table, and a set of tables to handle
> undo/redo. There are two types of tracks that can be in a playlist,
> those that are part of the collection and those that are not. So
> either trackid or externalid in playcurrent goes unused (externalid is
> a FK for the PK of playlistexternal, I just noticed the latter is
> missing.) This creates more complications in the undo/redo system.
>
> Any other ideas on how to handle that?

How about using commands? I don't think we have to support undo/redo across 
application restarts. That way you could simply store the changes to the 
playlist in memory ( maybe limit the number of supported undo/redo steps)

There's a potential problems with tracks in the playlist that don't exist 
after a restart of amarok anymore. For example, you have a daap track in the 
playlist. What happens if you restart Amarok and the DAAP was stopped in the 
meantime. CollectionManager won't be able to create a track object for the 
url in trackForUrl in that case.

> Other then that, I'm looking for some general feedback on what people
> think of it. I left podcast stuff alone, I'm not sure if people think
> it needs some work or not. Amazon is fine and simple as it is.
>
> Peace,
> Ian Monroe

Max

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part.
Url : http://mail.kde.org/pipermail/amarok-devel/attachments/20070606/93557235/attachment.pgp 


More information about the Amarok-devel mailing list