Certification Report for patch 3691
- Certifier: Alejandro Álvarez Ayllón
- SA3 Partner: CERN
General Background
This patch is an incremental upgrade of
FTS to version 2.2.3. It fixes bugs
#59955
and
#60095
.
I had to add a dependency on
patch #3405
(
FTS 2.2.2), which depends also on patch
#2786
(
FTS 2.2.1).
Both patches were still in "Certificated" state when I began the certification, so I had problems applying #3691 over a production version, until Gianni and me realized that we needed to install both patches before.
I installed the production version in vtb-generic-85.cern.ch, then I applied the patches #2786 and #3405 in order to get the version 2.2.2 working. I executed the
FTS tests to check the clean installation worked, and then I applied the last patch.
General Tests
Basic tests
START Mon Jan 25 11:36:32 CET 2010
------------------------------------------------
FTS HOST: vtb-generic-85.cern.ch
*Running BASIC tests
Executing FTS-basic
FTS-basic PASSED
Executing FTS-services
FTS-services PASSED
Executing FTS-channels
FTS-channels PASSED
Executing FTS-submission
FTS-submission PASSED
Executing FTS-channel-add
FTS-channel-add PASSED
Executing FTS-channel-audit
FTS-channel-audit PASSED
Executing FTS-channel-drop
FTS-channel-drop PASSED
Executing FTS-channel-managers
addManager: SOAP fault: SOAP-ENV:Server.generalException - (<ns2:exceptionName>org.glite.data.transfer.ExistsException</ns2:exceptionName><ns3:hostname xmlns:ns3="http://xml.apache.org/axis/">vtb-generic-85.cern.ch</ns3:hostname>)
FTS-channel-managers PASSED
Executing FTS-channel-set
FTS-channel-set PASSED
Executing FTS-channel-setvolimit
FTS-channel-setvolimit PASSED
Executing FTS-vomanagers
*CHECKSUM tests skipped
*SPACE tests skipped
------------------------------------------------
END Mon Jan 25 11:39:51 CET 2010
TEST_PASSED
Checksum tests
Using ./FTS-certconfig
Log files will be stored in /tmp/logs_100126095802
START Tue Jan 26 09:58:02 CET 2010
------------------------------------------------
FTS HOST: vtb-generic-85.cern.ch
*BASIC tests skipped
*Running CHECKSUM tests
Using channel: CERN-CERN
Executing FTS-submission-with-checksum-1.sh
FTS-submission-with-checksum-1.sh PASSED
Executing FTS-submission-with-checksum-2.sh
FTS-submission-with-checksum-2.sh PASSED
Executing FTS-submission-with-checksum-3.sh
FTS-submission-with-checksum-3.sh PASSED
*SPACE tests skipped
------------------------------------------------
END Tue Jan 26 10:06:54 CET 2010
TEST_PASSED
SRM Space tokens
Using ./FTS-certconfig
Log files will be stored in /tmp/logs_100129153231
START Fri Jan 29 15:32:31 CET 2010
------------------------------------------------
FTS HOST: vtb-generic-85.cern.ch
*BASIC tests skipped
*CHECKSUM tests skipped
*Running SPACE tests
Executing FTS-srmspace
FTS-srmspace PASSED
Executing FTS-srmspace2
FTS-srmspace2 PASSED
*GRIDFTP tests skipped (EXPERIMENTAL)
------------------------------------------------
END Fri Jan 29 15:34:17 CET 2010
TEST_PASSED
Specific Bugs
Reproducing this bug is very difficult, so it was closed as fixed not certified.
This bug is a regression of
bug #33641
, so Akos suggested to use the same test (test_33641.c).
However, this test gave us problems, so we had to ask Zsolt for help, who had to fix some bugs in the test code.
Once solved this problem, I followed the steps proposed by Zsolt, which are documented in
Proxy Delegation problem in FTS 2.2.
At the end, I were able to prove that the corruption error was fixed.
From the UI:
export WEB_SERVICE_ENDPOINT=https://vtb-generic-85.cern.ch:8443/glite-data-transfer-fts/services/gridsite-delegation
glite-delegation-destroy -v -s $WEB_SERVICE_ENDPOINT
glite-delegation-init -v -s $WEB_SERVICE_ENDPOINT
glite-delegation-init -v -s $WEB_SERVICE_ENDPOINT
glite-delegation-destroy -v -s $WEB_SERVICE_ENDPOINT
test-glite-delegation-bug-33641 -v -f -s $WEB_SERVICE_ENDPOINT
Note: From the second call to glite-delegation-init we obtain the credential ID.
From the
FTS:
sqlplus _db_user_/_db_passwd_@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=int11r2-v.cern.ch)(PORT=10121))(ADDRESS=(PROTOCOL=TCP)(HOST=int11r1-v.cern.ch)(PORT=10121))(LOAD_BALANCE=yes)(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=lcg_fts_int11r.cern.ch)))
Note: The connection string was extracted from site-info.def
After that, from the SQLPlus prompt
set long 10000
set pagesize 999
spool /tmp/proxy
select proxy from t_credential where dlg_id='745ce8242d7ed43e9da91f7834315f9990980175';
spool off
I cleaned the spool file, removing the SQL commands and spare empty spaces. And the last step:
openssl x509 -in /tmp/proxy -text -noout
[...]
Modulus (512 bit):
00:aa:ea:f8:f6:90:6f:41:38:28:5d:e4:13:e2:1e:
7d:6e:4a:b4:ad:1c:56:c7:88:0b:f4:5b:de:99:67:
0d:72:a3:52:49:78:ae:e8:ce:32:31:5b:fd:b7:6a:
1d:75:7b:a3:d8:46:c0:a3:e8:e0:62:7a:5d:f8:d8:
09:43:d0:dc:89
[...]
openssl rsa -in /tmp/proxy -text -noout
[...]
modulus:
00:aa:ea:f8:f6:90:6f:41:38:28:5d:e4:13:e2:1e:
7d:6e:4a:b4:ad:1c:56:c7:88:0b:f4:5b:de:99:67:
0d:72:a3:52:49:78:ae:e8:ce:32:31:5b:fd:b7:6a:
1d:75:7b:a3:d8:46:c0:a3:e8:e0:62:7a:5d:f8:d8:
09:43:d0:dc:89
[...]
Both are the same, so fix certified.