Обновление 2.4.0 - ошибки и решения

#16 30 декабря 2015 в 23:24

Ваш сайт (в подписи), на данный момент отдает ошибку сервера. Поэтому в логах апача точно должны быть сведения, о том, что вызывает ошибку.

solntsev
Да, сейчас я его из бэкапа достаю просто, на сегодня мучаться устал(
#17 30 декабря 2015 в 23:53
Кеширование отключено, режим отладки включён. После обновления выдаёт:
Ошибка в запросе БД:
Unknown column 'seo_title' in 'cms_con_places'
ALTER TABLE `cms_con_places` CHANGE `seo_title` `seo_title` VARCHAR( 256 ) NULL DEFAULT NULL;
На что SQL отвечает:
Ответ MySQL:
#1054 — Unknown column 'seo_title' in 'cms_con_places'
А в это время, если зайти на сайт, получаем белый экран и ошибку в error_log:
PHP Fatal error: Allowed memory size of 67108864 bytes exhausted (tried to allocate 523800 bytes) in /public_html/system/core/model.php on line 1560
Выключаем сайт в админке и вместо белого экрана появляется заглушка и можно войти в админку и спокойно бродить по сайту.
#18 31 декабря 2015 в 00:02


Кеширование отключено, режим отладки включён. После обновления выдаёт:

Ошибка в запросе БД:
Unknown column 'seo_title' in 'cms_con_places'
ALTER TABLE `cms_con_places` CHANGE `seo_title` `seo_title` VARCHAR( 256 ) NULL DEFAULT NULL;
На что SQL отвечает:
Ответ MySQL:
#1054 — Unknown column 'seo_title' in 'cms_con_places'

kurusman
Ответ здесь.
#19 31 декабря 2015 в 00:31
С rss кто-нибудь решил проблему?


Настройки ленты. Как видно, cms шаблоны ленты видит.

Но на сайте лента выводится так

В режиме отладки ошибка такая

#20 31 декабря 2015 в 00:37
Zau4man, вероятно, при обновлении не создалось поле template в таблице rss_feeds. Может пересохранение настроек ленты решит проблему?
  1. ALTER TABLE `cms_rss_feeds` ADD `template` VARCHAR(30) NOT NULL DEFAULT 'feed' COMMENT 'Шаблон ленты'
Но нужно разобраться на каком шаге обновления возникла ошибка.

После обновления выдаёт:

kurusman
instantcms.ru/novosti/release240.html#comment_87196
#21 31 декабря 2015 в 00:51
Все, у кого непосредственно процесс обновления завершился с ошибкой (вероятно это все пользователи, у кого установлен InstantMaps) восстановитесь из бекапа и попробуйте заново обновиться. Архив пакета обновления загружен новый, как раз с учетом возможного отсутствия поля seo_title.
#22 31 декабря 2015 в 01:06

вероятно, при обновлении не создалось поле template в таблице rss_feeds.

Fuze
так и есть. Запрос помог. Посмотрел файл install.php Там после добавления этого запроса еще несколько запросов. Получается, все они не выполнились.

В общем, рекомендую всем, у кого не работает рсс, откатиться назад, и искать, из-за чего обновление выдает 503 ошибку.

P.S. Посмотрел таблицу images_presets, в ней нет столбца quality. Пойду откачусь, включу лог ошибок и попробую обновиться по-новой…
#23 31 декабря 2015 в 01:19
Обновленный патч установился без проблем. Ошибок нет, все работает.
У меня не было мапса, но был самописный тип контента. И в нем было поле seo_title…
#24 31 декабря 2015 в 01:36


И в нем было поле seo_title...

Zau4man
Может скорее всего не было! Т.к. ошибка возникала, из-за отсутствия в типе контента places указанного поля.
#25 31 декабря 2015 в 02:13





  1. var icms = icms || {};
  2.  
  3. icms.datagrid = (function ($) {
  4.  
  5. this.options = {};
  6. this.selected_rows = [];
  7. this.is_loading = true;
  8. this.callback = false;
  9. this.was_init = false;
  10.  
  11. //====================================================================//
  12.  
  13. this.setOptions = function (options) {
  14. this.options = options;
  15. };
  16.  
  17. //====================================================================//
  18.  
  19. this.bind_sortable = function () {
  20. $('.datagrid th.sortable').click(function () {
  21. icms.datagrid.clickHeader($(this).attr('rel'));
  22. });
  23. };
  24. this.bind_filter = function () {
  25. $('.datagrid .filter .input').keypress(function (event) {
  26.  
  27. if (event.which == 13) {
  28.  
  29. event.preventDefault();
  30.  
  31. $('.datagrid .filter .input').each(function () {
  32. var filter = $(this).attr('rel');
  33. $('#datagrid_filter input[name=' + filter + ']').val($(this).val());
  34. });
  35.  
  36. icms.datagrid.setPage(1);
  37. icms.datagrid.loadRows();
  38.  
  39. }
  40.  
  41. });
  42. };
  43.  
  44. //====================================================================//
  45.  
  46. this.init = function () {
  47.  
  48. if (this.was_init) {
  49. return false;
  50. }
  51. this.was_init = true;
  52.  
  53. if (this.options.is_sortable) {
  54. this.bind_sortable();
  55. }
  56.  
  57. if (this.options.is_filter) {
  58. this.bind_filter();
  59. }
  60.  
  61. if (this.options.is_pagination) {
  62. $('.datagrid_resize select').change(function () {
  63. icms.datagrid.setPage(1, $(this).val());
  64. icms.datagrid.loadRows();
  65. });
  66. }
  67.  
  68. if (this.options.is_selectable) {
  69. var ctrl = false, shift = false;
  70. var tbody = $('#datagrid > tbody');
  71. var last = tbody.find('> tr:not(.filter):first');
  72. $(document).keydown(function (event) {
  73. if (event.keyCode === 16) {
  74. shift = true;
  75. $('#datagrid').disableSelection();
  76. }
  77. if (event.keyCode === 17) {
  78. ctrl = true;
  79. $('#datagrid').disableSelection();
  80. }
  81. }).keyup(function (event) {
  82. if (event.keyCode === 16) {
  83. shift = false;
  84. $('#datagrid').enableSelection();
  85. }
  86. if (event.keyCode === 17) {
  87. ctrl = false;
  88. $('#datagrid').enableSelection();
  89. }
  90. });
  91.  
  92. $(document).on('click', '#datagrid > tbody > tr:not(.filter) > td', function () {
  93. var tr = $(this).parent();
  94. /* Проверяем отсутствие строки "Нет элементов для отображения" */
  95. if ($(this).find('span.empty').length === 0) {
  96. /* и выполняем стандартный код */
  97. if (shift) {
  98. if (!last.size()) {
  99. last = tbody.find('> tr:not(.filter):first').toggleClass('selected');
  100. }
  101. var in1 = tbody.find('> tr:not(.filter)#' + tr.attr('id')).index();
  102. var in2 = tbody.find('> tr:not(.filter)#' + last.attr('id')).index();
  103. if (in1 === in2) {
  104. tr.toggleClass('selected');
  105. } else {
  106. tbody.find('> tr:not(.filter):gt(' + ((in1 < in2 ? in1 - 2 : in2 - 1)) + '):not(:gt(' + ((in1 > in2 ? (in1 - in2) : (in2 - in1)) - 1) + '))').toggleClass('selected');
  107. }
  108. } else {
  109. tr.toggleClass('selected');
  110. }
  111. }
  112. last = tr;
  113. });
  114. }
  115.  
  116. this.setOrdering();
  117.  
  118. if (this.options.url) {
  119. this.loadRows();
  120. }
  121.  
  122. };
  123.  
  124. //====================================================================//
  125.  
  126. this.submit = function (url, confirm_message) {
  127.  
  128. var selected_rows_count = this.selectedRowsCount();
  129. if (selected_rows_count == 0 && !this.options.is_draggable) {
  130. return false;
  131. }
  132.  
  133. if (typeof (confirm_message) == 'string') {
  134. if (!confirm(confirm_message)) {
  135. return false;
  136. }
  137. }
  138.  
  139. if (typeof (url) != 'string') {
  140. url = $(url).data('url');
  141. }
  142.  
  143. $('#datagrid_form').html('');
  144. $('#datagrid_form').attr('action', url);
  145.  
  146. if (selected_rows_count > 0) {
  147. $('.datagrid tbody tr.selected').each(function () {
  148. var row_id = $(this).attr('id');
  149. $('#datagrid_form').append('<input type="hidden" name="selected[]" value="' + row_id + '" />');
  150. })
  151. }
  152.  
  153. if (this.options.is_draggable) {
  154. $('.datagrid tbody tr').each(function () {
  155. var row_id = $(this).attr('id');
  156. $('#datagrid_form').append('<input type="hidden" name="items[]" value="' + row_id + '" />');
  157. })
  158. }
  159.  
  160. $('#datagrid_form').submit();
  161.  
  162. return false;
  163.  
  164. }
  165.  
  166. //====================================================================//
  167.  
  168. this.submitAjax = function (url, confirm_message) {
#26 31 декабря 2015 в 02:19
Сергей Сергеевич, что вы хотели сообщить своим постом?
#27 31 декабря 2015 в 02:24
solntsev, от версии к версии движок предлагает удалить несуществующую запись. Пустая строка успешно выделяется и якобы удаляется. В посте выше метод устранения этого.
#28 31 декабря 2015 в 02:32


solntsev, от версии к версии движок предлагает удалить несуществующую запись. Пустая строка успешно выделяется и якобы удаляется. В посте выше метод устранения этого.

Сергей Сергеевич
Может сюда тогда написать?
github.com/instantsoft/icms2/issues
#29 31 декабря 2015 в 03:06


Все, у кого непосредственно процесс обновления завершился с ошибкой (вероятно это все пользователи, у кого установлен InstantMaps) восстановитесь из бекапа и попробуйте заново обновиться. Архив пакета обновления загружен новый, как раз с учетом возможного отсутствия поля seo_title.

Fuze
У меня стоит мапс, но обновление прошло без выдачи какой либо ошибки. Вопрос, мне надо отказываться назад и снова обновляться? или на что обратить внимание?
#30 31 декабря 2015 в 07:46


У меня стоит мапс, но обновление прошло без выдачи какой либо ошибки. Вопрос, мне надо отказываться назад и снова обновляться? или на что обратить внимание?

kdv1978
У вас rss-лента работает? У многих это проявилось, в не работающей ленте.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.