Internship at CERN

From VCGR Wiki

Jump to: navigation, search

Contents


AT CERN

 PROJECT GOAL:  Translate LFC mappings used by EGEE to resource namespace service (RNS) resources associated with WS-Addressing standard

To Do List

WEEK 0 (6.16-6.20)

  Goal: Get set up and plan out project

Mon 6.16 - Arrival and registration start

Tue 6.17 - Paperwork: registration complete, badge acquired, safety course completed, bike form submitted; Initial project info: code base acquired

Wed 6.17 - Initial discussion; Paperwork: account/email setup, laptop network connection acquired

Thur 6.18 - Genesis II installed; background reading; project planning

Fri 6.19 - Examine RNS specs; examine genii rns; answer ques; email questions/arrange discussion;

WEEK 1 (6.23-6.28)

  Goal: Clearly define and start first steps; get familiar with programming environment; generate skelaton/fill in logic for add service to test WS-Addressing with Axis2

Mon 6.23 - explore Axis2/C; learn how to create skelaton for RNS web service that uses WS-addressing with Axis2/C; phone call with Mark

Tue 6.24 - continued figuring out how to generate skelaton of RNS service; Human Computation Speaker; downloaded Genii source

Wed 6.25 - debugged WSDL2C generation for skelaton of RNS service

Thur 6.26 - generated skelaton of RNS service; started figuring out how to compile generated skelaton; debugged compiling errors

Fri 6.27 - finished debugging compiling errors; deployed RNS service; started creating client to consume service; turned on WS-Addressing module

WEEK 2 (6.30-7.04)

  Goal Finish test client for RNS service;  start getting familiar with how to connect to LFC via C code

Mon 6.30 - investigated how to create payload for client using AXIOM framework

Tue 7.01 - worked on test client for RNS service

Wed 7.02 - Creation Steps SUMUP so far; added logic to skelaton using auto-generated structures to populate test response; debugged server/client errors

Thur 7.03 - found root cause of server/client errors

Fri 7.04 - submitted bug report; proofread RNS specs

WEEK 3 (7.07-7.11)

  Goal Connect to LFC via C code using skelaton framework

Mon 7.07 - started examining LFC code locations

Tue 7.08 - started examining LFC code

Wed 7.09 - create flow of LFC code interactions

Thur 7.10 - interacted with LFC on my computer via commandline

Fri 7.11 - wrote some code to interact with LFC

WEEK 4 (7.14-7.19)

  Goal Add LFC code to Axis C code framework

Mon 7.14 - successfully run code that interacted with LFC

Tue 7.15 - code program that gets list of directory entries

Wed 7.16 - make list call from Axis2/C skelaton code; backup to AFS

Thus 7.17 - wraped list call in SOAP msg; added logic for making add call; started logic for remove call

Fri 7.18 - finished logic for making remove call

WEEK 5 (7.21-7.25)

  Goal Update RNS implementation; try to interoperate with Genii; create ByteIO skelaton; start ByteIO logic impl; start presentation

Mon 7.21 - proofread new RNS documents

Tue 7.22 - finished proofreading new RNS docs; discussed next steps

Wed 7.23 - modify RNS ops to treat LFNs as directories and replicas as individual files in the RNS space

Thur 7.24 - finish RNS op modifications for dealing with LFNs and replicas

Fri 7.25 - debugged modifications

WEEK 6 (7.28-8.01)

  Goal interoperate with Genii; start presentation

Mon 7.28 - finished RNS op modifications; installed Java; setup Genii development in Eclipse

Tue 7.29 - created Genii client to send rns requests to EGEE for interop; debugged attempted interop attempts

Wed 7.30 - successfully interoped for add, list, and remove between Genii client and LHC with no security

Thur 7.31 - add logic for remaining rns ops; outlined presentation; named service

Fri 8.1 - draft presentation; consider ByteIO WSDL

WEEK 7 (8.04-8.08)

  Goal 
give final presentation; write final report; wrap up departure paperwork; 
save code

