|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Используется 11.50FC9 x64 на Srv2008R2 x64. Давно все настроено, работает и есть не просит. Нагрузка не большая - меньше 100 одновременных сессий. Сегодня вдруг сервер перестал принимать коннекты. Телнетом локально пробовали к нему подключиться - нет коннекта. Сервер перезагрузили, не помогло. Вызвонили меня, пока я добрался до сервера - все уже работает. Посмотрел сервер лог - все чисто, единственное, что бросилось в глаза, когда сервер не отвечал, в логе между чекпойнтами увеличено время. Начиная с 16:35 время между чекпойнтами растянуто. В 16:55 - то же самое. Начиная с 17:21 все, вроде, ок. Вопрос, что делать? Как проверить чем сервер занимался в это время, и что надо сделать, чтобы подобное не повторялось? Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90.
... |
|||
:
Нравится:
Не нравится:
|
|||
09.12.2013, 18:16 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
falcon111Сервер перезагрузили, не помогло. В логе не видно, что сервер перезагружали ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2013, 11:06 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Ситуация один-в-один! Используем IDS 11.70FC4 (Проверяли и на 11.70FC7). Настроены 2 подключения по olsoctcp и drsoctcp. В какой-то момент по drda остаются доступны только select`ы. olsoc лежит мертво - ни dbacces, ни esqleditor, ни ilogin не подключаются. Внешне все выглядит так: 1. onstat - дает online 2. onparams без параметров пишет после таймаута - шаред мемори не инициализирована 3. telnet на оба порта подключается! 4. в log журнале как и у автора - только список чекпоинтов, причем последний 20-30-40 минут назад. хотя до этого каждые 5 минут был отчет. 5. onstat с различными ключами - ничего криминального. все в пределах нормы. 6. В мониторе windows - нет никакой дисковой активности на datadbs. была замечена непродолжительное время и незначительная на tempdbs. Память и CPU на oninit тоже без активности. 7. Во время одного из разбирательств сервер ожил(!) сам. В логе ничего не появилось. 8. Заметили, что все же активнее уходит в себя в моменты пиковой активности в течение рабочего дня. Вечером вроде не проявляется. Хотя в логе за ночь тоже присутствуют окна в 15-25 минут между чекпоинтами. То есть он уходит сам в себя на достаточно продолжительное время. Внешне никак это не обозначает и выяснить что же там происходит пока не можем. Проблема резко всплыла после новогодних праздников, но и в декабре похоже были звоночки. До этого как и у автора - работало год-два. А тут две ужасных недели --- каждые час-полтора приходится перестартовывать службу - заказчик уже нервничает. Мы не можем понять причин. Кстати остановка службы при перезапуске происходит минут 5-7. falcon111, чем все закончилось у вас? Встречаются еще упоминания о данной ситуации http://www.dbtalk.net/comp-databases-informix/problems-long-checkpoints-664021.html но никакой конкретики. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2014, 23:27 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Возможно не в тему, но как-то вызвали у 11.50FC8W2 задумчивые тормоза и уходы в астрал вот точно с такими же отходняками как включили во встроеном шедулере автоапдейт статистики. Неделя ахтунга, но как сообразили и отключили - жопа закончилась разом. Были там пропуски чекпоинтов или не не помню. Но коннектиться давал. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.01.2014, 22:43 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Яковлев Павел, тоже сталкивались с этим, поэтому его останавливаем 20:49:56 On-Line Mode 20:49:57 SCHAPI: "INFORMIXDIR/etc/sysadmin/stop" file is present. Bypassing dbScheduler and dbWorker threads startup. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 09:45 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Что было сделано: 1) в CONFIG включен RTO: RTO_SERVER_RESTART 300 2) у всех клиентов (3 клиента - 2 по olsoctcp, 1 по drda) выставлено время жизни сессии в пуле соединений клиента 30 сек. Было где-то 60 (умолчание), где-то 1800. Что получили: 1) ухода в себя нет. сервер работает и обслуживает всех клиентов. вроде радость, но: 2) в логе и по onstat -g ckp нет чекпоинтов. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
То есть первая половина рабочего дня понедельника не чекпоинтилась. Решили сделать принудительный сброс onmode -c. Запустили в 10:45. Сейчас уже 11:10. Команда выполняется. Мы стали волноваться. onstat -g iof Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
Данные у нас в этом инстансе лежат в root (также как и физ.лог и лог.лог). Значение writes (предпоследняя цифра) у rootdbs растет все это время. В планах есть разделить rootdbs на root, data, plog и llog. А сейчас конечно непонятно по кому идет активность. Пока писал onmode -c продолжает работать (время 11:30) Собственно этим постом хотел спросить: 1) Что происходит? 2) Как посмотреть что происходит? 3) Что будет если перезапустить информикс? Архив ночной есть. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 11:21 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Итак прошел час (11:45) после запуска команды Код: sql 1.
и все --- сервер ушел в себя со всеми описанными выше симптомами: 1) телнеты на оба порта (olsoctcp и drsoctcp) подключаются 2) дисковой активности через монитор Windows - 0 3) С начала запуска сервера (вчера вечером) заполнилось 7 логических журналов по 100мб из 51. 4) коннект на порт olsoctcp не идет ни откуда. 5) коннект по drda с клиента идет! Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32.
Есть снятый лог Код: sql 1.
на момент ухода сервера в себя. Еще примечательный момент - сессии зависли и не освобождаются. Хотя в пуле клиента они уже явно просрочены: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 12:07 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_torero... Нагрузка не большая - меньше 100 одновременных сессий... Собственно этим постом хотел спросить: 1) Что происходит? 2) Как посмотреть что происходит? 3) Что будет если перезапустить информикс? Архив ночной есть. Рискну предположить, что нагрузка таки есть. В процессе синхронизации буферов с чанками данные от клиентов продолжают поступать. Другими словами, скорость поступления данных выше скорости сброса буферов на диск. В какой-то момент данных скапливается так много, и поскольку Informix отдает приоритет процессу обработки контрольной точки, обработка поступающих данных прекращается, становятся возможны только селекты, модификация данных невозможна, что и происходит у вас периодически. Посмотреть, что происходит, можно командами onstat -d, onstat -F, onstat -g seg, onstat -u, onstat -g ses. Рекомендую найти сессию, которая активно вставляет или модифицирует данные на сервере. Инстанс лучше не перезапускать, есть риск потери данных со времени последнего архива. После завершения чекпоинта надо будет посмотреть onstat -g ckp и вывод из журнала сообщений. Там должны быть полезные рекомендации. Следовать им необязательно, но определенные выводы сделать можно. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 12:12 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
дополнительная информация на 12:10 1) в логах клиента который одновременно работает по olsoctcp и drda ошибки на модификацию (транзакцию) пошли сразу после команды onmode -c. 2) подключение по drda все еще идет! ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 12:19 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
victor16, 1) нагрузки нет. клиенты судя по логам и нашим попыткам зайти в клиентское приложение просто не могут проконнектиться по olsoctcp. По drda при этом коннект проходит. Но по drda идет только выборка без модификаций. 2) Сессии я приводил выше - они заморозились на момент недоступности сервера. Сейчас (12:23) проверил - они все на месте. 3) Запросы неоднократно профилировали и трейсили - система картотечная - нет длинных вставок, удалений или модификаций, свойственных аналитическим задачам. (мы на запросы сразу начали думать, как столкнулись с таким поведением. сейчас тоже допускаем конечно же их вину, но уже гипотетически. ) 4) С другой стороны- что может "натворить" запрос? Длинный insert переполнит логи и будет long transaction aborted - но это явное и прогнозируемое поведение. и проблемы будут у конкретной сессии. мы искусственно вызывали такое поведение - сервер стоял как ни в чем ни бывало. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38.
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107.
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49.
Запросы в висящих сессиях замерли на создании индексов - пытались поиск в системе сделать. Ничего криминального. Поиск сделан через временную таблицу. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 12:34 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_torerob8794cb8 Y--P--- 164 portal SZAPP-SO ba569870 0 2 146113 185714 Аномально высокое по сравнение с другими сессиями значение nwrites. Покажите onstat -g ses 164 _toreroЗапросы в висящих сессиях замерли на создании индексов - пытались поиск в системе сделать. Ничего криминального. Поиск сделан через временную таблицу. Вы индексы создаете на временную таблицу или постоянную? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 12:48 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
victor16, индексы на временную таблицу. Мы отключали создание этих индексов - изменений не было (то есть все-равно сервер был недоступен). Под "Поиск" в предыдущем сообщении - имел ввиду некую прикладную функцию поиска сущностей в базе - набор select и update через временную таблицу. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 13:04 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_torero, насколько быстро заполняются физический и логический журналы? покажите onstat -l с интервалом, скажем в 10-15 секунд ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 13:10 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
victor16, самое главное забыл сказать по 164 сессии: пользователь portal - это пользователь, под которым подключается пул приложений IIS веб-сервера. То есть за ним стоит работа десятков реальных людей. Тогда пара слов об архитектуре: 1) Клиентами базы являются 2 клиентских приложения, расположенные на двух разных хостах 2) Первый клиент подключается и работает полностью через olsoctcp - это Winforms клиент, использующий провайдер IBM.Data.Informix.dll. Пользователи этого клиента подключаются к БД каждый своим логином. 3) Второй клиент - это сайт. Использует для подключения и работы два протокола: - olsoctcp напрямую через провайдер IBM.Data.Informix.dll (в приложении на этом построена прямая работа через SQL: вся модификация данных и часть select-ов) - drsoctcp для работы EntityFramework через DataServerData package (v9.7fp4_ntx64_dsdriver_ALL_LANG.exe) (в приложении на этом построена только часть выборки данных. модификация данных не производится). Пользователи второго клиента подключаются к базе от имени пользователя portal. авторизация выполняется не средствами СУБД, а самим приложением. По лог журналам: вот вырезка из лога за сегодня 27.01.2014: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
Других строчек нет. По логам сейчас движения нет - клиенты все еще не могут работать по olsoctcp Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66.
По состоянию на 13:20 сервер к нам не вернулся. Решаем вопрос принудительного перезапуска windows службы. Подключение по drda все также работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 13:23 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_torero, а что показывает onstat -g act, onstat -g rea лучше не один срез во времени, а несколько с интервалом 2-3 сек ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 13:28 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
victor16, Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47.
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 13:46 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_torero, стоп, да у вас ничего не выполняется, нет ни одной нити в состоянии running, кроме листенеров. сколько у вас физических процессоров на сервере? какое количество процессоров Informix выделено под них (onstat -g cpu)? привязаны ли они к физическим процессорам (affinity)? ну и так, на всякий случай: какое значение параметра LOG_INDEX_BUILDS выполняется ли периодически команда onmode -F для освобождения неиспользуемой памяти? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 13:56 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
victor16, Да, с 10:45 сервер после onmode -c вот в таком состоянии. На сервере 2 CPU, 16 ядер. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122.
из CONFIG: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
команда onmode -F не выполняется. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 14:07 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_torero, покажите еще onstat -k, почему-то слишком много wait-еров в выводе onstat -u ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 14:22 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
В 14:17 перезапустили win службу с инстансом. В 14:26 служба остановлена. В логе не появилось ни строчки. Запустили заново. Вот лог информикса после запуска (захватил предыдущий запуск): Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102.
Сервер накатил 97932 транзакции. Откатил 4 - видимо те, кому не повезло в момент, когда мы дали onmode -c Еще дополнительный факт: Утром был запущен eSQLeditor. Код: sql 1. 2. 3.
То есть начиная с 10:45 подключения по olsoctcp не проходили, но уже подключенный eSQLeditor выполняло запросы select. Вот ошибки клиентов: Код: sql 1.
Код: sql 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 14:32 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_torero, вам повезло, что сервер поднялся. Какой командой глушится сервер? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 14:45 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_torero, у Вас, похоже, проблемы связаны с ограничениями для бесплатной версии. Там есть ограничения и по количеству используемой памяти, и по количеству одновременно открытых сессий и по размеру пространств. Точнее могут сказать в техсаппорте или те, кто устанавливал Вам эту систему. Единственное, что могу посоветовать в Вашей ситуации: 1. Сделать апгрейд на 11.70FC8IE 2. Разнести журналы, данные и индексы по разным дискам. 3. Создать временное пространство. 4. Вернуть на место параметр RTO (т.е. отключить) 5. Уменьшить количество используемой памяти 6. Уменьшить значения lru_min_dirty, lru_max_dirty 7. Изменить логику приложений, исключив дорогостоящие операции типа CREATE INDEX. 8. Если п.7 невозможен, рассмотрите возможность создания временных таблиц без журналирования ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 14:57 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
victor16, системы ставили мы. Про ограничения бесплатной версии знаем. И до этого сервер открыто нам говорил об этом. Вот эксперименты от 20.01.2014: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
1. Пытались перейти на 11.70FC7, но остановились после сообщения о баге: http://www.sql.ru/forum/1072455/ostorozhno-bag 2. Журналы создадим. 3. Что за временное пространство? tempdbs? 4. Отключим 5. Уменьшить количество используемой памяти - то есть уменьшить буферы? 6. Уменьшить значения lru_min_dirty, lru_max_dirty. До каких для примера? 7. Временные таблицы мы всегда создаем с with no log 15:05 Однако сервер опять ушел в себя! Пошли смотреть, что там ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 15:14 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_torerovictor16, Пытались перейти на 11.70FC7, но остановились после сообщения о баге: http://www.sql.ru/forum/1072455/ostorozhno-bag Workaround здесь очевиден: 1. как можно быстрее закрыть транзакцию в 1-й сессии 2. Не делать insert без открытия транзакции во 2-й сессии _toreroЧто за временное пространство? tempdbs? Да, создавать через onspaces с опцией -t _toreroУменьшить количество используемой памяти - то есть уменьшить буферы? Уменьшить значения lru_min_dirty, lru_max_dirty. До каких для примера? Все будет зависеть от длительности контрольной точки. Уменьшать параметры до приемлемой ее длительности. На сильно нагруженных системах иногда доходило до значений 1-2 а то и меньше. _torero15:05 Однако сервер опять ушел в себя! Пошли смотреть, что там Давайте посмотрим. Для начала нужен снова вывод onstat -d, onstat -g ses, onstat -u, onstat -k, onstat -l, onstat -F, onstat -g act, onstat -g rea ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 15:47 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Сразу после перезапуска он еще раз ушел в себя достаточно быстро. Перед запуском внесли изменения в CONFIG: Код: sql 1. 2. 3. 4. 5. 6. 7. 8.
На данный момент инстанс работает. В 15:55 дал команду onmode -c. Чекпоинт прошел только в 16:15. Тут же дал еще раз onmode -c --- чекпоинт прошел быстро. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 16:25 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
victor16, Для начала нужен снова вывод onstat -d, onstat -g ses, onstat -u, onstat -k, onstat -l, onstat -F, onstat -g act, onstat -g rea Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35.
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43.
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70.
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Код: sql 1. 2. 3. 4. 5. 6. 7.
Уже конец рабочего дня - активности нет как днем. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 16:31 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_torero, радует уже, что onmode -c смог завершиться в приемлемое время. Далее: уменьшить интервал между контрольными точками, для начала до 3 минут. уменьшить lru_min_dirty/lru_max_dirty для начала 30/40. В onstat -g ckp четко виден резкий рост количества грязных буферов, что говорит о нарастании транзакционной активности во времени. покажите еще onstat -P ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 16:48 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. 242. 243. 244. 245. 246. 247. 248. 249. 250. 251. 252. 253. 254. 255. 256. 257. 258. 259. 260. 261. 262. 263. 264. 265. 266. 267. 268. 269. 270. 271. 272. 273. 274. 275. 276. 277. 278. 279. 280. 281. 282. 283. 284. 285. 286. 287. 288. 289. 290. 291. 292. 293. 294. 295. 296. 297. 298. 299. 300. 301. 302. 303. 304. 305. 306. 307. 308. 309. 310. 311. 312. 313. 314. 315. 316. 317. 318. 319. 320. 321. 322. 323. 324. 325. 326. 327. 328. 329. 330. 331. 332. 333. 334. 335. 336. 337. 338. 339. 340. 341. 342. 343. 344. 345. 346. 347. 348. 349. 350. 351. 352. 353. 354. 355. 356. 357. 358. 359. 360. 361. 362. 363. 364. 365.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 16:50 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
victor16_torero, В onstat -g ckp четко виден резкий рост количества грязных буферов, что говорит о нарастании транзакционной активности во времени. Это может быть вызвано массовым обращением пользователей после недоступности системы - кинулись вводить данные, пока система работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 16:53 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_torero, можно еще раз показать onstat -g ckp, onstat -F, onstat -P (последние строки) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 17:02 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29.
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 17:16 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_torero, еще раз onstat -p (p маленькое) плюс еще раз команды: onstat -g ckp, onstat -F (начальные строки до address), onstat -P (последние строки, начиная с Totals:) Хотя уже сейчас можно сказать, похоже, что с такой нагрузкой сервер справляется. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 17:26 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33.
Код: sql 1. 2. 3. 4.
Код: sql 1. 2. 3. 4. 5. 6. 7. 8.
все ушли домой. самое интересное начнется с утра и ближе к обеду. вечером перестартую инстанс, чтобы задействовать 3х минутный чекпоинт и lru 30|40 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 17:39 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_toreroсамое интересное начнется с утра и ближе к обеду. вечером перестартую инстанс, чтобы задействовать 3х минутный чекпоинт и lru 30|40 Удачи Вам завтра, следите, чтобы не рос процент занятости физического журнала (onstat -l). Подумайте также, как вынести физический и логические журналы на отдельные диски, желательно пошустрее, желательно в центр диска (подбирается смещением с начала диска), не беда, если края дисков совсем не будут использоваться. Неплохо также разделить данные и индексы. Еще мне кажется не совсем верным архитектурным решением создавать крупные индексы в приложении. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 17:51 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
victor16, спасибо за участие! ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 20:05 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
falcon111В 15:55 дал команду onmode -c. Чекпоинт прошел только в 16:15. Тут же дал еще раз onmode -c --- чекпоинт прошел быстро. Диски не проверяли? Если rootdbs не очень большой, то попробуйте остановить сервер, сделать копию файла с rootdbs (вряд-ли под windows вы использовали raw dbs), переименовать исходный, переименовать копию в исходный, запустить сервер. Проверьте сообщения от raid-а: может он в это время регенерирует. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 21:28 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
bk0010, Хронология событий: 1. После НГ в первый день нас завалили звонками - не работает. 2. Разбирались несколько дней - таких симптомов раньше не видели. Только на второй-третий день обратили внимание на низкую дисковую скорость. 3. В утилите контроллера было сообщение "не работает аккумулятор контроллера". Поменяли с другой идентичной железки на заранее исправную. Ошибка не исчезла. В то же время на втором ошибка не появилась. 4. Поменяли контроллеры местами - ошибка исчезла на обоих серверах. 5. Выгрузили БД. 6. Переинициализировали инстанс, тк на фоне непонимания происходящего было недоверие в корректности содержимого чанков. 7. Сейчас вторая неделя поиска причин. 8. Параллельно на этой же машине создан второй инстанс для другой системы. С ним проблем нет и близко таких. Пользовательская нагрузка на эту систему на порядок ниже. Настройки config для обеих систем одинаковые. Сейчас немного разошлись, но не принципиально. Сейчас через планировщик windows настроил каждые 5 минут запись с файл результата команд: onstat -g ckp >> %fn% onstat -P >> %fn% onstat -p >> %fn% onstat -F >> %fn% onstat -g seg >> %fn% onstat -u >> %fn% onstat -g sql >> %fn% onstat -g ses >> %fn% onstat -l >> %fn% onstat -g act >> %fn% onstat -g rea >> %fn% onstat -g cpu >> %fn% onstat -k >> %fn% onstat -g glo >> %fn% onstat -g iof >> %fn% onstat -d >> %fn% onstat -m >> %fn% onparams >> %fn% Пока все работает. Ждем зависания. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 09:18 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Последние новости: Сегодня до 13:50 работал не падал. Активность была ниже, чем обычно, но все же. Обнаружили, что один запрос в новом обновлении от 24.01.2014 был с into temp без with no log; Добавили в config TEMPTAB_NOLOG 1 и перезапустили инстанс. Он завис через 10 минут с теми же симптомами! То есть работал с утра и не дрогнул, а тут после перезагрузки не вытерпел и 10 минут. До перезапуска с ночи есть логи выполнения ряда команд через каждые 5 минут. Например вот: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 14:32 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_toreroНапример вот: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36.
Следующий чекпоинт по интервалу у вас должен был быть в ~ 13:47:34, но его нет в 13:50:00. При этом сервер находится в состоянии CKPT INP. В этот момент хорошо бы посмотреть количество грязных страниц ( несколько раз ) onstat -R ( в конце). ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 15:59 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Ikir, в последний раз мы слишком быстро его перезапустили - он успел ожить! вот сейчас в 16:12 он завис со всеми обычными симптомами, но мы решили не спешить и посмотреть. Он жил(!) через 2 минуты: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36.
Вот чем он интересно занимался до 16:13:33?! Есть в логах все снимки команд с интервалом 5 минут до и после. Команды onstat -R не было еще до этого - добавил сейчас. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29.
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29.
А вот в логе ostat -m интересную ошибку заметили: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 16:27 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_toreroВот чем он интересно занимался до 16:13:33?! Все ж показано. Чекпоионт длился 114.2 секунд, из них сброс буферного пула 114.2 секунд. Причем количество сброшенных буферов меньше чем при обычной нагрузке - 252 Скорость сброса тоже резко ниже, чем обычно. Ищите причину в дисковой подсистеме. Можно было бы посмотреть onstat -g ioq, но смысла большого нет, у Вас всего два чанка. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 16:38 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_toreroВот чем он интересно занимался до 16:13:33?! Так понятно чем - отрабатывал чекпоинт. 2034 16:08:37 CKPTINTVL 4923:0x1dc2018 0.2 0.0 0.0 0 0.0 0.0 0.0 715 715 516 2 562 3 2035 16:13:33 CKPTINTVL 4923:0x1de6018 114.2 114.2 0.0 0 0.0 0.0 0.0 252 2 241 1 36 0 Чекпоинт 2035 у вас должен был быть в ~ 16.11.37 . Сервер честно начал его отрабатывать, грязных страниц немного - 252, НО скорость сброса упала до 2 страниц в секунду!!! Вот он и отрабатывал его почти 2 минуты. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 16:42 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Я имел ввиду чем он занимался во время чекпоинта, что он длился так долго в сравнении с другими. Ну или другими словами, кто виноват и что делать? Пробовать съехать на другие сервера? Есть другие системы, но под 11.50. Имеет смысл делать даунгрейд с 11.70 на 11.50 и проверить там? В 11.70 уже задействовали новые диалекты SQL, но при желании можно от них уйти. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 16:58 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_toreroПробовать съехать на другие сервера? Сначала попробуйте съехать на другой диск или на другое место на этом диске: возможно у вас есть бэдблоки. Попробуйте вынести Logical log и PhysLog в отдельные dbspace-ы. Попробуйте деинсталлировать антивирус (именно деинсталлировать: некоторые из них продолжают гадить и после отключения) или отключить программу shadow copy, если таковые есть на сервере. Наконец шаманский совет: дайте команду update statistics на рабочие БД, я сталкивался с тем, что после нее Informix переставал чудить. Это все гораздо быстрее, чем переход на новый сервер. Еще вариант: средствами VMWare сделайте виртуальный образ вашего сервера и пусть пользователи работают с ним, пока вы решаете проблемы с самим сервером. Потом ontape-ом все быстро перенесете. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 21:07 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
С запозданием, но немного теории контроллеро-строения. "Батарейка" у вас может быть - или набором суперконденсаторов (в свежих моделях) и тогда оно или работает или не работает и его надо менять - или аккумулятором и тогда цирк усложняется Если аккумулятор реально сдох, то производительность будет постоянно низкой (ниже напишу почему). Но контроллеры ныне умные и они переодически треннеруют аккумулятор специально разряжая его до минимума и заряжая обратно - и аккумулятору разминка и контроллер понимаем его реальный объем. Так вот на время "треннировки" производительность тоже падает. А падает она за счёт того, то при работающем аккумуляторе и правильной настройке контроллера (и даже каждого тома на нём) запись идёт в режите Write-Back - контроллер отчитывается ОС что данные записал, а сам их в кэш (для сохранности которого при пропаже питания и нужен аккумулятор) и на диски сбросит потом (несколько секунд спустя и более оптимальным образом). Когда же на аккумулятор рассчитывать нельзя, контроллер автоматически на это время переходит в режим Write-Through - ответ о записи уйдёт в ОС только после реальной записи на диски (кэши самих дисков должены быть всегда выключены в любом случае !!!). Вот от этого и бывает адская разница в производительности вообще и при больших записях в частности. Но в картину не укладывается тем, что проблемы у вас часто - треннеровку батарей контроллеры (с которыми имею дело) производят где-то раз в месяц и это настраивается пользователям. В целом стоит посмотреть логи контроллера на предмет треннировки батареи, патрульного чтения и проверки целостности рейда, тайм-аутов операций (контроллер при этом ещё считает диск живым хотя это тормозит работу системы). Напишите что за контроллер и что за батарейка и какое точно сообщение было. Напишите что в логах контроллера (при этом проверьте что время на контроллере синхронно с системы. а то часто оно там своей жизнью живёт). ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 23:02 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
bk0010, виртуальную машину уже подняли. готовим переезд. сначала протестируем - осмотримся. потом перекинем на нее нагрузку. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 23:42 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Яковлев Павел, Контроллер Smart Array P410i in Embedded Slot Сервер покупался в 2011 году. вот весь лог Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 23:55 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Сейчас в 10:48 опять замер чекпоинт Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36.
В CONFIG стоит сейчас BUFFERPOOL default,buffers=50000,lrus=8,lru_min_dirty=30.00,lru_max_dirty=40.00 BUFFERPOOL size=4K,buffers=50000,lrus=8,lru_min_dirty=30.00,lru_max_dirty=40.00 Хотим поставить BUFFERPOOL default,buffers=50000,lrus=8,lru_min_dirty=10.00,lru_max_dirty=15.00 BUFFERPOOL size=4K,buffers=50000,lrus=8,lru_min_dirty=10.00,lru_max_dirty=15.00 Потому что это пока единственный параметр, который уменьшил время чекпоинта и позволил системе оставаться на ногах. И опять у нас непонимание, почему ни с того ни с сего возникли проблемы именно в этом месте. До этого сегодня были и более объемные чекпоинты. И все это на фоне успешно работающего второго инстанса. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 10:57 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_torero, Вам уже несколько раз объясняли, что момент зависания объясняется слишком медленным сбросом буферного пула на диск во время выполнения контрольной точки. Вариантов два: 1. Уменьшить объем работы, другими словами уменьшить количество грязных страниц. Это достигается не только уменьшением lru_max_dirty/lru_min_dirty но и другими методами, можно погуглить на тему "уменьшение времени контрольной точки". 2. Более кардинальный способ, разобраться с дисковой подсистемой, почему запись на диск временами у Вас идет столь медленно. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 11:34 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
victor16, последний вопрос был уже скорее риторический. Сейчас чанки перемещены на другой логический диск, то есть в другую физическую часть диска - нужно в этих условиях понаблюдать. Оба предложения понятны и очевидны, но 1) Количество грязных страниц в длинном чекпоинте не сильно отличается и даже меньше некоторых чекпоинтов ранее. Тут происходит именно резкое снижение скорости сброса на диск. Понятно, что чем больше грязных страниц, тем дольше будет чекпоинт, но ведь не должна скорость сброса на диск зависеть от числа грязных буферов. Я ведь правильно понимаю? 2) С контроллером готовимся разобраться глобально - уехать на виртуалку. Но уже сейчас тоже противоречие: с одной стороны резкое падение скорости сброса грязных страниц, которое длится 2-3 минуты (это сейчас, а раньше часы). То есть предположение, что контроллер виноват. Тогда это общесистемная проблема всего хоста и вся работа должна быть парализована? Но второй инстанс, на котором работает другая клиентская программа, в этот момент полностью доступен и потери производительности замечено не было. И смотрели дисковую активность в журнале Windows на oninit.exe - она нулевая. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 13:05 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
перенос на другой диск не помог. Уже 13:52, а чекпоинт ожидался в 13:21 Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37.
Код: sql 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 13:55 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_torero, А вот эти сообщения вас не смущают? причем дважды в течении дня Код: html 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 14:36 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
пока батарейку не замените , кеширование на запись не будет ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 14:42 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_torerobk0010, Хронология событий: 1. После НГ в первый день нас завалили звонками - не работает. 2. Разбирались несколько дней - таких симптомов раньше не видели. Только на второй-третий день обратили внимание на низкую дисковую скорость. 3. В утилите контроллера было сообщение "не работает аккумулятор контроллера". Поменяли с другой идентичной железки на заранее исправную. Ошибка не исчезла. В то же время на втором ошибка не появилась. 4. Поменяли контроллеры местами - ошибка исчезла на обоих серверах. 5. Выгрузили БД. 6. Переинициализировали инстанс, тк на фоне непонимания происходящего было недоверие в корректности содержимого чанков. 7. Сейчас вторая неделя поиска причин. 8. Параллельно на этой же машине создан второй инстанс для другой системы. С ним проблем нет и близко таких. Пользовательская нагрузка на эту систему на порядок ниже. Настройки config для обеих систем одинаковые. Сейчас немного разошлись, но не принципиально. 15.01.2014 проблема с контроллером решена заменой на аналогичный. В логах больше ничего не появилось ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 17:18 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Проблема найдена. Всем спасибо за участие в ее решении. На фоне явных проблем с железом и попыток исключить эту составляющую нами не прекращались поиски проблем в самой программе. Найден запрос, который валит сервер: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186.
Этот запрос сгенерирован ORM EntityFramework из linq Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
Помимо объектов из контекста базы данных в join соединении участвует список ключей plans. ORM его преобразовала в множество подзапросов к systables. Причем чем больше мощность множества, тем больше подзапросов к systables. После этого запроса сервер останавливается 10 минут. Умирает сразу. Чекпоинт попал под внимание, тк он выполняется часто и первым попадал под зависание. Свою часть темы закрываю. За эти дни я и мои коллеги узнали что-то новое за более чем 15 лет работы с информиксом. Было интересно. Еще раз спасибо! ps. и все таки странно, что informix позволил пользовательскому запросу так глубоко парализовать работу субд, что даже подключиться к БД в новой сессии невозможно. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 22:38 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Однако я угадал :) _torero15.01.2014 проблема с контроллером решена заменой на аналогичный. В логах больше ничего не появилось Круть :) Но достаточно было только батарейку :) Производительность вернулась ? Надо заказывать новую батарейку, так как раз он так часто начал её заряжать, то каюк. Вообще "батарейки" которые аккумуляторы имеют срок жизни всего 2-3 года. Я бы провёл переучёт и заменил все пожилые батарейки. Не нашёл с ходу чей контроллер HP выдаёт за свой - наверняка LSI или Adaptec. Если напишите pci-id (lspci и lspci -n), то можно посмотреть чья батарейка вам подойдёт ибо "фирменная" от HP должна стоить дофига :) И ещё немного про контроллеры - на случай когда вы готовы рискнуть целостностью данных в большинстве контроллеров есть настройка "не переключаться на Write-Through при отсутстивии батарейки". Но включать без совсем крайней нужны не стоит. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 22:39 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
"ps. и все таки странно, что informix позволил пользовательскому запросу так глубоко парализовать работу субд, что даже подключиться к БД в новой сессии невозможно. " ужас какой-то ! изучайте материальную часть , и не фиг пинать на зеркало , что фейсбук кривой. у вас железо дохнет , субд не оптимизирован - а вы всё зеркало пинаете . ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 23:04 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Яковлев Павел, сначала меняли батарейку на заведомо исправную. "неисправную" поставили на донора. В результате на доноре "неисправная" стала нормальной. А новая исправная тоже стала "неисправной". Поменяли контроллеры между двумя одинаковыми серверами - ошибка везде исчезла. Мы уже рекомендовали заказчику закупить в запас этих батареек. Серверам действительно уже третий год. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 23:05 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_toreroЯковлев Павел, сначала меняли батарейку на заведомо исправную. "неисправную" поставили на донора. В результате на доноре "неисправная" стала нормальной. А новая исправная тоже стала "неисправной". Поменяли контроллеры между двумя одинаковыми серверами - ошибка везде исчезла. опаааа так быть не должно, может и правда контроллер... или контакт отходит из-за микротрещин.... ну или барабашка... А контроллер на базе чипа PMC-Sierra pm8011. Их продукцию ни разу не использовал. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 23:18 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
aist-psk, почему сразу ужас. во-первых, с железом проблем нет. была проблема с зарядкой батарейки. Сейчас не диагностируется. Различные тесты не выявили ни то что ошибок, даже предупреждений. Учитывая найденный проблемный запрос, версию о проблемах с железом можно полностью из рассмотрения убрать. во-вторых, субд была оптимизирована достаточно, для конкретно этой задачи. ни с быстродействием, ни с обслуживанием, ни с надежностью проблем близко не было. в-третьих, мы любим информикс и на него не пиняем. мне было бы интереснее услышать от вас предположении, почему такой запрос привел к невозможности новых подключений. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 23:18 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Яковлев Павел, мы между собой решили, что проблема контактов - окислились, запылились. За последние две недели проблем на обоих серверах нет. Говорить о более серьезных проблемах пока оснований нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 23:25 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_toreroЗа эти дни я и мои коллеги узнали что-то новое за более чем 15 лет работы с информиксом. Было интересно. Еще раз спасибо! Это еще раз доказывает простоту и надежность в эксплуатации informix. Мы бед с ним реальных не знали так долго, что он нам не давал повода его глубоко изучать. Хотя и вправду это очень интересно! ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2014, 23:51 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
_torerops. и все таки странно, что informix позволил пользовательскому запросу так глубоко парализовать работу субд, что даже подключиться к БД в новой сессии невозможно.скорее всего баг в оптимизаторе, при построении плана лочит что-то, выделяя кучу памяти. Можно попробовать перед запросом выполнить set optimization low. Завалить можно любую субд, банальным запросом: select * from огромная_таблица,огромная_таблица,огромная_таблица,огромная_таблица,огромная_таблица order by 1,2,3,4,5,6 защититься от такого сложно. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2014, 12:38 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
SELECT CAST(1 AS int) AS X FROM INFORMIX.SYSTABLES WHERE TABID=1 это не обращение к системной таблице, это просто способ создать множество из одной строки, типа select 1 from table(set{1}) или select 1 from dual ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2014, 12:41 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Drive Array - Array Accelerator Battery is charging. The Array Accelerator Cache will be enabled once the battery has been charged. это сообщение может быть если электричество выключить на час. Т.е. это нормально если у вас проблемы с питанием. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2014, 12:48 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Журавлев ДенисЗавалить можно любую субд, банальным запросом: select * from огромная_таблица,огромная_таблица,огромная_таблица,огромная_таблица,огромная_таблица order by 1,2,3,4,5,6 защититься от такого сложно. Этот запрос не валит сервер. Он ожидаемо его грузит и потребляет ресурсы. При этом: - новые соединения проходят, - onparams выводит справку по себе (в нашем случае просто запуск onparams давал shared memory not initialized) - и достаточно быстро получаем -567 SQL error: Cannot write sorted rows.-179 ISAM error: no free disk space for sort То есть все контролируемо, все ожидаемо и мы получаем вполне конкретный ответ от СУБД, что ей не понравилось. В каждый момент времени можно диагностировать потребление ресурсов. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2014, 13:57 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Журавлев ДенисSELECT CAST(1 AS int) AS X FROM INFORMIX.SYSTABLES WHERE TABID=1 это не обращение к системной таблице, это просто способ создать множество из одной строки, типа select 1 from table(set{1}) или select 1 from dual И тем не менее это таки обращение к системной таблице. Если хочется получить 1 as integer, то лучше использовать select 1 from table(set{1}) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2014, 22:16 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Журавлев ДенисМожно попробовать перед запросом выполнить set optimization low. Результат тот же - завис. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2014, 09:30 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
Выбегалло Если хочется получить 1 as integer, то лучше использовать select 1 from table(set{1}) Кто бы это рассказал ORM EntityFramework из linq )))))))) А во время выполнения этого запроса, что говорит onstat -k? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2014, 13:05 |
|
Сервер не дает коннектиться и пропускает чекпойнты
|
|||
---|---|---|---|
#18+
IkirА во время выполнения этого запроса, что говорит onstat -k? например так Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
или так Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24.
... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2014, 22:54 |
|
|
start [/forum/topic.php?all=1&fid=44&tid=1606990]: |
0ms |
get settings: |
17ms |
get forum list: |
5ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
25ms |
get topic data: |
2ms |
get forum data: |
1ms |
get page messages: |
1301ms |
get tp. blocked users: |
1ms |
others: | 5ms |
total: | 1359ms |
0 / 0 |