Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ruanhaishen
redis
Commits
ed329fcf
Commit
ed329fcf
authored
Mar 23, 2009
by
Luc Heinrich
Browse files
Allow to specify the pid file from the config file.
parent
db52edaa
Changes
2
Hide whitespace changes
Inline
Side-by-side
redis.c
View file @
ed329fcf
...
@@ -171,6 +171,7 @@ struct redisServer {
...
@@ -171,6 +171,7 @@ struct redisServer {
int
maxidletime
;
int
maxidletime
;
int
dbnum
;
int
dbnum
;
int
daemonize
;
int
daemonize
;
char
*
pidfile
;
int
bgsaveinprogress
;
int
bgsaveinprogress
;
struct
saveparam
*
saveparams
;
struct
saveparam
*
saveparams
;
int
saveparamslen
;
int
saveparamslen
;
...
@@ -715,6 +716,7 @@ static void initServerConfig() {
...
@@ -715,6 +716,7 @@ static void initServerConfig() {
server
.
bindaddr
=
NULL
;
server
.
bindaddr
=
NULL
;
server
.
glueoutputbuf
=
1
;
server
.
glueoutputbuf
=
1
;
server
.
daemonize
=
0
;
server
.
daemonize
=
0
;
server
.
pidfile
=
"/var/run/redis.pid"
;
server
.
dbfilename
=
"dump.rdb"
;
server
.
dbfilename
=
"dump.rdb"
;
ResetServerSaveParams
();
ResetServerSaveParams
();
...
@@ -878,6 +880,8 @@ static void loadServerConfig(char *filename) {
...
@@ -878,6 +880,8 @@ static void loadServerConfig(char *filename) {
else
{
else
{
err
=
"argument must be 'yes' or 'no'"
;
goto
loaderr
;
err
=
"argument must be 'yes' or 'no'"
;
goto
loaderr
;
}
}
}
else
if
(
!
strcmp
(
argv
[
0
],
"pidfile"
)
&&
argc
==
2
)
{
server
.
pidfile
=
zstrdup
(
argv
[
1
]);
}
else
{
}
else
{
err
=
"Bad directive or wrong number of arguments"
;
goto
loaderr
;
err
=
"Bad directive or wrong number of arguments"
;
goto
loaderr
;
}
}
...
@@ -1899,6 +1903,9 @@ static void bgsaveCommand(redisClient *c) {
...
@@ -1899,6 +1903,9 @@ static void bgsaveCommand(redisClient *c) {
static
void
shutdownCommand
(
redisClient
*
c
)
{
static
void
shutdownCommand
(
redisClient
*
c
)
{
redisLog
(
REDIS_WARNING
,
"User requested shutdown, saving DB..."
);
redisLog
(
REDIS_WARNING
,
"User requested shutdown, saving DB..."
);
if
(
saveDb
(
server
.
dbfilename
)
==
REDIS_OK
)
{
if
(
saveDb
(
server
.
dbfilename
)
==
REDIS_OK
)
{
if
(
server
.
daemonize
)
{
unlink
(
server
.
pidfile
);
}
redisLog
(
REDIS_WARNING
,
"Server exit now, bye bye..."
);
redisLog
(
REDIS_WARNING
,
"Server exit now, bye bye..."
);
exit
(
1
);
exit
(
1
);
}
else
{
}
else
{
...
@@ -3033,7 +3040,7 @@ static void daemonize(void) {
...
@@ -3033,7 +3040,7 @@ static void daemonize(void) {
if
(
fd
>
STDERR_FILENO
)
close
(
fd
);
if
(
fd
>
STDERR_FILENO
)
close
(
fd
);
}
}
/* Try to write the pid file */
/* Try to write the pid file */
fp
=
fopen
(
"/var/run/redis.pid"
,
"w"
);
fp
=
fopen
(
server
.
pidfile
,
"w"
);
if
(
fp
)
{
if
(
fp
)
{
fprintf
(
fp
,
"%d
\n
"
,
getpid
());
fprintf
(
fp
,
"%d
\n
"
,
getpid
());
fclose
(
fp
);
fclose
(
fp
);
...
...
redis.conf
View file @
ed329fcf
...
@@ -4,6 +4,10 @@
...
@@ -4,6 +4,10 @@
# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
daemonize
no
daemonize
no
# When run as a daemon, Redis write a pid file in /var/run/redis.pid by default.
# You can specify a custom pid file location here.
pidfile
/
var
/
run
/
redis
.
pid
# Accept connections on the specified port, default is 6379
# Accept connections on the specified port, default is 6379
port
6379
port
6379
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment