- Timestamp:
- 12/05/06 02:57:11 (2 years ago)
- Files:
-
- devel/lib/cache (added)
- devel/lib/cache/engine.memcache.php (added)
- devel/lib/cache/engine.noop.php (added)
- devel/lib/cache/lib.php (added)
- devel/lib/datalib.php (modified) (11 diffs)
- devel/lib/setup.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
devel/lib/datalib.php
r708 r742 41 41 42 42 if ($result) { 43 // elggcache_purge(); // TODO - should probably be here, given function can do anything, but very inefficient 43 44 if ($feedback) { 44 45 notify(__gettext('Success'), 'notifysuccess'); … … 196 197 197 198 $METATABLES = $db->Metatables(); 199 elggcache_purge(); 198 200 199 201 return $success; … … 222 224 $signed='unsigned', $default='0', $null='not null', $after='') { 223 225 global $CFG, $db; 226 227 elggcache_cachepurgetype($table); 224 228 225 229 if (empty($oldfield) && !empty($field)) { //adding … … 435 439 436 440 $values = where_values_prepared($value1, $value2, $value3); 437 441 438 442 return record_exists_sql('SELECT * FROM '. $CFG->prefix . $table .' '. $select .' LIMIT 1',$values); 439 440 443 } 441 444 … … 597 600 598 601 global $CFG; 602 $trycache = false; 603 604 //just cache things by primary key for now 605 if ($field1 == "ident" && $value1 == intval($value1) && empty($field2) && empty($value2) && empty($field3) && empty($value3) && $fields == "*") { 606 $trycache = true; 607 $cacheval = elggcache_get($table, $field1 . "_" . intval($value1)); 608 if (!is_null($cacheval)) { 609 return $cacheval; 610 } else { 611 612 } 613 } 599 614 600 615 $select = where_clause_prepared($field1, $field2, $field3); … … 602 617 $values = where_values_prepared($value1, $value2, $value3); 603 618 604 return get_record_sql('SELECT '.$fields.' FROM '. $CFG->prefix . $table .' '. $select, $values); 619 $returnvalue = get_record_sql('SELECT '.$fields.' FROM '. $CFG->prefix . $table .' '. $select, $values); 620 621 if ($trycache) { 622 $setres = elggcache_set($table, $field1 . "_" . $value1, $returnvalue); 623 } 624 625 return $returnvalue; 605 626 } 606 627 … … 1166 1187 $select = where_clause_prepared($field1, $field2, $field3); 1167 1188 $values = where_values_prepared($newvalue, $value1, $value2, $value3); 1168 1189 1169 1190 $stmt = $db->Prepare('UPDATE '. $CFG->prefix . $table .' SET '. $newfield .' = ? '. $select); 1170 return $db->Execute($stmt,$values); 1191 $returnvalue = $db->Execute($stmt,$values); 1192 1193 if ($field1 == "ident") { 1194 // updating by primary key 1195 elggcache_delete($table, $field1 . "_" . $value1); 1196 } else { 1197 // sledgehammer :( 1198 elggcache_cachepurgetype($table); 1199 } 1200 1201 return $returnvalue; 1171 1202 } 1172 1203 … … 1195 1226 1196 1227 $stmt = $db->Prepare('DELETE FROM '. $CFG->prefix . $table .' '. $select); 1197 return $db->Execute($stmt,$values); 1228 $returnvalue = $db->Execute($stmt,$values); 1229 1230 if ($field1 == "ident") { 1231 // updating by primary key 1232 elggcache_delete($table, $field1 . "_" . $value1); 1233 } else { 1234 // sledgehammer :( 1235 elggcache_cachepurgetype($table); 1236 } 1237 1238 return $returnvalue; 1198 1239 } 1199 1240 … … 1225 1266 $result = $db->Execute('DELETE FROM '. $CFG->prefix . $table .' '. $select); 1226 1267 } 1268 1269 elggcache_cachepurgetype($table); 1270 1227 1271 return $result; 1228 1272 } … … 1269 1313 if ($nextval = (int)get_field_sql("SELECT NEXTVAL('{$CFG->prefix}{$table}_{$primarykey}_seq')")) { 1270 1314 $setfromseq = true; 1271 $dataobject->{$primarykey} = $nextval; 1315 $dataobject->{$primarykey} = $nextval; 1272 1316 } 1273 1317 } … … 1433 1477 $stmt = $db->Prepare('UPDATE '. $CFG->prefix . $table .' SET '. $update .' WHERE ident = \''. $dataobject->ident .'\''); 1434 1478 if ($rs = $db->Execute($stmt,$ddd)) { 1479 elggcache_delete($table, "ident_" . $dataobject->ident); 1435 1480 return true; 1436 1481 } else { devel/lib/setup.php
r729 r742 14 14 15 15 // set up perf. 16 init_performance_info(); 16 init_performance_info(); 17 17 18 18 /// Just say no to link prefetching (Moz prefetching, Google Web Accelerator, others)
