Richard Hughes (hughsient) wrote,

Queuing PackageKit Transactions

I've just completed a big entry off the TODO: queuing transactions that can't be done in parallel. This means you can do RefreshCache and then GetUpdates straight away, and the latter will wait (async of course) for the first to finish. Before we just failed the second transaction which wasn't very nice. Also, when it's sane to do so, we run all queries (that don't write to the disk) in parallel with other tasks.

Grammar, yadda, yadda

The code is lightly tested, but seems to work okay for me. This was a bit of code that I had put off writing for a few weeks as it was always going to be tricky to do right.

There's also code in the daemon now to log transactions to the database that have potentially changed things. This is the first chunk of code needed for the rollback support for some backends, and also allows us to find out "what was updated yesterday because now java doesn't work".

So basically what I'm trying to say is that there is lots of new code in git today, so expect it to break horribly. Please yell on the list if you find anything odd.
  • Post a new comment


    Comments allowed for friends only

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded  

  • 1 comment