No.
The cron job calls the observer method Mage_CatalogRule_Model_Observer::dailyCatalogUpdate()
. This one calls Mage_CatalogRule_Model_Resource_Rule::applyAllRulesForDateRange()
without arguments.
If applyAllRulesForDateRange()
is called without arguments, one day +/- the current date is assumed.
So you can create newer or older dates but the nightly cron job does not.
Magento shouldn't be run on anything other than bare metal, certainly never in a VPS.
In terms of sizing your RAM requirements, assuming 4 cores, you'll need at least 8GB RAM to maintain the recommended 2GB/core ratio.
With a catalogue size of 350k SKUs, I'd assume around ~15GB of total table space. You can get a definitive answer using the following query,
SELECT
IFNULL(B.engine,'Total') "Storage Engine", CONCAT(LPAD(REPLACE(FORMAT(B.DSize/POWER(1024,pw),3),',',''),17,' '),' ',SUBSTR(' KMGTP',pw+1,1),'B') "Data Size", CONCAT(LPAD(REPLACE(FORMAT(B.ISize/POWER(1024,pw),3),',',''),17,' '),' ',SUBSTR(' KMGTP',pw+1,1),'B') "Index Size", CONCAT(LPAD(REPLACE(FORMAT(B.TSize/POWER(1024,pw),3),',',''),17,' '),' ',SUBSTR(' KMGTP',pw+1,1),'B') "Table Size" FROM (SELECT engine,SUM(data_length) DSize,SUM(index_length) ISize,SUM(data_length+index_length) TSize
FROM information_schema.tables
WHERE table_schema NOT IN ('mysql','information_schema','performance_schema')
AND engine IS NOT NULL
GROUP BY engine
WITH ROLLUP) B,(SELECT 3 pw) A
ORDER BY TSize;
Your DB server needs around twice the total amount of table space available in RAM to properly perform. Add in the other roles/requirements of your server (web/mail/logging etc.) - I'd say you would be looking at ~32GB RAM for static load (ie. no visitors).
You would need to increase CPU/RAM proportionately with your traffic levels.
In any case. Drop the VPS, its a totally inappropriate choice for a Magento store.
Sources:
Best Answer
Ah. This is an old debate.
This is actually a feature not a bug.
Once you set a category to be
anchor
the product count for that category is determined by the products in that category and all its child categories.For a technical view, take a look at
Mage_Catalog_Model_Resource_Category_Collection::loadProductCount
. Specially in theif ($countAnchor) {
section.It does exactly what I described above.