|
|
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
По материалам этого топега, выношу в отдельную тему. Извиняюсь, что делаю копипаст большого поста, но так лучше будет понять, о чём шла речь. dimitrпопрошу на кошках вменяемого размера пример, твой миллиард никто в здравом уме заливать не будетну так там не миллиард апдейтов было, а гораздо меньше. Просто ему тяжко было обновлять два индекса, КМК, вот он и застрял с откатами на такое время. Кому интересно - залейте у себя 200-300 млн записей в такую же таблицу: Код: plaintext 1. 2. 3. 4. 5. 6. 7. Затем делаем следующее (с предварительно запущенным трейсом): session #1 isql 192.168.99.44/3330:t10e9 -n | mtee /t isql_log.txt 12:34:43.311 Database: 192.168.99.44/3330:t10e9 12:34:43.311 SQL> set plan on; set stat on; update t set s01=s02, s02=s01; 12:36:12.592 PLAN (T NATURAL) session #2 запускаем shell-скрипт, который в цикле будет запрашивать мон-таблицы, с интервалом 10 сек. Запрос этот приведен выше в этом топеге, впрочем - вот, еще раз: askmon.sql Код: plaintext 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. askmon.sh Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. Дальше даём поработать минут 10, больше не нужно. session #3 шатдауним базу, с логированием моментов времени: db_shutdown.sh Код: plaintext 1. 2. 3. 4. Код: plaintext 1. 2. А теперь смотрим в isql-окно. У мну в нём показано вот это: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. Ну, и наконец - данные трейса. Вот старт DMl-стейтмента: 12:33:12 Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Вот я gfix'ом сказал базе "спать!": 12:43:25 Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. А вот завершение DML-откатов: 12:45:56 Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. ИТОГО: gfix -shut вернул управление, но движок после этого еще 2.5 минуты продолжал запись откатов. И еще раз повторю. Для воспроизведения сего не надо иметь таблицу в 1 млрд записей. Сделайте 200-300 млн, навесьте 2-3 индекса и запустите апдейт, включающий эти индексные поля. Дайте ему промолотить 10 минут. ЗЫ. Делал на LI-T3.0.0.30661 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 14:35:35 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
dimitr, http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=982489&msg=14868979 проверь (на FW = ON), оно может тебя удивить...Нет, никакого удивления. Всё то же самое. Дал промолотить ~10 минут, затем ткнул в шатдаун-скрипт, получил сразу же : Код: plaintext 1. 2. - а в DML-сеансе была всё та же тишина: Код: plaintext 1. 2. 3. 4. И только через 20 с лишним минут после шатдауна в окне isql'я вылезло: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Trace: шатдаун в 14:48, отвал стейтмента - в 15:10. Код: plaintext 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. ЗЫ. Теорема доказана ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 15:35:41 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
спасибо, буду разбираться. Отпишусь потом в этой теме. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 15:37:17 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
Таблоид, если не сложно, проверь еще на SC или CS. Пока мне видится, что это проблема исключительно суперсервера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 16:31:59 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
OK, отпишусь тогда сюда. Только какой кеш коннекта выставить ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 16:35:39 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
dimitrпроверь еще на SC или CS. Пока мне видится, что это проблема исключительно суперсервера.SC - синхронный. Вижу уже, что gfix -shut "не отдаёт" управление оси, пока отмотка назад не завершится. Статистики нет пока, там DML молотил почти 15 минут при FW = ON. Но и так вижу, что всё по-другому. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 17:09:23 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
очень хорошо, спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 17:16:25 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
ТаблоидСтатистики нет пока...но теперь она есть. Код: plaintext 1. 2. Trace: 1) старт DML, 16:40:16 2) облом DML, 17: 19:27 , и только после него - 3) шатдаун базы, 17: 19:40 Код: plaintext 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 17:32:12 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
Только вот что вижу на SC: запрос к мониторным (а может, и ко всем остальным) таблицам остается БЕЗ всякого отклика, как только база получила команду "ложись!" и движок выполняет отмотку назад DML-изменений. Сообщение, что база в шатдауне, появляется только в момент окончательного завершения отмотки, до этого - просто ничего не выводится (в последнем примере - все 20 минут): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 17:49:04 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
"Продолжаем разговор" (С) Тут письмо счастья пришло: "Resolved: ( CORE-4236 )" 2 dimitr: я правильно понимаю, что теперь шатдаун на SS должен быть таким же синхронным, как и на SC ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2013, 23:56:55 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
Таблоид"Продолжаем разговор" (С) Тут письмо счастья пришло: "Resolved: ( CORE-4236 )" 2 dimitr: я правильно понимаю, что теперь шатдаун на SS должен быть таким же синхронным, как и на SC ? Я, конечно, не ДЕ, но в трекере вроде написано, что However, this does not work as expected in SuperServer, reporting a successful shutdown while other connections may be still modifying the database file. This situation is possible under high load. Так что разработчики от тебя перестраховались ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2013, 00:41:58 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
miwaonlineв трекере вроде написано, что <...>я именно эту фразу ("this does not work as expected") и прочитал как "вначале было плохо, но теперь стало хорошо" (тикет ведь стал 'Resolved'). Но сомнения остались: а может, "under high load" всё равно трабл останется ?.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2013, 08:06:17 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
Таблоидя правильно понимаю, что теперь шатдаун на SS должен быть таким же синхронным, как и на SC ? по крайней мере, я на это надеюсь :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2013, 08:21:53 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
dimitrТаблоидя правильно понимаю, что теперь шатдаун на SS должен быть таким же синхронным, как и на SC ?по крайней мере, я на это надеюсь :-)Проверил на примере отсюда , а также на базе idx_under_load при молотьбе 350 коннектами - вроде бы всё пучком. При работе в арх-ре SuperServer шатдаун базы стал действительно синхронным. Возврата в ось нет до тех пор, пока не прекратятся все "отмотки взад" сделанных коннектами изменений. Код: plaintext 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. PS. LI-T3.0.0.30728 PPS. В трейсе "реверс" изменений, происходящих в связи со срубанием при шатдауне выполняющегося стейтмента, не виден. Я забыл: это так и должно быть ? trace when gfix -shut full issued Код: plaintext 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2013, 18:10:12 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
Таблоид В трейсе "реверс" изменений, происходящих в связи со срубанием при шатдауне выполняющегося стейтмента, не виден. Я забыл: это так и должно быть ? А зачем это там видеть чтобы shutdown дольше шёл? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2013, 18:17:20 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
Симонов ДенисТаблоид В трейсе "реверс" изменений, происходящих в связи со срубанием при шатдауне выполняющегося стейтмента, не виден. Я забыл: это так и должно быть ?А зачем это там видеть чтобы shutdown дольше шёл?Ну, для полноты картины как бэ... Типа "вот, смотри: видишь, сколько мне пришлось отменять изменений из-за твоего шатдауна" (речь от лица ФБ :)) И не понял я, кстати! на сколько шатдаун будет дольше идти от того, что отмотка в трейсе покажется, пусть это будет даже для 500 коннектов ? Там же речь идёт о выводе в текст нескольких тысяч строк - копейки же. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2013, 18:23:05 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
Таблоидвроде бы всё пучком ну и замечательно ТаблоидВ трейсе "реверс" изменений, происходящих в связи со срубанием при шатдауне выполняющегося стейтмента, не виден. Я забыл: это так и должно быть ? трейс не показывает откаты сейвпойнтов, шатдаун это лишь частный случай ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2013, 19:05:06 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
Off. Интересно, а абракадабровцы в своем InterBase вообще такими проблемами заморачиваются? Тикетов подобного рода в QC практически нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2013, 07:44:18 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
CyberMaxOff. Интересно, а абракадабровцы в своем InterBase вообще такими проблемами заморачиваются? Тикетов подобного рода в QC практически нет. А у них Таблоида нету ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2013, 13:12:17 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
CyberMaxOff. Интересно, а абракадабровцы в своем InterBase вообще такими проблемами заморачиваются? Тикетов подобного рода в QC практически нет.Сколько народу им пользуется, интербейсом этим ? если SQL-диалект этой СУБД не поддерживает даже derived-таблиц, то сильно подозреваю, что число её поклонников стремится к нулю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2013, 13:37:09 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
Таблоид, ну в interbase sql/psql диалект не развивали особо, зато кучу других плюшек сделали, которые обещаются только в тройке и то не все. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2013, 13:49:20 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
Симонов Денис, Например? Что будет в 3 и что не будет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2013, 14:15:00 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
CyberMax, будет: - SMP в супере - шифрование БД - шифрование трафика - Linger Database - хранение пользователей в самой БД не будет (не видел нигде в планах на тройку): - PITR - журнал транзакций - онлайн дамп Я вообще плохо знаком с IB (сужу по инфе из ibase и различным презенташкам). Точнее тебе только kdv скажет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2013, 14:29:03 |
|
||
|
gfix -shut, прерывающий bulk DML: возврат управления в ось - сразу или нет ?
|
|||
|---|---|---|---|
|
#18+
Симонов Денисонлайн дампБлизкий аналог - nbackup ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2013, 14:30:18 |
|
||
|
|

start [/forum/topic.php?fid=40&fpage=109&tid=1564138]: |
0ms |
get settings: |
9ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
56ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
1ms |
| others: | 219ms |
| total: | 385ms |

| 0 / 0 |
