Хотя обновление привело к тому, что меню основного окна теперь совершенно не соответствует тому, что было до этого.OlegM писал(а):Огромное спасибо. Помогло.C_3AXAPOB писал(а):добавьте SOURCE в таблицу pvalues
Ещё немного обновлений
Модератор: immortal
Re: Ещё немного обновлений
Re: Ещё немного обновлений
Бывает. У меня жутко бомбило одно место когда такое произошло.
Но плюсы системы перевешивают данный минус. Есть ещё один способ бороться с этой проблемой удалить файлы installed во всех папках мажордомо. Проблема на самом деле не частая, за год использования вылезала только два раза и возникала только при обновлении.
Отправлено с моего iPhone используя Tapatalk
Отправлено с моего iPhone используя Tapatalk
Orange pi pc plus, megaD-2561, Xiaomi
--------------------------------------------------
http://connect.smartliving.ru/profile/908
--------------------------------------------------
http://connect.smartliving.ru/profile/908
Re: Ещё немного обновлений
И installed чистил кстати тоже... Натанцевался короче до изжоги.
Re: Ещё немного обновлений
Код: Выделить всё
16:06:36 0.39294300 Error registered (type: sql): 1054: Unknown column 'SOURCE' in 'field list'
1054: Unknown column 'SOURCE' in 'field list'
UPDATE `pvalues` SET `ID`='87', `PROPERTY_ID`='70', `OBJECT_ID`='7', `VALUE`='1483967196',
`UPDATED`='2017-01-09 16:06:36', `PROPERTY_NAME`='ThisComputer.cycle_mainRun', `LINKED_MODULES`='',
`SOURCE`='' WHERE ID = '87' (/var/www/lib/errors.class.php) Проблема в том, что бекап базы делается раз в 15 минут, на момент сохранения поля SOURCE таблицы pvalues в последнем сохраненном файле /var/www/database_backup/db.sql не было.
Система пытается стартовать, летят ошибки, циклы не запускаются (даже вручную отказываются). Но в БД это поле SOURCE таки создается каким то скриптом.
Но! Так как циклы не работают, бекап БД тоже не делается каждые 15 минут, соответственно после перезагрузки поле снова SOURCE отсутствует, так как при старте база данных перезаписывается старым файлом db.sql.
Пришлось вручную делать экспорт всей базы с новым полем, переименовывать файл в db.sql и подменять его в папке /var/www/database_backup/db.sql
PS как это вообще выключить, чтобы база данных не переписывалась при старте? бывает даже требуется перезагрузить систему, так приходится ждать, пока скрипт сделает новый дамп, иначе изменения не сохранятся, что очень неудобно.
Re: Ещё немного обновлений
Да... Похоже нужно завязывать с обновлениями.. Это какой-то (нет слов).. При попытке вручную запустить циклы имею:
Закономерный вопрос - нахрена такие обновления?
SPOILERSPOILER_SHOW
root@raspberrypi:~# /usr/bin/php /var/www/cycle.php
Connecting to database...
CONNECTED TO DB
Running startup maintenance
Checking modules.
<?
/**
* Blank
*
*
* @package project
* @author Serge J. <[email protected]>
* @copyright http://www.smartliving.ru/ (c)
*/
//
//
class dev_rm_manage extends module {
/**
* blank
*
* Module class constructor
*
* @access private
*/
function dev_rm_manage() {
$this->name="dev_rm_manage";
$this->title="RM-Brige";
$this->module_category="<#LANG_SECTION_DEVICES#>";
$this->checkInstalled();
}
/**
* saveParams
*
* Saving module parameters
*
* @access public
*/
function saveParams() {
$p=array();
if (IsSet($this->id)) {
$p["id"]=$this->id;
}
if (IsSet($this->view_mode)) {
$p["view_mode"]=$this->view_mode;
}
if (IsSet($this->edit_mode)) {
$p["edit_mode"]=$this->edit_mode;
}
if (IsSet($this->tab)) {
$p["tab"]=$this->tab;
}
return parent::saveParams($p);
}
/**
* getParams
*
* Getting module parameters from query string
*
* @access public
*/
function getParams() {
global $id;
global $mode;
global $view_mode;
global $edit_mode;
global $tab;
if (isset($id)) {
$this->id=$id;
}
if (isset($mode)) {
$this->mode=$mode;
}
if (isset($view_mode)) {
$this->view_mode=$view_mode;
}
if (isset($edit_mode)) {
$this->edit_mode=$edit_mode;
}
if (isset($tab)) {
$this->tab=$tab;
}
}
/**
* Run
*
* Description
*
* @access public
*/
function run() {
global $session;
$out=array();
if ($this->action=='admin') {
$this->admin($out);
} else {
$this->usual($out);
}
if (IsSet($this->owner->action)) {
$out['PARENT_ACTION']=$this->owner->action;
}
if (IsSet($this->owner->name)) {
$out['PARENT_NAME']=$this->owner->name;
}
$out['VIEW_MODE']=$this->view_mode;
$out['EDIT_MODE']=$this->edit_mode;
$out['MODE']=$this->mode;
$out['ACTION']=$this->action;
if ($this->single_rec) {
$out['SINGLE_REC']=1;
}
$this->data=$out;
$p=new parser(DIR_TEMPLATES.$this->name."/".$this->name.".html", $this->data, $this);
$this->result=$p->result;
}
/**
* BackEnd
*
* Module backend
*
* @access public
*/
function admin(&$out) {
}
/**
* FrontEnd
*
* Module frontend
*
* @access public
*/
function usual(&$out) {
$this->admin($out);
}
/**
* Install
*
* Module installation routine
*
* @access private
*/
function install() {
parent::install();
}
// --------------------------------------------------------------------
}
?>root@raspberrypi:~#
Re: Ещё немного обновлений
Восстановил backup - Ошибка 500. Лучшее - враг хорошего...
Re: Ещё немного обновлений
Не обратил внимание, но по моему после обновления перестали обновляться данные с megad. Стоит несколько датчиков температуры. Температура не обновляется, пока сам не захожу и в ручную ее обновляю из majordomo в устройствах megad. Кто нибудь с этим сталкивался?
- sergejey
- Site Admin
- Сообщения: 4286
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Контактная информация:
Re: Ещё немного обновлений
В последнем обновлении при старте циклов система проверяет установку каждого из модулей -- в вашем случае ошибка запуска модуля dev_rm_manage и так подозреваю, что из-за того, что в исходном коде модуля используется <? вместо <?php и у вас выключено использование short_tags в php.ini. Как вариант "лечения" подправить php.ini и обратиться к автору модуля (это не я), чтобы он подправил исходный код.iapet писал(а):Да... Похоже нужно завязывать с обновлениями.. Это какой-то (нет слов).. При попытке вручную запустить циклы имею:Закономерный вопрос - нахрена такие обновления?SPOILERSPOILER_SHOWroot@raspberrypi:~# /usr/bin/php /var/www/cycle.php
Connecting to database...
CONNECTED TO DB
Running startup maintenance
Checking modules.
<?
/**
* Blank
*
...
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Re: Ещё немного обновлений
Да согласен в /cli/php.ini short_tags было в off. Но до обновления все работало и в такой "кривой" конфигурации.sergejey писал(а): В последнем обновлении при старте циклов система проверяет установку каждого из модулей -- в вашем случае ошибка запуска модуля dev_rm_manage и так подозреваю, что из-за того, что в исходном коде модуля используется <? вместо <?php и у вас выключено использование short_tags в php.ini. Как вариант "лечения" подправить php.ini и обратиться к автору модуля (это не я), чтобы он подправил исходный код.
- sergejey
- Site Admin
- Сообщения: 4286
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Контактная информация:
Re: Ещё немного обновлений
До обновления система при старте не проверяла структуру данных для всех установленных модулей, поэтому оно проходило. Проверка структуры добавлена для избежания ситуации с нехватающими полями после установки обновлений.iapet писал(а):Да согласен в /cli/php.ini short_tags было в off. Но до обновления все работало и в такой "кривой" конфигурации.sergejey писал(а): В последнем обновлении при старте циклов система проверяет установку каждого из модулей -- в вашем случае ошибка запуска модуля dev_rm_manage и так подозреваю, что из-за того, что в исходном коде модуля используется <? вместо <?php и у вас выключено использование short_tags в php.ini. Как вариант "лечения" подправить php.ini и обратиться к автору модуля (это не я), чтобы он подправил исходный код.
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги