Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

isolated install space takes an eternity to source setup.sh #289

Closed
tkruse opened this issue Jan 1, 2013 · 3 comments
Closed

isolated install space takes an eternity to source setup.sh #289

tkruse opened this issue Jan 1, 2013 · 3 comments
Assignees

Comments

@tkruse
Copy link
Member

tkruse commented Jan 1, 2013

It seems that there are plenty of redundant operations occuring recusively. I looked at the setup.sh files that get sourced, and they look very similar to each other, so I cannot tellwhich part are actually relevant.

It is this part that takes so long, because sourcing each other setup.sh also takes long.(Note in the current code, setup.$CATKIN_SHELL is sourced, which also does not help, but is not the cause for the wait.

# source setup.SHELL from parent workspaces
if [ $IS_RECURSIVE -eq 0 ]; then
  _CATKIN_SETUP_NO_RECURSION=1
  for workspace in $("$SETUP_UTIL" --get-reversed-workspaces --value "/home/kruset/groovy_underlay/install_isolated"); do
    echo $workspace
    . "$workspace/setup.sh"
  done
  _CATKIN_SETUP_NO_RECURSION=0
fi
@dirk-thomas
Copy link
Member

Obviously the files look similar since they are being generated from the same template. But non of the operations performed is redundant.

Each workspace has its own setup files and it performs only workspace-specific changes of the environment. For an isolated build with potentially hundreds of chained workspaces the time to source all of them adds up linearly.

Potential speed improvement will require the whole environment generation process to be redesigned in order to not scale with the number of workspaces.

@ghost ghost assigned dirk-thomas Jan 4, 2013
@dirk-thomas
Copy link
Member

Can you confirm that the current refactor_setup branch solves that for you, too?

@tkruse
Copy link
Member Author

tkruse commented Jan 10, 2013

I confirm this branch solves it for me, takes less than a second.

On Thu, Jan 10, 2013 at 1:02 AM, Dirk Thomas notifications@github.comwrote:

Can you confirm that the current refactor_setup branch solves that for
you, too?


Reply to this email directly or view it on GitHubhttps://github.com//issues/289#issuecomment-12073982.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants