|
|
|
isql -i kill_gfix_sweep.sql, коннект по TCP: I/O error during lock op, temply unavailable
|
|||
|---|---|---|---|
|
#18+
hi all Дано: 1) база, нагруженная 350 коннектами от DML-молотилок 2) запущенный трейс с конфигом: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 3.1) старт gfix -sweep в фоновом режиме (т.е. с добавлением '&' в хвост команды) 3.2) паузу в 20 сек (свип за это время никогда не соберёт мусор на этой базе и этой нагрузке) 3.3) после паузы - коннект через TCP с заданием грохнуть аттач от gfix'a (причём, именно от "живого" gfix'a, а не 'defunct'-мертвяков) 3.4) выводящий таймштамп времени *до* и *после* выполнения команды delete from mon$attachments 3.5) по завершении isql - делающий релакс на 90 сек (на всякий случай :)). Вот этот скрипт: sweep_killer.sh Код: 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. В итоге, на каждой итерации этого скрипта, начиная со второй, вижу Код: plaintext 1. 2. 3. Хотя если смотреть за списком pid для процессов с гремоп по 'gfix', то видно, что работавший gfix -sweep действительно исчезает (см под спойлером, выделено синим цветом): Код: 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. firebird.log: Код: 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. Вопрос, соб-сно, простой: почему выдаётся сообщение "Resource temporarily unavailable" ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2014, 18:57:04 |
|
||
|
isql -i kill_gfix_sweep.sql, коннект по TCP: I/O error during lock op, temply unavailable
|
|||
|---|---|---|---|
|
#18+
Таблоидпочему выдаётся сообщение "Resource temporarily unavailable" ? Возможно потому, что твоему линуксу кончился лимит открытых файлов. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2014, 20:04:02 |
|
||
|
isql -i kill_gfix_sweep.sql, коннект по TCP: I/O error during lock op, temply unavailable
|
|||
|---|---|---|---|
|
#18+
Таблоид Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2014, 20:05:33 |
|
||
|
isql -i kill_gfix_sweep.sql, коннект по TCP: I/O error during lock op, temply unavailable
|
|||
|---|---|---|---|
|
#18+
hvladТаблоид Код: plaintext Код: 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2014, 20:26:42 |
|
||
|
isql -i kill_gfix_sweep.sql, коннект по TCP: I/O error during lock op, temply unavailable
|
|||
|---|---|---|---|
|
#18+
Ну-ка еще раз смотрим. Вот временнЫе метки для первой итерации (см предыдущий пост): Код: plaintext 1. 2. 3. 4. 5. 6. И вот трейс для этой же первой итерации: Код: 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2014, 20:40:19 |
|
||
|
isql -i kill_gfix_sweep.sql, коннект по TCP: I/O error during lock op, temply unavailable
|
|||
|---|---|---|---|
|
#18+
Воспроизвёл в третий раз: живучий этот gfix -sweep когда лезет через localhost :-) Ещё и какое-то из ядер грузит на 99% Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2014, 20:52:58 |
|
||
|
isql -i kill_gfix_sweep.sql, коннект по TCP: I/O error during lock op, temply unavailable
|
|||
|---|---|---|---|
|
#18+
В общем, он на самом деле... не удаляется командой DELETE! Ибо вот, через 5 (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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2014, 20:58:08 |
|
||
|
isql -i kill_gfix_sweep.sql, коннект по TCP: I/O error during lock op, temply unavailable
|
|||
|---|---|---|---|
|
#18+
Итого test case. 1) shell-скрипт: Код: 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. 2) .sql-скрипт (killsweep_from_mon.tmp), который будет выполняться для убиения gfix'a: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 3) Запускаю .sh, он выводит: Код: 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. 4) Вижу в top'e, что процесс gfix'a вскоре после первой паузы начал набирать обороты и грузщить ЦПУ, вплоть до 99%. Жамкаю Ctrl-C. 5) НЕторопять загружаю isql и ввожу: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. Чё за хрень ?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2014, 21:21:46 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=38556266&tid=1563903]: |
0ms |
get settings: |
5ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
186ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 199ms |
| total: | 469ms |

| 0 / 0 |
