Merge pull request #2945 from tobiasd/20161119-admindbwarn
Show a warning message in the admin panel when MyISAM is still in use
This commit is contained in:
commit
7ca4648ffd
4 changed files with 28 additions and 1 deletions
|
@ -428,6 +428,14 @@ function admin_page_queue(&$a) {
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
function admin_page_summary(&$a) {
|
function admin_page_summary(&$a) {
|
||||||
|
// are there MyISAM tables in the DB? If so, trigger a warning message
|
||||||
|
$r = q("SELECT `engine` FROM `information_schema`.`tables` WHERE `engine`='myisam' LIMIT 1");
|
||||||
|
$showwarning = false;
|
||||||
|
$warningtext = "";
|
||||||
|
if (dbm::is_result($r)) {
|
||||||
|
$showwarning = true;
|
||||||
|
$warningtext = sprintf(t('Your DB still runs with MyISAM tables. You should change the engine type to InnoDB. As Friendica will use InnoDB only features in the future, you should change this! See <a href="%s">here</a> for a guide that may be helpful converting the table engines. You may also use the <tt>convert_innodb.sql</tt> in the <tt>/util</tt> directory of your Friendica installation.<br />'), 'https://dev.mysql.com/doc/refman/5.7/en/converting-tables-to-innodb.html');
|
||||||
|
}
|
||||||
$r = q("SELECT `page-flags`, COUNT(`uid`) AS `count` FROM `user` GROUP BY `page-flags`");
|
$r = q("SELECT `page-flags`, COUNT(`uid`) AS `count` FROM `user` GROUP BY `page-flags`");
|
||||||
$accounts = array(
|
$accounts = array(
|
||||||
array(t('Normal Account'), 0),
|
array(t('Normal Account'), 0),
|
||||||
|
@ -478,7 +486,9 @@ function admin_page_summary(&$a) {
|
||||||
'$platform' => FRIENDICA_PLATFORM,
|
'$platform' => FRIENDICA_PLATFORM,
|
||||||
'$codename' => FRIENDICA_CODENAME,
|
'$codename' => FRIENDICA_CODENAME,
|
||||||
'$build' => get_config('system','build'),
|
'$build' => get_config('system','build'),
|
||||||
'$plugins' => array(t('Active plugins'), $a->plugins)
|
'$plugins' => array(t('Active plugins'), $a->plugins),
|
||||||
|
'$showwarning' => $showwarning,
|
||||||
|
'$warningtext' => $warningtext
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
4
util/convert_innodb.sql
Normal file
4
util/convert_innodb.sql
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
|
||||||
|
SELECT CONCAT('ALTER TABLE ',table_schema,'.',table_name,' engine=InnoDB;')
|
||||||
|
FROM information_schema.tables
|
||||||
|
WHERE engine = 'MyISAM';
|
|
@ -473,3 +473,11 @@ td.pendingnote {
|
||||||
td.pendingnote > p > span {
|
td.pendingnote > p > span {
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* warning message */
|
||||||
|
.warning-message {
|
||||||
|
padding: 10px;
|
||||||
|
margin: 5px;
|
||||||
|
border-left: 5px solid #f00;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
|
@ -1,6 +1,11 @@
|
||||||
|
|
||||||
<div id='adminpage'>
|
<div id='adminpage'>
|
||||||
<h1>{{$title}} - {{$page}}</h1>
|
<h1>{{$title}} - {{$page}}</h1>
|
||||||
|
{{if $showwarning}}
|
||||||
|
<div id="admin-warning-message-wrapper">
|
||||||
|
<p id="admin-warning-message" class="warning-message">{{$warningtext}}</p>
|
||||||
|
</div>
|
||||||
|
{{/if}}
|
||||||
|
|
||||||
<dl>
|
<dl>
|
||||||
<dt>{{$queues.label}}</dt>
|
<dt>{{$queues.label}}</dt>
|
||||||
|
|
Loading…
Reference in a new issue