Mon 8.04 - prepared presentation

Tue 8.05 - presented presentation; started wrap-up procedure

Wed 8.06 - field trip to EPFL in Lausanne

Thur 8.07 - transferred documents to CVS; worked on final report

Fri 8.08 - cleaned up virtual and office workspace; finished final report; checked out

POST CERN - Fall 2008

September

9.12 (Fri) - get SNARL running (2 hours)

9.18 (Thu) - start ByteIO framework creation (1 hour)

9.24 (Wed) - finish ByteIO framework creation; start test client creation (3 hours)

9.25 (Thur) - finish test client creation (2 hours)

October

10.02 (Thur) - start filling in skeleton service (4 hours)

10.03 (Fri) - debugged skeleton service and attempted move to VM (5 hours)

10.07 (Tue) - continue debugging skeleton service; installed newer Axis2/C version (1.5.1); attempted WSDL validation (with Altova) and found one error (4 hours)

10.09 (Thur) - continued debugging skeleton service/WSDL validation (2 hours)

10.10 (Fri) - continued debugging and finally emailed axis2/c developers list about the 1.5.0 bug (5 hours)

10.23 (Thur) - no response from Axis2/c community; emailed ByteIO group; restarting debugging process (2.5 hours)

10.24 (Fri) - debugging broken service skeleton code for transfer information type; rewrote client for rbyteio testing since CERN machine is down (3 hours)

10.25 (Sat) - hand fixed broken service skeleton code for transfer information type! (4 hours)

10.29 (Wed) - reviewed LFC API and their matching to ByteIO; met with Mark (1.5 hours)

10.31 (Fri) - developed end-to-end test scenario for read op; met with Mark regarding implementation issues; read about accessing WSA elements in Axis2/c service (3 hours)

November

11.03 (Mon) - researched how to acquire WSA reference parameters from message header (3 hours)

11.04 (Tue) - figured out how to add WSA reference parameters to message header but not sure if properly; figured out how to use commandline tcpmon; figured out how to get message header in server but did not figure out how to get the ref params (5 hours)

11.05 (Wed) - asked axis2/c user group and devs for help extracting ref params; used address to pass location of lfc and get data.

11.17 (Mon) - got everything up and running again; extracted PATH of entry successfully from WS-Addressing header :D !!! (1 hour)

11.18 (Tue) - started LFC back up on pcitgd; moved service/client code over to pcitgd; got axis2/c v1.5 working on pcitgd along with services; used extracted path to get SURL of file (5 hours)

11.19 (Wed) - investigated details of SURL and TURL usage; started coding for SURL to get TURL (1.5 hours)

11.20 (Thur) - finished coding SURL to get TURL; extracted read parameters from read req; errors on testing (2 hours)

11.21 (Fri) - debugged errors; coded GFAL file reading implementation using TURL; did not test with LCG as still no access to SEs; implemented passing of test read data back to client; tested and debugged; (6 hours)

December

12.02 (Tue) - setting up Cygwin to use X windows; trying to install genesis CERN side to run Fuse (3 hours)

12.03 (Wed) - solved Fuse problems; solved BDII problems; ran successful READ using SABLE (4 hours)

12.04 (Thur) - got instructions for interop; interop try 1; submitting abstract

POST CERN - Spring 2009

January

1.18 (Sun) - data backup and code refamiliarization

February

02.04 (Wed) - start SABLE report

02.16 (Mon) - identifying porttype implementations in EPR metadata; recreating SNARL and SABLE interop; linked SNARL EPR into Genii RNS

02.17 (Tue) - got ls and cd operations working on linked in SNARL/SABLE EPRs into Genii RNS

02.18 (Wed) - try FUSE; try timing (port forwarding?); get cp/cat working; ; practice talk; paper writing

02.20 (Fri) - fixing SABLE gfal_open errors

02.25 (Wed) - running tests on VMs

PCITGD CleanUp - final file overview, commit, and system cleanup