From amarok-devel Wed Jun 06 09:38:32 2007 From: Maximilian Kossick Date: Wed, 06 Jun 2007 09:38:32 +0000 To: amarok-devel Subject: Re: start of new DB design Message-Id: <200706061138.36714.mkossick () gmx ! de> X-MARC-Message: https://marc.info/?l=amarok-devel&m=118112278201095 MIME-Version: 1 Content-Type: multipart/mixed; boundary="--===============1591067911==" --===============1591067911== Content-Type: multipart/signed; boundary="nextPart17142536.stpM2rL6h4"; protocol="application/pgp-signature"; micalg=pgp-sha1 Content-Transfer-Encoding: 7bit --nextPart17142536.stpM2rL6h4 Content-Type: text/plain; charset="iso-8859-6" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline 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= =20 application restarts. That way you could simply store the changes to the=20 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=20 after a restart of amarok anymore. For example, you have a daap track in th= e=20 playlist. What happens if you restart Amarok and the DAAP was stopped in th= e=20 meantime. CollectionManager won't be able to create a track object for the= =20 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 --nextPart17142536.stpM2rL6h4 Content-Type: application/pgp-signature; name=signature.asc Content-Description: This is a digitally signed message part. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) iD8DBQBGZoCcYOX72Xp6zyERAidmAJ0WiN9pmoHzU7XgIzaNFljlMHqGGwCfYug6 WbTzC6CvUeoomLlr2k4GwLo= =mJq8 -----END PGP SIGNATURE----- --nextPart17142536.stpM2rL6h4-- --===============1591067911== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Amarok-devel mailing list Amarok-devel@kde.org https://mail.kde.org/mailman/listinfo/amarok-devel --===============1591067911==--