public function testObjectIndexerPerformance() { if (class_module_system_module::getModuleByName("news") === null) { return; } $objNews = new class_module_news_news(); $objNews->setStrTitle("demo 1"); $objNews->setStrIntro("intro demo news"); $objNews->setStrText("text demo news"); $objNews->updateObjectToDb(); $strNewsId = $objNews->getSystemid(); echo "Status changes with disabled changelog indexer integration...\n"; class_module_system_changelog::$bitChangelogEnabled = false; $intTimeStart = microtime(true); $intQueriesStart = class_db::getInstance()->getNumber(); for ($intI = 0; $intI < 150; $intI++) { $objNews->setIntRecordStatus($intI % 2); $objNews->updateObjectToDb(); } $intTimeEnd = microtime(true); $time = $intTimeEnd - $intTimeStart; echo "Object updates: ", sprintf('%f', $time), " sec.\n"; echo "Queries: ", class_db::getInstance()->getNumber() - $intQueriesStart . " \n"; echo "Status changes with enabled changelog indexer integration...\n"; class_module_system_changelog::$bitChangelogEnabled = true; $intTimeStart = microtime(true); $intQueriesStart = class_db::getInstance()->getNumber(); for ($intI = 0; $intI < 150; $intI++) { $objNews->setIntRecordStatus($intI % 2); $objNews->updateObjectToDb(); } $intTimeEnd = microtime(true); $time = $intTimeEnd - $intTimeStart; echo "Object updates: ", sprintf('%f', $time), " sec.\n"; echo "Queries: ", class_db::getInstance()->getNumber() - $intQueriesStart . " \n"; class_objectfactory::getInstance()->getObject($strNewsId)->deleteObjectFromDatabase(); }