Quantcast
Channel: StudioSysAdmins Message Board
Viewing all articles
Browse latest Browse all 3749

Magical Sym-link-ery

$
0
0
Magical Sym-link-ery
posted by Trevor Rowland on July 6, 2017, 3:19 p.m.

Hi all,
I have a question about actual symlink cost, both on server load and actual resolution times (both sides of same coin arguably)
You may see from my linkedin profile I am already a level 11 wizard, however I have just stopped to truly think about the (inherited) current system at work, and the more I think of it, the more it feels like a dr Who episode, where - without the magical "-alh" after your "ls" - you completely forget the terrible evil exists.... and it just sits there growing....

Our user directories (centos6.5) are mount point symlinks "/mnt/symlink_to_user_directory" to the main drive that hosts them - basically meaning the host drive can be moved at any point with zero downtime.
....so to open a terminal "<user>@<host>:" we have already jumped through one symlink, but (and here is where I'm looking for a level 20 wizard to jump in and tell me Im wrong) that link is resolved at this point, so it doesnt count.
Then we try to run an app - lets call it "DooHini". We know about DooHini because of the .cshrc file that adds the symlink to the scripts directory to our environment. Wait... I just said "symlink" again. We set a couple of environment variables (including symlink containing paths to LD_LIBRARY_PATH) then follow the symlink to the DooHini application. (Again - level 20 wizards all links are resolved in the execution context of the app and do not count at this point toward our maximm symlink depth - right???)
We then open the published alembic file which is ...you guessed it... a symlink to the file that is hosted on a symlinked drive array (meaning the host drive can be moved at any point with zero downtime....)

Strangely we never hit the maximum symlink depth, but out servers are curiously slow...
I need actual real world data to be able to prove to the powers that be this needs attention.

So for all you level 20 wizards out there:
- Does anyone know - for definate - the actual server side cost of resolving a symlink?
- Does anyone know the cost of adding a symlinked library to the LD_LIBRARY_PATH for an application ?
- Does anyone know the cost of adding a symlink to the PYTHONPATH?
- Are there any tools or things that can let me know "to get to point X in this execution context you have resolved Y symlinks"
- Is this all just a part of the passage to level 12 wizardy ? Should I just nod, smile and think about something else ?


And for everyone else:
- how many symlinks do you traverse per execution context ?
- Are you sure about your above answer ?

 

Sorry for the really long post, and if this is in the wrong spot.

Thanks for any pointers!

 

Trevor

Thread Tags:
  discuss-at-studiosysadmins 

0 Responses   0 Plus One's   0 Comments  
 

Hi all,
I have a question about actual symlink cost, both on server load and actual resolution times (both sides of same coin arguably)
You may see from my linkedin profile I am already a level 11 wizard, however I have just stopped to truly think about the (inherited) current system at work, and the more I think of it, the more it feels like a dr Who episode, where - without the magical "-alh" after your "ls" - you completely forget the terrible evil exists.... and it just sits there growing....

Our user directories (centos6.5) are mount point symlinks "/mnt/symlink_to_user_directory" to the main drive that hosts them - basically meaning the host drive can be moved at any point with zero downtime.
....so to open a terminal "<user>@<host>:" we have already jumped through one symlink, but (and here is where I'm looking for a level 20 wizard to jump in and tell me Im wrong) that link is resolved at this point, so it doesnt count.
Then we try to run an app - lets call it "DooHini". We know about DooHini because of the .cshrc file that adds the symlink to the scripts directory to our environment. Wait... I just said "symlink" again. We set a couple of environment variables (including symlink containing paths to LD_LIBRARY_PATH) then follow the symlink to the DooHini application. (Again - level 20 wizards all links are resolved in the execution context of the app and do not count at this point toward our maximm symlink depth - right???)
We then open the published alembic file which is ...you guessed it... a symlink to the file that is hosted on a symlinked drive array (meaning the host drive can be moved at any point with zero downtime....)

Strangely we never hit the maximum symlink depth, but out servers are curiously slow...
I need actual real world data to be able to prove to the powers that be this needs attention.

So for all you level 20 wizards out there:
- Does anyone know - for definate - the actual server side cost of resolving a symlink?
- Does anyone know the cost of adding a symlinked library to the LD_LIBRARY_PATH for an application ?
- Does anyone know the cost of adding a symlink to the PYTHONPATH?
- Are there any tools or things that can let me know "to get to point X in this execution context you have resolved Y symlinks"
- Is this all just a part of the passage to level 12 wizardy ? Should I just nod, smile and think about something else ?


And for everyone else:
- how many symlinks do you traverse per execution context ?
- Are you sure about your above answer ?

 

Sorry for the really long post, and if this is in the wrong spot.

Thanks for any pointers!

 

Trevor


Viewing all articles
Browse latest Browse all 3749

Trending Articles