diff options
| author | marcus <marcus@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2008-10-31 10:33:20 +0000 | 
|---|---|---|
| committer | marcus <marcus@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2008-10-31 10:33:20 +0000 | 
| commit | 4669a3e824915d3c8418de1f6b17a6811441c617 (patch) | |
| tree | b9c884cdce6a4e2e34e52f44f5d7e643d855ab23 /engine/lib | |
| parent | f72baa4731cb98f42a21fe9737254c706e7ebcbf (diff) | |
| download | elgg-4669a3e824915d3c8418de1f6b17a6811441c617.tar.gz elgg-4669a3e824915d3c8418de1f6b17a6811441c617.tar.bz2 | |
Closes #493: Moved database queries out of module and in to core in line with best practice.
git-svn-id: https://code.elgg.org/elgg/trunk@2369 36083f99-b078-4883-b0ff-0f9b5a30f544
Diffstat (limited to 'engine/lib')
| -rw-r--r-- | engine/lib/database.php | 12 | ||||
| -rw-r--r-- | engine/lib/metastrings.php | 21 | 
2 files changed, 32 insertions, 1 deletions
| diff --git a/engine/lib/database.php b/engine/lib/database.php index c46d6023f..e1f007399 100644 --- a/engine/lib/database.php +++ b/engine/lib/database.php @@ -368,7 +368,17 @@          		return false;
          	return $tables;
 -        }
 +        } +         +    /** +     * Run an optimize query on a mysql tables. Useful for executing after major data changes.  +     * +     */ +    	function optimize_table($table) +    	{ +    		$table = sanitise_string($table); +    		return update_data("optimize table $table"); +    	}
  	/**
  	 * Get the last database error for a particular database link
 diff --git a/engine/lib/metastrings.php b/engine/lib/metastrings.php index b6e3b431d..786e343ce 100644 --- a/engine/lib/metastrings.php +++ b/engine/lib/metastrings.php @@ -115,4 +115,25 @@  		return $result;  	} +	/** +	 * Delete any orphaned entries in metastrings. This is run by the garbage collector. +	 *  +	 */ +	function delete_orphaned_metastrings() +	{ +		global $CONFIG; +		 +		$query = " +			DELETE  +			from {$CONFIG->dbprefix}metastrings where  +			(  +				(id not in (select name_id from {$CONFIG->dbprefix}metadata)) AND  +				(id not in (select value_id from {$CONFIG->dbprefix}metadata)) AND  +				(id not in (select name_id from {$CONFIG->dbprefix}annotations)) AND  +				(id not in (select value_id from {$CONFIG->dbprefix}annotations))    +			)"; +			 +		return delete_data($query); +	} +	  ?>
\ No newline at end of file | 
