Optimized the setup (not only), shortened to 37s (used to be 120s)

- DBObject::DBInsert(Tracked)NoReload() must be used when it is not required to use the object
- MetaModel::GetObject() has a cache, the operation is 5 times faster
- Changes tracking do not store the initial value, but only value changes
Reworked the CSV import to have it rely on the bulk change API
Bulk change to check the external keys (DB integrity)
Replaced trigger_error (Core only!) by the use of Exceptions (still, some new Exception classes should be defined)
Unit tests do display the call stack in a user friendly format

SVN:code[52]
This commit is contained in:
Romain Quetiez
2009-04-27 07:27:54 +00:00
parent acbb54104e
commit a4663ebed1
23 changed files with 464 additions and 533 deletions

View File

@@ -122,7 +122,7 @@ class dialogstack
if (self::$m_bCurrPageDeclared)
{
trigger_error("DeclareCaller() must not be called before StartDialog()", E_USER_ERROR);
throw new Exception("DeclareCaller() must not be called before StartDialog()");
}
$aCall = array(
@@ -242,7 +242,7 @@ class dialogstack
}
else
{
trigger_error("Wrong value for button style ($iButtonStyle)", E_USER_ERROR);
throw new Exception("Wrong value for button style ($iButtonStyle)");
}
$sRet .= "<input type=\"hidden\" name=\"dialogstackpop\" value=\"".count($_SESSION['dialogstack_currdlg'])."\">\n";
$sRet .= "</form>\n";