[Planetlab-devel] Re: API merge

Thierry Parmentelat thierry.parmentelat at sophia.inria.fr
Tue Aug 28 17:42:12 EDT 2007


Tony - Thanks for this first answer
The reason why I've gone down this road for nodenetworks too is related 
to nodenetwork settings.

Another set of differences that I should have commented is about the API 
contents:
I had deprecated GetNodeConfFile - or whatever name this used to have - 
and am using only GetBootMedium instead
I haven't seen many comments on this, but somehow you guys seem to have 
by-passed the API call and have arranged for the web pages to call 
bootcustom.sh directly. This sounds like a really strange idea, I expect 
you have reasons to do so, and would like to hear them. We use 
GetBootMedium extensively in the web pages, as well as in the automated 
tests that we daily run to check node installation and basic slice creation.
Also I have a GetPlcRelease API call that relies on /etc/myplc-release 
that is updated by my build.

I'll publish a complete set of differences once I have checked and 
tagged this move.
-- Thierry

Tony Mack wrote:
> Hi Thierry,
>
> We initially began using views because they helped simplify 
> accessing/aggregating data from foreign tables and casting timestamps 
> into ints. A node_networks view was never created because the 
> NodeNetwork object doesn't have any attributes stored in foreign 
> tables or any timestamps. With this in mind, creating a view for this 
> type of object wouldn't be any more beneficial than querying the table 
> directly.
>
> On the other hand, the EventObjects object does have attributes from 
> foreign tables and a timestamp attribute. Using a view for this type 
> of object would simplify EventObjects.py and make it more homogeneous 
> with the rest of the code. I will merge this in sometime soon.
>
> I will take a look at the rest of your version of the api.
>
>
>
> Thierry Parmentelat wrote:
>> Hi Tony
>>
>> I've done a first draft of this merge thing, and would like your 
>> input on a couple issues
>> My tentative version is at
>> http://svn.one-lab.org/new_plc_api/trunk/
>> that you can download into a local workdir with
>> svn co http://svn.one-lab.org/new_plc_api/trunk new_plc_api_1lab
>>
>> I've done a full diff and will provide you with detailed comments
>> In the meanwhile, can you please check especially
>> PLC/EventObjects.py
>> PLC/NodeNetworks.py
>>
>> as far as I can tell, for some reason, you've decided to stop using 
>> the table/view paradigm for these objects,
>> I'd prefer to stick to my versions because they are simpler and more 
>> homogeneous with the rest of the code (using views for fetching 
>> objects is used for all other objects), unless your implementation 
>> has drastic performance improvements.
>> can you please comment on that ?
>>
>> I'm building with this tonight and will test more thoroughly tomorrow
>> In any case I'll end up with a new tag under my subversion codebase
>> Then you'll have the option to adopt that or not, or to start 
>> negotiating - I'd rather that we converge quickly, so the sooner you 
>> have remarks the faster we can reach a fixed point.
>>
>> -- Thierry -- in a rush



More information about the Devel mailing list