|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
Basil A. SidorovНу так и влепи самому себе выговор за неиспользование "DatabaseAccess=None".Подумаю над этим... :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.12.2011, 13:58 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
Очередной вопрос. Тем, кто знает линух :-) Допустим, на работу приложения с большим кол-вом коннектов и большой активностью юзеров включен аудит. Содержимое конфига аудита не оставляет сомнений, что серверу будет жарко: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
Очевидно, что за "головной" лог (prodtrace.log - в который сейчас пытаются писать полторы сотни процессов) идёт борьба и fb_inet_server'ы выстраиваются в очередь. ВОПРОС. Есть ли в линухе команда, выдающая "на гор а " общее кол-во процессов, зависших в очереди на запись в заданный файл ? PS. Модераторам: прошу пока не переносить этот вопрос в Linux-раздел. Я продублирую его там, если ответа здесь не будет. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2012, 19:53 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
Давно хотел спросить, да всё как-то стеснялся: а почему трейс для свипа показывает сначала start/commit, а только после этого attach/detach ? Конфиг трейса: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
Код: 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2012, 17:56 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
Таблоид, такова реализация свипа и трейса. Свип выполняется как часть аттача, через соответствующие тэги DPB. Т.е. начинается аттач, проверяются права, инициализируются внутренние структуры, делается свип (валидация/прочее работчающее через DPB) и только потом аттач считается завершенным. Именно в этот момент трейс и логгирует событие. Поэтому транзакция свипа оказывается в логе раньше аттача. Правильный порядок вывести затруднительно, т.к. неожиданные исключения во время свипа и т.п. будут трактоваться как неудачный аттач и его надо логгировать именно так. Решением тут может служить разве что разбивка аттача на два события, а-ля "begin-attach" и "end-attach". ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2012, 19:20 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
Решил протрассировать IBE, когда он выполняет select count(*) from some_table. Понятно, что он лезет в кучу системных таблиц (хотя надо всего лишь count(*)) Код: 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. 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.
Непонятно, почему после этого при прерывании трейса по Ctrl-C на консоли получил: Код: plaintext
Что означает это сообщение ? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2012, 19:54 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
PS. в логе ФБ в этот момент появилось: Код: plaintext 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2012, 19:55 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
ТаблоидЧто означает это сообщение ? недоработка в утилите. Можно занести в трекер, Алекс поправит. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2012, 22:15 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
dimitrМожно занести в трекер, Алекс поправит.Done. CORE-3769 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2012, 00:10 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
ТаблоидМожно ли сделать точность выводимого времени настраиваемой (скажем, до микросекунд) ? up! Сейчас любое время показывается до 10 мс. И есть подозрение, что оно НЕ округляется по правилам математики, а просто увеличивается до ближайшего большего "круглого" значения, т.е. 11 мс обратятся в 20 мс. На это утверждение подталкивают неоднократные замеры по секундомеру и проверочное суммирование выведенного времени в логе трейса. Секундомер показал, к примеру, 5.94 сек, сумма же значений времени вып-я в трейсе равна 8300 мс. Суммировал так: Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2012, 15:06 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
Таблоид, Чтобы было что округлять, исходное значение должно быть бОльшей точности. Чего не наличиствует. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2012, 15:27 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
WildSeryисходное значение должно быть бОльшей точности. Чего не наличиствует.в линухе, в виндузе - везде можно получить системное время с точностью до 1 микросекунды (если не до наносек). Почему трейс выдаёт (или получает) время в виде двух лаптей по карте ? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2012, 15:29 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
Таблоид, Может быть, и можно. Но Firebird не получает. Почему же трейс должен? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2012, 15:47 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
WildSeryНо Firebird не получает.ну, я как бы и намекаю: хотелка сильная выросла на получение Firebird'ом точного времени и отражение его в трейсе :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2012, 16:00 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
трейс работает с точностью до 1 миллисекунды. Если где-то точность меньше и/или есть округление, то это делает ОС. Слова насчет микро- и нано-секунд весьма наивны, в реальной жизни все совсем не так. Делать точность выше IMHO не имеет смысла, т.к. накладные расходы на замеры времени будут сильно искажать картину. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2012, 16:00 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
dimitrтрейс работает с точностью до 1 миллисекунды. Если где-то точность меньше и/или есть округление, то это делает ОСну хорошо, если ОС "поглощает" точность, то почему бы не выводит в каких-нибудь тиках ЦПУ или еще в чём-то, лишь бы картина была более приближенная к реальности ? dimitrнакладные расходы на замеры времени будут сильно искажать картину.А вот как-то не очень бросилось в глаза! Делал вчера тестовый рестор 46-гиговой базы с отражением текущего времени: Код: plaintext
Код: plaintext 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2012, 16:04 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
Таблоидну хорошо, если ОС "поглощает" точность, то почему бы не выводит в каких-нибудь тиках ЦПУ или еще в чём-то, лишь бы картина была более приближенная к реальности ? чем тебе это поможет, если ось генерит тики раз в 30 мс, например? Ну таймер у нее так работает. ТаблоидА вот как-то не очень бросилось в глаза! я о другом говорю. Нафига выводить микросекунды, если стоимость их получения равна, например, 500 мкс? Что полезного тебе это даст? А пример с рестором вообще дурной, там ЦПУ почти не нагружен. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2012, 16:12 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
dimitrчем тебе это поможет, если ось генерит тики раз в 30 мс, например? Ну таймер у нее так работает.это какая ось так грубо со временем обращается ? например, в винде-2000 еще на java 5 делал я какой-то штатный пример из J2SE, в котором выводилось время до наносекунд (System.nanoTime()). Откуда оно берётся ? неужто после третьего знака рандомами нас потчуют ? В линухе ls --full-time выдаёт таймштампы тоже с 9 знаками после запятой - значит, и линух тоже "умеет, когда захочет". ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2012, 16:26 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
dimitrА пример с рестором вообще дурной, там ЦПУ почти не нагружен.Одно из 8 ядер было постоянно загружено, все полтора часа. Примерно на 50-70%. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2012, 16:36 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
есть куча разных способов получения времени от системы. Дефолтный гап между соседними значениями последовательных "тиков" на винде - 10-15 мс, так настроен обработчик прерывания. Для трейса мы используем более точный таймер, у меня на машине его точность составляет ~0.4 мкс. На какой машине ты меряешь и почему оно у тебя округляется до 10 мс, мне отсюда не видно. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2012, 16:40 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
dimitrНа какой машине ты меряешь и почему оно у тебя округляется до 10 мс, мне отсюда не видно. Код: plaintext 1.
Код: 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.
etc ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2012, 16:49 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
dimitrНа какой машине ты меряешь и почему оно у тебя округляется до 10 мс, мне отсюда не видно.А мне показалось, он хочет четвёртую цифру. Это несколько меньше десятков миллисекунд. Раз в сто. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2012, 17:45 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
WildSeryпоказалось, он хочет четвёртую цифру.Нет, мне достаточно третьей цифры. Если же её никак не получить, то пусть до 0.01 сек, но главное - избавиться от странного ceil'a значений до ближайшей сотой доли секунды. То есть, 0.01 сек должна отразиться как 10, но никак не 20 мс. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2012, 17:59 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
ТаблоидОткуда оно берётся ? неужто после третьего знака рандомами нас потчуют ?Ну есть у проца спецрегистры, ну можно их откалибровать ... И что? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2012, 18:08 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
Basil A. Sidorovну можно их откалибровать ... И что?просвети, плз, что они содержат ? если на самом деле там точное время, то мне от них надо его с точностью до 0.001 сек. Всё. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2012, 18:14 |
|
fbtracemgr: разные мелкие вопросы
|
|||
---|---|---|---|
#18+
Таблоидпросвети, плз, что они содержат ?64-разрядные монотонные счётчики.если на самом деле там точное время, то мне от них надо его с точностью до 0.001 сек. Всё.Нет там "точного времени". Есть возможность сравнить два очень коротких интервала в задачах типа: "А какой из вариантов развёртывания цикла быстрее?". P.S. Не надо тебе миллисекундной точности. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2012, 18:26 |
|
|
start [/forum/topic.php?fid=40&msg=37694071&tid=1561416]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
137ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
65ms |
get tp. blocked users: |
1ms |
others: | 16ms |
total: | 263ms |
0 / 0 |