I notice in your modman script you have a facility for using hard links instead of soft links but it is “not recommended”. Why is that? Was there a specific problem the hard links introduced?
It seems to me that hard links might even be a better option as it means this will work independent of whether FollowSymlinks is enabled or not.
http://colin.mollenhour.com Colin Mollenhour
The problems that come along with using hardlinks are that detecting and repairing situations where files were moved/renamed/deleted becomes very difficult. Also to uninstall a module becomes potentially much more problematic. I.e. with symlinks I can remove a module by deleting it and running modman repair (thanks to the easy detection of broken symlinks). Also other problems such as having the root of your site as a repository would cause weird repository conflicts, etc..
http://twitter.com/stefanhallen Stefan Hållén
So this is probably totally the wrong place to ask this question, but how would one go about to execute a query like: { $or : [ { start : { $gt : 100}, start : { $lt : 200} }, { end : { $gt : 100}, end : { $lt : 200} } ] } In the mongodb odm wrapper? :)
Vinai
Hi Collin, do you twitter?
http://colin.mollenhour.com Colin Mollenhour
Yep: @colinmollenhour
Alex
Hi Collin, I have a quick question about Magento config for Zend_Cache_Backend_Redis. For APC cache, in case of multiple websites/per server you need to use '<prefix>..</prefix>' . Do you need to do anything like that if you are using Zend_Cache_Backend_Redis ? Thank you!
Maybe your comment didn't come through as expected, but I think you're asking about configuring a prefix to avoid keyspace collisions?
The Redis cache does not use a configurable prefix. If you run more than one Magento installation on the same Redis server with the same database is then you will definitely have keyspace collisions. I would recommend using a different Redis database for each Magento installation. This can be done with global/cache/backend_options/database. You could also run a separate instance of Redis on a different port, which would let you control the amount of memory each installation can use.
Maybe your comment didn't come through as expected, but I think you're asking about configuring a prefix to avoid keyspace collisions?
The Redis cache does not use a configurable prefix. If you run more than one Magento installation on the same Redis server with the same database is then you will definitely have keyspace collisions. I would recommend using a different Redis database for each Magento installation. This can be done with global/cache/backend_options/database. You could also run a separate instance of Redis on a different port, which would let you control the amount of memory each installation can use.
Justin
Hi Collin, I'm looking forward to using Modman, which seems like a great utility. I just have a question about best practices when it comes to 3rd party Magento extensions. This must be a simple or obvious question as I haven't been able to find anyone addressing it online, but in a nutshell: is there a best practice for dealing with 3rd party extensions when developing a Magento store, using source control and modman? I'd rather not check 3rd party extensions in, so are they something that wouldn't even typically be handled by modman? Just install the extensions I want by hand in my production, staging and dev environments individually? Thanks for any thoughts you may have
http://colin.mollenhour.com Colin Mollenhour
Hi Justin. If you don't want to check third-party code into your repo then you can just check in a list of extension keys (extensions.txt) then use a shell command to make sure they are installed:
@shell cd $PROJECT; mkdir -f .installed for ext in `cat $MODULE/extensions.txt`; do if [ ! -f .installed/$ext ]; then ./pear install $ext && touch .installed/$ext; fi done
http://colin.mollenhour.com Colin Mollenhour
Hi Justin. If you don't want to check third-party code into your repo then you can just check in a list of extension keys (extensions.txt) then use a shell command to make sure they are installed:
@shell cd $PROJECT; mkdir -f .installed for ext in `cat $MODULE/extensions.txt`; do if [ ! -f .installed/$ext ]; then ./pear install $ext && touch .installed/$ext; fi done