Details
-
Bug
-
Resolution: Fixed
-
P4
-
None
-
None
-
b78
Description
This issue is mainly of interest to Oracle engineers, but it effects the public hgforest script.
When hgforest.sh is run with an addition argument to specify a closed server, there is a problem/race between the creation of the directories to hold nested repositories and the clone itself. These directories need to be created before the clone command is executed, otherwise it will fail, as below.
The trivial fix is to back off these nested repos until their containing directory exists.
sh ./get_source.sh http://xxx.yyy.oracle.com | & tee clone.log
# Repositories: corba jaxp jaxws langtools jdk hotspot jdk/src/closed jdk/make/closed jdk/test/closed hotspot/make/closed hotspot/src/closed hotspot/test/closed deploy install sponsors pubs
Waiting 5 secs before spawning next background command.
Waiting 5 secs before spawning next background command.
Waiting 5 secs before spawning next background command.
jdk/src/closed: /java/devtools/sparc/mercurial/0.9.5/bin/python -u /java/devtools/sparc/mercurial/latest/bin/hg clone http://xxx.yyy.oracle.com/jdk8/tl/jdk/src/closed jdk/src/closed
jdk/src/closed: abort: No such file or directory: jdk/src/closed
jdk/make/closed: /java/devtools/sparc/mercurial/0.9.5/bin/python -u /java/devtools/sparc/mercurial/latest/bin/hg clone http://xxx.yyy.oracle.com/jdk8/tl/jdk/make/closed jdk/make/closed
jdk/make/closed: abort: No such file or directory: jdk/make/closed
Waiting 5 secs before spawning next background command.
....
When hgforest.sh is run with an addition argument to specify a closed server, there is a problem/race between the creation of the directories to hold nested repositories and the clone itself. These directories need to be created before the clone command is executed, otherwise it will fail, as below.
The trivial fix is to back off these nested repos until their containing directory exists.
sh ./get_source.sh http://xxx.yyy.oracle.com | & tee clone.log
# Repositories: corba jaxp jaxws langtools jdk hotspot jdk/src/closed jdk/make/closed jdk/test/closed hotspot/make/closed hotspot/src/closed hotspot/test/closed deploy install sponsors pubs
Waiting 5 secs before spawning next background command.
Waiting 5 secs before spawning next background command.
Waiting 5 secs before spawning next background command.
jdk/src/closed: /java/devtools/sparc/mercurial/0.9.5/bin/python -u /java/devtools/sparc/mercurial/latest/bin/hg clone http://xxx.yyy.oracle.com/jdk8/tl/jdk/src/closed jdk/src/closed
jdk/src/closed: abort: No such file or directory: jdk/src/closed
jdk/make/closed: /java/devtools/sparc/mercurial/0.9.5/bin/python -u /java/devtools/sparc/mercurial/latest/bin/hg clone http://xxx.yyy.oracle.com/jdk8/tl/jdk/make/closed jdk/make/closed
jdk/make/closed: abort: No such file or directory: jdk/make/closed
Waiting 5 secs before spawning next background command.
....