Opened 3 years ago

Last modified 2 years ago

#61625 assigned defect

redis: wrong .conf file path in startupitem

Reported by: ArtKoKo Owned by: dgilman (David Gilman)
Priority: Normal Milestone:
Component: ports Version: 2.6.4
Keywords: Cc:
Port: redis

Description

The plist file for launchd is wrong : Redis is launched multiple times in an infinite loop.

The conf file path is unfinished : /opt/local/etc/redis.conf instead of /opt/local/etc/redis/redis.conf

I suggest in attach a replacement plist

Attachments (1)

org.macports.redis.zip (2.5 KB) - added by ArtKoKo 3 years ago.
plist with wrapper

Download all attachments as: .zip

Change History (7)

Changed 3 years ago by ArtKoKo

Attachment: org.macports.redis.zip added

plist with wrapper

comment:1 Changed 3 years ago by jmroot (Joshua Root)

Keywords: redis launchd removed
Summary: Wrong plist / wrong pathredis: wrong .conf file path in startupitem

comment:2 Changed 3 years ago by dgilman (David Gilman)

I'm not sure how you set up launchd here. We definitely install the Redis conf file to /opt/local/etc/redis.conf and not in the redis subdirectory. A "port load redis" is correctly setting up launchd with the correct paths.

comment:3 Changed 3 years ago by ArtKoKo

The conf path is a secondary and minor point, it's just to do like other port

The main problem is "port load redis" launch redis multiple times in an infinite loop because the call of daemondo is incorrect

I think the previous ticket is about this same issue

comment:4 Changed 2 years ago by dgilman (David Gilman)

I'd appreciate any more information on this. I've come back to this ticket and the other every now and then and I have never seen any of the behavior described. I'd appreciate any other information you have, your system configuration or anything else.

comment:5 Changed 2 years ago by ArtKoKo

I have to try to reinstall Redis on Mac OS X Mojave from a fresh install and come back to you with more information.

comment:6 Changed 2 years ago by ArtKoKo

I think I understood the problem: with a default installation everything works fine.

But if you change the PID path as suggested in the config file comment

# Note that on modern Linux systems "/run/redis.pid" is more conforming
# and should be used instead.

then there is a conflict with the PID location statement given in the load .plist file :

<string>--pid=exec</string>

If you edit the .plist file the Redis upgrades overwrite the file...

I changed all the paths to respect the convention of other ports :

/opt/local/etc/redis/redis.conf
/opt/local/var/log/redis/redis.log
/opt/local/var/run/redis/redis.pid
/opt/local/var/db/redis/

and I apply a patch as soon as an MacPorts upgrade is applied.

Note: See TracTickets for help on using tickets.