Why does mysqldump need to be fully pathed when called from a controller or model?
Posted
by Kris
on Stack Overflow
See other posts from Stack Overflow
or by Kris
Published on 2009-11-26T13:41:05Z
Indexed on
2010/03/23
3:01 UTC
Read the original article
Hit count: 351
When I call mysqldump
from a controller or model I need to fully path the binary, when I call it from Rake I don't need to.
If I do not fully path I get a zero byte file...
I can confirm both processes are run using the same user.
# Works in a controller, model and Rake task
system "/usr/local/mysql/bin/mysqldump -u root #{w.database_name} > #{target_file}"
# Only works in a Rake task
system "mysqldump -u root #{w.database_name} > #{target_file}"
If I call the Rake task from the action it also fails (zero byte file).
OS: Mac Ruby 1.8.6
EDIT: I use Etc.getpwuid(Process.uid).name
to get the User of the current process
© Stack Overflow or respective owner