• Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • other
    • None
    • Platform: Sun, OS: All

      -bash-3.00$ java -jar hudson.war
      [Winstone 2007/03/30 10:01:41] - Beginning extraction from war file
      [Winstone 2007/03/30 10:05:30] - No webapp classes folder found - /var/tmp/winstone/hudson.war/
      WEB-INF/classes
      hudson home directory: /homes/theuser/.hudson
      Mar 30, 2007 10:05:31 AM hudson.TcpSlaveAgentListener <init>
      INFO: JNLP slave agent listener started on TCP port 62592
      [Winstone 2007/03/30 10:05:32] - HTTP Listener started: port=8080
      [Winstone 2007/03/30 10:05:32] - AJP13 Listener started: port=8009

      (note that this machine has never run hudson before)

      It takes almost 5 minutes to extract the war file, on my windows pc it takes about 10 seconds.

      truss seems to indicate that the process is waiting for something, below output is repeated over and
      over again:

      /10: lwp_cond_wait(0x00034EE0, 0x00034EC8, 0xB3E7FBC8, 0) Err#62 ETIME
      /18: pollsys(0x00000000, 0, 0xB367FBF0, 0x00000000) = 0
      /18: pollsys(0x00000000, 0, 0xB367FBF0, 0x00000000) = 0
      /18: pollsys(0x00000000, 0, 0xB367FBF0, 0x00000000) = 0
      /18: pollsys(0x00000000, 0, 0xB367FBF0, 0x00000000) = 0
      /18: pollsys(0x00000000, 0, 0xB367FBF0, 0x00000000) = 0
      /18: pollsys(0x00000000, 0, 0xB367FBF0, 0x00000000) = 0
      /18: pollsys(0x00000000, 0, 0xB367FBF0, 0x00000000) = 0
      /18: pollsys(0x00000000, 0, 0xB367FBF0, 0x00000000) = 0
      /18: pollsys(0x00000000, 0, 0xB367FBF0, 0x00000000) = 0
      /18: pollsys(0x00000000, 0, 0xB367FBF0, 0x00000000) = 0
      /18: pollsys(0x00000000, 0, 0xB367FBF0, 0x00000000) = 0
      /18: pollsys(0x00000000, 0, 0xB367FBF0, 0x00000000) = 0
      /18: pollsys(0x00000000, 0, 0xB367FBF0, 0x00000000) = 0
      /18: pollsys(0x00000000, 0, 0xB367FBF0, 0x00000000) = 0
      /18: pollsys(0x00000000, 0, 0xB367FBF0, 0x00000000) = 0
      /18: pollsys(0x00000000, 0, 0xB367FBF0, 0x00000000) = 0
      /18: pollsys(0x00000000, 0, 0xB367FBF0, 0x00000000) = 0

      The machine does not have direct internet access, perhaps an xml parser somewhere is trying to load
      DTDs or schemas ?

        1. hudson.war.cpu.bz2
          912 kB
          Kohsuke Kawaguchi

          [JENKINS-413] hudson starts slow on solaris

          Jorg Heymans created issue -

          Jorg Heymans added a comment -

          It might not be related to the network. I just tried starting hudson on a disconnected powerbook and it
          starts instantly.

          Jorg Heymans added a comment - It might not be related to the network. I just tried starting hudson on a disconnected powerbook and it starts instantly.

          Jesse Glick added a comment -

          Note that it is possible for XML entity resolver bugs to have the behavior that
          the program runs quickly when the network is disconnected, because then host
          resolution fails immediately and some fallback behavior is used - as opposed to
          sitting there waiting for an HTTP connection.

          Try using DTrace?

          Jesse Glick added a comment - Note that it is possible for XML entity resolver bugs to have the behavior that the program runs quickly when the network is disconnected , because then host resolution fails immediately and some fallback behavior is used - as opposed to sitting there waiting for an HTTP connection. Try using DTrace?

          Yeah, often a network timeout wait exhibits this kind of problem, but the
          profiler data that I got from him indicates that the problem seems to be in
          classloading.

          Will be attaching it.

          Kohsuke Kawaguchi added a comment - Yeah, often a network timeout wait exhibits this kind of problem, but the profiler data that I got from him indicates that the problem seems to be in classloading. Will be attaching it.

          Created an attachment (id=49)
          YourKit profiler data file

          Kohsuke Kawaguchi added a comment - Created an attachment (id=49) YourKit profiler data file

          Created an attachment (id=51)
          java.net.URL patch

          Kohsuke Kawaguchi added a comment - Created an attachment (id=51) java.net.URL patch

          I created a patch to the java.net.URL class in JDK 1.6.0 b105.
          It prints out a message indicating where it's connecting to each time
          URL.openConnection() is invoked.

          Put this jar file in $JAVA_HOME/jre/lib/endorsed directory. Together with this
          and truss you might be able to see where is causing the problematic java.sun.com
          access.

          Kohsuke Kawaguchi added a comment - I created a patch to the java.net.URL class in JDK 1.6.0 b105. It prints out a message indicating where it's connecting to each time URL.openConnection() is invoked. Put this jar file in $JAVA_HOME/jre/lib/endorsed directory. Together with this and truss you might be able to see where is causing the problematic java.sun.com access.
          Kohsuke Kawaguchi made changes -
          Status Original: Open [ 1 ] New: In Progress [ 3 ]

          Created an attachment (id=55)
          java.net.URL patch with stack dump

          Kohsuke Kawaguchi added a comment - Created an attachment (id=55) java.net.URL patch with stack dump

          Jorg Heymans added a comment -

          About DTrace: i'm on a zone with no access to the 'master' zone so that is not
          an option

          Jorg Heymans added a comment - About DTrace: i'm on a zone with no access to the 'master' zone so that is not an option

            Unassigned Unassigned
            heymjo Jorg Heymans
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: