#752 Building from hg on CentOS

freddy33 Sat 19 Sep 2009

Using http://hg.jfrog.org/hg/fan-1.0/ to test Actor and ActorPool behavior on 8 cores, I found:

  • The testSys pass without problems, but testOrdering still takes 7 secs (something get locked somewhere :(
  • May be due to the java version (1.6.0_07) I get:
    Run:  testJava::InteropTest.testCtors...
    TEST FAILED
    sys::TestErr: Test failed
    fan.sys.Test.err (Test.java:180)
    fan.sys.Test.fail (Test.java:174)
    fan.sys.Test.verify (Test.java:63)
    fan.sys.Test.verify (Test.java:60)
    testJava::InteropTest.testCtors (InteropTest.fan:50)
    sun.reflect.NativeMethodAccessorImpl.invoke0 (NativeMethodAccessorImpl.java)
    sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:39)
    sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke (Method.java:597)
    fan.sys.Method.invoke (Method.java:536)
    fan.sys.Method$MethodFunc.callList (Method.java:188)
    fan.sys.Method.callList (Method.java:147)
    fanx.tools.Fant.runTest (Fant.java:171)
    fanx.tools.Fant.test (Fant.java:92)
    fanx.tools.Fant.test (Fant.java:28)
    fanx.tools.Fant.run (Fant.java:255)
    fanx.tools.Fant.main (Fant.java:292)
     Run:  testJava::InteropTest.testPrimitiveInstanceFields...
     Pass: testJava::InteropTest.testPrimitiveInstanceFields [25]
     Run:  testJava::InteropTest.testPrimitiveStaticFields...
     TEST FAILED
    sys::TestErr: Test failed: 97 != 66
    fan.sys.Test.err (Test.java:182)
    fan.sys.Test.fail (Test.java:174)
    fan.sys.Test.verifyEq (Test.java:102)
    fan.sys.Test.verifyEq (Test.java:96)
    testJava::InteropTest.testPrimitiveStaticFields (InteropTest.fan:164)
    sun.reflect.NativeMethodAccessorImpl.invoke0 (NativeMethodAccessorImpl.java)
    sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:39)
    sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke (Method.java:597)
    fan.sys.Method.invoke (Method.java:536)
    fan.sys.Method$MethodFunc.callList (Method.java:188)
    fan.sys.Method.callList (Method.java:147)
    fanx.tools.Fant.runTest (Fant.java:171)
    fanx.tools.Fant.test (Fant.java:92)
    fanx.tools.Fant.test (Fant.java:28)
    fanx.tools.Fant.run (Fant.java:255)
    fanx.tools.Fant.main (Fant.java:292)

My environment:

java version "1.6.0_07"
Java(TM) SE Runtime Environment (build 1.6.0_07-b06)
Java HotSpot(TM) 64-Bit Server VM (build 10.0-b23, mixed mode)
Linux 2.6.18-92.1.22.el5 #1 SMP Tue Dec 16 11:57:43 EST 2008 x86_64 x86_64 x86_64 GNU/Linux

brian Sun 20 Sep 2009

OK - I think I understand both of those issues.

Let's see if this patch fixes those test failures - changeset

freddy33 Sun 20 Sep 2009

Good, it solved it!

I still get 3 small issues with the tests:

  • The FindInFileTest in the flux pod assumes file names on Windows.
  • not.going.to.happen fails every time I'm on a domain with *.domainname mapped in the DNS. Adding the dot at the end solves it.
  • The google home page does not behave the same. I think it should be a stupid pure static html from somewhere (I did my own and it works).

I pushed it all on my repo http://hg.jfrog.org/hg/fan-1.0/

About the Actor issue, I did not get the dead lock on the CentOS with the version on fan hg! I suspect a Java version issue, so I'm testing it now on a Debian 8 cores with java 1.6.0_12. We will see?

brian Sun 20 Sep 2009

I pushed this changeset with fixes for those three small issues.

So I believe I have merged all your fixes except for the actor deadlock - agree?

I am still looking at the Actor fix and trying to get my head around it (I have an additional pretty huge test suite for SkyFoundry's software which heavily stresses the Actor framework).

freddy33 Sun 20 Sep 2009

Great it solve the issues.

Now doing the Debian with Java 1.6.0_12 test I got another issue with FindInFilesTest :

-- Run:  flux::FindInFilesTest.test...
TEST FAILED
sys::TestErr: Test failed: "gamma.fan" != "alpha.txt"
  fan.sys.Test.err (Test.java:182)
  fan.sys.Test.fail (Test.java:174)
  fan.sys.Test.verifyEq (Test.java:102)
  fan.sys.Test.verifyEq (Test.java:96)
  flux::FindInFilesTest.verifyMark (FindInFilesTest.fan:52)
  flux::FindInFilesTest.test (FindInFilesTest.fan:26)

I just added a sorting before the verifyMark and it solved it. results.sort(|Str a, Str b -> Int| { a <=> b })

For the Actor test, it looks like the dead lock is a pure MacOS issue, I did not manage to reproduce it elsewhere? On the other hand I get stop failure on the Debian using the current hg version:

-- Run:  testSys::ActorTest.testStop...
TEST FAILED
sys::TestErr: Test failed: 372ms
  fan.sys.Test.err (Test.java:182)
  fan.sys.Test.fail (Test.java:174)
  fan.sys.Test.verify (Test.java:63)
  testSys::ActorTest.testStop (ActorTest.fan:237)

I'm going to test my version on Debian now.

freddy33 Sun 20 Sep 2009

So, with my version the ActorTest pass but it does not use the 8 cores correctly and the testOrdering takes around 6 secs :( Anyway, it failed after on another one of this ctor issues!

-- Run:  testJava::SubclassTest.testCtors...

TEST FAILED
sys::TestErr: Test failed
  fan.sys.Test.err (Test.java:180)
  fan.sys.Test.fail (Test.java:174)
  fan.sys.Test.verify (Test.java:63)
  fan.sys.Test.verify (Test.java:60)
  testJava::SubclassTest.testCtors (SubclassTest.fan:155)

The environment here is:

$ java -version
java version "1.6.0_12"
Java(TM) SE Runtime Environment (build 1.6.0_12-b04)
Java HotSpot(TM) 64-Bit Server VM (build 11.2-b01, mixed mode)
$ uname -a
Linux 2.6.26-1-amd64 #1 SMP Fri Mar 13 17:46:45 UTC 2009 x86_64 GNU/Linux

I know this will end with a great Actor implementation :) Good luck.

freddy33 Sun 20 Sep 2009

For info, with the ordering added in FindInFiles results, the full build pass on CentOS with java 1.6.0_07 !

brian Sun 20 Sep 2009

OK, this changeset fixes (should fix that is):

  • FindInFiles ordering test failure
  • SubclassTest.testCtors test failure

So should have everything working except the nasty Actor deadlock.

Thanks a lot for helping me work thru these issues to get test suite 100% on all these different platforms.

Login or Signup to reply.