Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Martin Jansa <martin.jansa@gmail.com>
To: "Lu, Lianhao" <lianhao.lu@intel.com>
Cc: "poky@yoctoproject.org" <poky@yoctoproject.org>,
	openembedded-core@lists.openembedded.org
Subject: Re: [poky] RFC: design of network based PR service
Date: Thu, 28 Apr 2011 11:22:33 +0200	[thread overview]
Message-ID: <20110428092232.GA3259@jama.jama.net> (raw)
In-Reply-To: <C10D3FB0CD45994C8A51FEC1227CE22F2311C1C837@shsmsx502.ccr.corp.intel.com>

[-- Attachment #1: Type: text/plain, Size: 3440 bytes --]

On Thu, Apr 28, 2011 at 03:08:03PM +0800, Lu, Lianhao wrote:
> Hi Guys,
> 
> Here is the design of network based PR service, please help to review and 
> give you comment. Thanks a lot!

Hi,

looks good, just wondering if we can use the same mechanism for
LOCALCOUNT numbers in SRCPV, we can even use same table if we prefix
first column ie LOCALCOUNT_${PN} and CheckSum in 2nd column would be
actuall git hash (from SRCREV or HEAD for AUTOREV) or 2nd table with
similar structure.

But it wont work very well if one builder is using AUTOREV and another
one isn't, but that can be resolved by allowing only trusted builders
with same configuration (wrt AUTOREV) to send such tuples.

Do we have at least 2 groups of "users".
1) trusted which increments PR when hash is not found
2) public which can query PR for given hash (not sure what they should
   do if hash is not found)

Regards,

> By changing the BB_SIGNATURE_HANDLER from "basic" to "basichash", the 
> task checksum will be in the stamp file, so this implies the end of PR bumps 
> since whenever a recipe change happens, the checksum of the appropriate 
> tasks will change so everything depends on that tasks will automatically got 
> rebuilt. (The checksum mechanism was introduced here at https://lists.yoctoproject.org/pipermail/yocto/2011-March/001157.html).
> 
> But there is one piece of building block missing there. Because the package 
> feeds needs the PR bumps because some relevant fields in the package file(i.e. 
> Version field in .ipk and .deb file, Release field in .rpm file) need it so the 
> generated package feeds can be used to upgrade/install new packages in the 
> user's linux distribution. So RP proposed this network based PR service at 
> https://lists.yoctoproject.org/pipermail/poky/2011-January/002123.html. 
> 
> Each embedded linux distribution entity using Yocto to build their distributions 
> should have a single network based PR service. Multiple build sources could send 
> the tuple (PN, task checksum) to this network based PR service. If the PR service 
> finds the corresponding (PN, task checksum) in its database, it will return the PR 
> values to the client. If not, it will bump the PR for that PN and return the new value 
> to the client. The returned value will only goes into the generated package files.
> 
> The PR network service will be a separate process other than bitbake, using the 
> XMLPRC to communicate with the client(i.e. bitbake process) and sqlite3 as the 
> backend database. The table definition would be something like
> (
>   PN TEXT,
>   CheckSum TEXT PRIMARY KEY,
>   PR INT
> )
> 
> Because different type of package files are generated in different tasks, (e.g.
> do_package_write_ipk, do_package_write_rpm), we will use the task checksum 
> of do_package to ask for PR value, so all the package files will have the same PR value.
> 
> To be backward compatible, if the PR value is already set in the recipe, the final PR value 
> that goes into the package files will be "PR in recipe.PR returned by the service".
> 
> ========================
> Lianhao Lu
> OTC SSG, Intel APAC R&D Ltd.
> 86-21-61167139
> 
> 
> 
> 
> 
> _______________________________________________
> poky mailing list
> poky@yoctoproject.org
> https://lists.yoctoproject.org/listinfo/poky

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

  parent reply	other threads:[~2011-04-28  9:25 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <C10D3FB0CD45994C8A51FEC1227CE22F2311C1C837@shsmsx502.ccr.corp.intel.com>
2011-04-28  7:15 ` [poky] RFC: design of network based PR service Koen Kooi
2011-04-28  9:22 ` Martin Jansa [this message]
     [not found]   ` <4DB9859D.7070609@windriver.com>
     [not found]     ` <1304024672.2171.396.camel@vorpal>
2011-04-28 21:23       ` Mark Hatle
2011-04-28 22:02         ` Chris Larson
2011-04-29  5:28         ` Lu, Lianhao
2011-05-02 22:40           ` Khem Raj

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20110428092232.GA3259@jama.jama.net \
    --to=martin.jansa@gmail.com \
    --cc=lianhao.lu@intel.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=poky@yoctoproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox