solus-project / ferryd

Fast, safe and reliable transit for the delivery of software updates to users.

Home Page:https://solus-project.com/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Actually implement this

ikeydoherty opened this issue · comments

Long story short I'm pulling me hair out with how long each repo settle is taking. This needs implementing immediately ..

In order of Things To Make It All Work:

  • Add basic .eopkg add support (cache into pool and repo storage)
  • Add eopkg-index.xml write support (stable sort + constant time emission)
  • Add components.xml distribution.xml groups.xml merge support
  • Add compression and validation files (.xz .sha1sum)
  • Hook in deltas
  • Throw the entire repo at it and ensure constant time is still true
  • Now add the monitor
  • Profit $$$

Final thought before hitting the pillow:

Might be worth having two worker pools, the low priority delta pool and a high priority reentrant pool for upload processing, to limit the main queue purely to atomic operations

OK I added a dependency based scheduler instead of lame-reentrants.

We're gonna have to implement our own delta handling as it turns out eopkg will not allow us to produce .delta.eopkg in parallel ..

done. yet to profit. also, stop talking to yourself, it's weird.