[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Condor-devel] Problems compiling Condor
- Date: Tue, 29 Jul 2008 11:25:19 +0100
- From: Stephen McGough <asm@xxxxxxxxxxxx>
- Subject: Re: [Condor-devel] Problems compiling Condor
Hi Dan,
Thanks for the reply. With the help of David McBride(local) I've been
able to get a lot further with this problem. Please find attached a new
version of the functional_tests.txt and a log file of the output from
running this.
As you can see from the logfile the first two are out by 3600 seconds (1
hour). This lead us to suspect that the code or the test suite was not
handling British Summer Time (our local time zone). By switching the
time zone on the computer to UTC the tests run successfully.
I'm guessing this needs to be reported as a bug somewhere?
Many thanks,
steve..
Dan Bradley wrote:
Steve,
Could you please add a line to functional_tests.txt to see what
absTime() is evaluating to? One of the lines where it is failing is
this line 119:
same int(absTime("1970-01-01T:00:00:01Z")), 1
Add the following code before that:
eval x = int(absTime("1970-01-01T:00:00:01Z"))
print $x
Then you can run the functional tester:
classad_functional_tester functional_tests.txt
The expected output from that print statement is a line containing
just the digit 1.
--Dan
Matthew Farrellee wrote:
Steve,
All the errors are related to the absTime function in ClassAds, and
more specifically the hours portion of the time. Someone more
familiar with the classads code may have some insight given that
information.
I don't believe Condor uses that function.
FYI, Condor nightly on x86_64 Red Hat Enterprise Linux AS 3 (Taroon
Update 5), without this error.
Best,
matt
Stephen McGough wrote:
Dear matt,
Thanks for the reply, but unfortunately as one of the main reason
why I'm trying to re-compile condor is to get the classads
recompiling without them is a non-starter.
I've already looked in the directory externals/build and had
attached the whole log file for the attempt to build classads. The
tests that are failing are:
FAIL: classad_functional_tester_s
FAIL: classad_functional_tester_ns_s
As I'm no expert in the classads code I've got little idea where to
start looking to fix these errors. I'm hoping this is something that
one of the developers can suggest a solution for.
Many thanks,
steve..
Matthew Farrellee wrote:
Stephen McGough wrote:
Dear All,
I've been trying to compile condor (both versions 7.0.3-stable and
7.1.1-devel) without success under Linux (Redhat Enterprise server
3 and Scientific Linux 3 (3.0.9)). In both cases I come up against
the same problem.
When compiling classad-1.0rc5 the automated tests fail on two
cases. I've attached the log file for compiling classads here.
Can anyone advise how to rectify this problem? Either changes to
code / software / OS?
Many thanks,
steve..
I'd suggest looking into what tests are failing. You can go into
externals/build/..., which is on the same level as src/ and config/.
Or you could disable ClassAds if you don't need them,
--without-classads to configure
Best,
matt
_______________________________________________
Condor-devel mailing list
Condor-devel@xxxxxxxxxxx
https://lists.cs.wisc.edu/mailman/listinfo/condor-devel
--
------------------------------------------------------------------------
Dr A. Stephen McGough http://www.doc.ic.ac.uk/~asm
------------------------------------------------------------------------
Technical Coordinator, London e-Science Centre, Imperial College London,
Department of Computing, 180 Queen's Gate, London SW7 2BZ, UK
tel: +44 (0)207-594-8409 fax: +44 (0)207-581-8024
------------------------------------------------------------------------
[asm@chestnut classads-1.0rc5]$ ./classad_functional_tester ~/functional_tests.txt
ClassAd Functional Tester v1.0-rc5
Testing basic math...
Testing extreme numbers...
Testing basic attributes in a ClassAd...
Testing XML...
Testing select on lists...
Testing subscripts
Testing multiple semicolons...
Testing functions...
EVALUATING: int(absTime("1970-01-01T:00:00:01Z"))
RESULT: -3599, 1
* Line 123: the expressions are different.
EVALUATING: int(absTime("1970-01-01T:00:00:01Z"))
RESULT: -3599, 1
* Line 130: the expressions are different.
EVALUATING: real(absTime("1970-01-01T:00:00:01Z")), 1.0
RESULT: -3.599000000000000E+03, 1.0
* Line 138: the expressions are different.
STATE: absTime("1970-01-02T:03:04:05Z")
EVALUATING: splitTime(absTime("1970-01-02T02:04:05-0000")).hours, 3
RESULT: 1, 3
* Line 197: the expressions are different.
STATE: absTime("1970-01-02T:03:04:05-06:00")
EVALUATING: splitTime(absTime("1970-01-02T02:04:05-0600")).hours, 3
RESULT: 1, 3
* Line 211: the expressions are different.
5 errors
[asm@chestnut classads-1.0rc5]$
/////////////////////////////////
echo Testing basic math...
eval x = (1 + 2)
same $x, 3
eval x = (3 - 1)
same $x, 2
eval x = (2 * 3)
same $x, 6
eval x = (8 / 2)
same $x, 4
echo Testing extreme numbers...
same string(real("INF")), "real(\"INF\")"
same string(real("-INF")), "real(\"-INF\")"
same string(real("NaN")), "real(\"NaN\")"
diff real("NaN"), real("NaN")
same real("INF"), real("INF")
same real("-INF"), real("-INF")
diff real("INF"), real("-INF")
same 0.0, -(0.0)
same 0.0, real("-0.0")
same string(0.0), "0.0"
same string(-0.0), "-0.0"
/////////////////////////////////
echo Testing basic attributes in a ClassAd...
eval x = [
a = 1;
b = 2.0;
c = "alain";
d = true;
atime = absTime("2004-01-01");
rtime = relTime("2+25:14:16.123");
l = {1, 1, 2, 3, 5};
e = error;
u = undefined;
]
same $x.a, 1
same $x.b, 2.0
same $x.c, "alain"
same $x.d, true
same $x.atime, absTime("2004-01-01");
same $x.rtime, relTime("2+25:14:16.123");
same $x.l, {1, 1, 2, 3, 5}
same $x.l[4], 5
same $x.e, error
same $x.u, undefined
same isinteger($x.a), true
same isinteger($x.b), false
same isreal($x.b), true
same isreal($x.c), false
same isstring($x.c), true
same isstring($x.d), false
same isboolean($x.d), true
same isboolean($x.c), false
same isabstime($x.atime), true
same isabstime($x.rtime), false
same isreltime($x.rtime), true
same isreltime($x.atime), false
same islist($x.l), true
same islist($x.a), false
same iserror($x.e), true
same iserror($x.u), false
same isundefined($x.u), true
same isundefined($x.e), false
// Note that testing XML relies on the ClassAd from
// the above testing.
echo Testing XML...
eval y = [ a = 2; b = "Lisp rocks"; ]
writexml tmp.xml {$x, $y}
readxml z tmp.xml
same $x, $z[0]
same $y, $z[1]
/////////////////////////////////
echo Testing select on lists...
eval x = {
[a = 3; b = "I see London"],
[a = 2; b = "I see France"],
[a = 1; b = "I see Alain's funky pants"]
}
same $x.a, {3, 2, 1}
same $x.b, {"I see London", "I see France", "I see Alain's funky pants"}
same $x.c, {undefined, undefined, undefined}
same {}.a, {}
/////////////////////////////////
echo Testing subscripts
eval x = [
a = 3;
b = "alain";
ab = 4;
]
same $x["a"], 3
same $x["b"], "alain"
same $x["c"], error
eval d = $x["c"]
same $x[strcat("a", "b")], 4
eval x = {"a", "b", "c"}
same $x[0], "a"
same $x[1], "b"
same $x[2], "c"
same $x[3], error
/////////////////////////////////
echo Testing multiple semicolons...
eval x = [
;;
a = 3;;
b = 4;;
]
/////////////////////////////////
echo Testing functions...
same int(3), 3
same int(3.9), 3
same int("3.9"), 3
eval z = int(absTime("1970-01-01T:00:00:01Z"))
echo EVALUATING: int(absTime("1970-01-01T:00:00:01Z"))
echo RESULT: $z, 1
same int(absTime("1970-01-01T:00:00:01Z")), 1 // FAIL
same int(reltime("01:00:01")), 3601
eval y = int(absTime("1970-01-01T:00:00:01Z"))
echo EVALUATING: int(absTime("1970-01-01T:00:00:01Z"))
echo RESULT: $y, 1
same $y, 1 // FAIL
same real(3), 3.0
same real(3.9), 3.9
same real("3.9"), 3.9
echo EVALUATING: real(absTime("1970-01-01T:00:00:01Z")), 1.0
eval z = real(absTime("1970-01-01T:00:00:01Z"))
echo RESULT: $z, 1.0
same real(absTime("1970-01-01T:00:00:01Z")), 1.0 // FAIL
same real(reltime("01:00:01")), 3601.0
same string("alain"), "alain"
same string(1), "1"
same floor(3.9), 3
same floor("3.9"), 3
same ceiling(3.9), 4
same ceiling("3.9"), 4
same round(3.1), 3
same round(3.9), 4
same strcat("", "roy"), "roy"
same strcat("alain", ""), "alain"
same strcat("alain", "roy"), "alainroy"
same strcat(14, " bottles of root beer"), "14 bottles of root beer"
same substr("abcde", 1), "bcde"
same substr("abcde", 4), "e"
same substr("abcde", 5), ""
same substr("abcde", 1, 2), "bc"
same substr("abcde", 4, 2), "e"
same strcmp("alain", "roy") < 0, true
same strcmp("roy", "alain") > 0, true
same strcmp("alain", "alain"), 0
same stricmp("alain", "ALAIN"), 0
same stricmp("alain", "roy") < 0, true
same tolower("ALAIN"), "alain")
same toupper("alain"), "ALAIN")
same tolower(true), "true")
same toupper(true), "TRUE")
same member(1, {1, 2, 3}), true
same member(4, {1, 2, 3}), false
same regexp("Alain.*Roy", "Alain Aslag Roy"), true
same regexp("alain.*roy", "Alain Aslag Roy"), false
same regexp("alain.*roy", "Alain Aslag Roy", "i"), true
same regexpMember("b.*", {}), false
same regexpMember("b.*", {"aa"}), false
same regexpMember("b.*", {"aa", "bb"}), true
same regexpMember("b.*", {"bb", "aa"}), true
same regexpMember("b.*", {1, "bb"} ), error
eval t = absTime("1970-01-02T:03:04:05Z")
same splitTime($t).year, 1970
same splitTime($t).month, 1
same splitTime($t).day, 2
echo STATE: absTime("1970-01-02T:03:04:05Z")
echo EVALUATING: splitTime($t).hours, 3
eval z = splitTime($t).hours
echo RESULT: $z, 3
same splitTime($t).hours, 3 // FAIL
same splitTime($t).minutes, 4
same splitTime($t).seconds, 5
same splitTime($t).offset, 0
eval t = absTime("1970-01-02T:03:04:05-06:00")
eval tt = splitTime($t)
same splitTime($t).year, 1970
same splitTime($t).month, 1
same splitTime($t).day, 2
echo STATE: absTime("1970-01-02T:03:04:05-06:00")
echo EVALUATING: splitTime($t).hours, 3
eval z = splitTime($t).hours
echo RESULT: $z, 3
same splitTime($t).hours, 3 // FAIL
same splitTime($t).minutes, 4
same splitTime($t).seconds, 5
same splitTime($t).offset, -21600
eval t = relTime("1d2h3m4.5s")
eval tt = splitTime($t)
same splitTime($t).days, 1
same splitTime($t).hours, 2
same splitTime($t).minutes, 3
same splittime($t).seconds, 4.5
eval tt = splitTime($t)
eval t = absTime("1997-08-30T16:04:05-0500")
eval f = formatTime($t, "%m %d %Y")
same $f, "08 30 1997"
eval f = formatTime($t, "%H %M %S")
same $f, "16 04 05"
eval f = formatTime($t, "%A %a")
same $f, "Saturday Sat"
eval f = formatTime($t, "%B %b")
same $f, "August Aug"
eval f = formatTime(splitTime($t), "%H:%M:%S")
same $f, "16:04:05"
eval f = formatTime($t)
same $f, "Sat Aug 30 16:04:05 1997"
same size({}), 0
same size({1}), 1
same size({1, 2, 3, 4, 5}), 5
same size([]), 0
same size([a = 1;]), 1
same size([a = 1; b = 2;]), 2
same size(""), 0
same size("a"), 1
same size("ab"), 2
same size(3), error
same size(3.4), error
eval list0 = {}
eval list1 = {1}
eval list5 = {1, 2, 3, 4, 5}
same sum($list0), undefined
same avg($list0), undefined
same min($list0), undefined
same max($list0), undefined
#### Do we really want these to be false and true?
same anycompare("<", $list0, 3), false
same allcompare("<", $list0, 3), true
same sum($list1), 1
same avg($list1), 1.0
same min($list1), 1
same max($list1), 1
same anycompare("<", $list1, 3), true
same allcompare("<", $list1, 3), true
same sum($list5), 15
same avg($list5), 3.0
same min($list5), 1
same max($list5), 5
same anycompare("<", $list5, 3), true
same allcompare("<", $list5, 3), false