|
|
|
Derived tables: BLR at offset 7352 -context already in use при вложенности 86 и выше
|
|||
|---|---|---|---|
|
#18+
hi all Имеется батник, который генерит запрос вида: Код: sql 1. 2. 3. 4. 5. 6. 7. - и вложенность этого запроса может быть любой, т.к. определяется входным аргументом батника. Текст батника ( внимание! пересоздаст базу с именем ` foo.fdb `): gendt.bat Код: 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. Код: 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. Ну-с, а теперь начинаем издевацца над ФБ. Если запустить аргументом = 85, а затем натравить на скрипт 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. 24. 25. 26. 27. 28. 29. 30. 31. Если же увеличить вложенность на 1, то есть до 86, то получаем по лбу: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. В аттаче - скрипт с глубиной 86. ЗЫ. То же самое в Код: plaintext 1. 2. 3. ЗЫ-2. Вопрос на самом деле продиктован более еще интересным "артефактом", но о нём в другом топеге. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2013, 18:44:00 |
|
||
|
Derived tables: BLR at offset 7352 -context already in use при вложенности 86 и выше
|
|||
|---|---|---|---|
|
#18+
число контекстов ограничено 255, в каждом твоем подзапросе 3 контекста. В чем вопрос-то? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2013, 18:50:44 |
|
||
|
Derived tables: BLR at offset 7352 -context already in use при вложенности 86 и выше
|
|||
|---|---|---|---|
|
#18+
dimitrВ чем вопрос-то? Почему "context already in use" вместо обычного "too many contexts". Попахивает BOF. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2013, 19:04:29 |
|
||
|
Derived tables: BLR at offset 7352 -context already in use при вложенности 86 и выше
|
|||
|---|---|---|---|
|
#18+
dimitrчисло контекстов ограничено 255, в каждом твоем подзапросе 3 контекста. В чем вопрос-то?что такое "контекст" ? число полей в одной DT ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2013, 19:07:03 |
|
||
|
Derived tables: BLR at offset 7352 -context already in use при вложенности 86 и выше
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, BOF-а там нет, но счетчик похоже завернулся раньше проверки. Впрочем, это давний боян. Tabloidчто такое "контекст" ? число полей в одной DT ? затрудняюсь на пальцах объяснить, что-то типа материализованной в некий момент времени таблицы или ее части. Каждая таблица/процедура - контекст, каждый group by - контекст, каждый union - контекст, каждое окно (хоть order, хоть partition) - тоже контекст. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2013, 19:11:19 |
|
||
|
Derived tables: BLR at offset 7352 -context already in use при вложенности 86 и выше
|
|||
|---|---|---|---|
|
#18+
Таблоидчто такое "контекст" ?Во время выполнения запрос вычисляет и хранит состояние каждого потока данных (таблицы в простейшем случае). Грубо говоря - текущую запись из каждого потока. Операторы BLR принимают номера потоков (контекстов) как параметры. Номер контекста кодируется 1 байтом, отсюда ограничение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2013, 19:26:39 |
|
||
|
Derived tables: BLR at offset 7352 -context already in use при вложенности 86 и выше
|
|||
|---|---|---|---|
|
#18+
hvladзапрос вычисляет и хранит состояние каждого потока данных (таблицы в простейшем случае). Грубо говоря - текущую запись из каждого потока. Операторы BLR принимают номера потоков (контекстов) как параметры. Номер контекста кодируется 1 байтом, отсюда ограничение.Сорри, но ЯНХНП. Потоки и контексты - это одно и тоже (здесь) или нет ? И еще: Код: sql 1. 2. 3. -- сколько тут потоков/контекстов ? Можно как-то их в этом фрагменте выделить ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2013, 19:32:48 |
|
||
|
Derived tables: BLR at offset 7352 -context already in use при вложенности 86 и выше
|
|||
|---|---|---|---|
|
#18+
Таблоид, должно быть три - t0, первый over, второй over. Но может оказаться, что на самом деле четыре, ХЗ как там ремаппятся оригинальные поля в оконных выражениях (mx.x может иметь свой контекст). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2013, 19:42:31 |
|
||
|
Derived tables: BLR at offset 7352 -context already in use при вложенности 86 и выше
|
|||
|---|---|---|---|
|
#18+
ТаблоидПотоки и контексты - это одно и тожеДа ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2013, 21:27:20 |
|
||
|
Derived tables: BLR at offset 7352 -context already in use при вложенности 86 и выше
|
|||
|---|---|---|---|
|
#18+
dimitrmx.x может иметь свой контекст тьфу, имелся ввиду "наружный" x, который на одном уровне с оконными функциями ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2013, 21:51:17 |
|
||
|
Derived tables: BLR at offset 7352 -context already in use при вложенности 86 и выше
|
|||
|---|---|---|---|
|
#18+
Симонов Денисинтересно а вот в таком запросе Код: sql 1. количество контекстов будет равно 1Да ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2013, 23:40:41 |
|
||
|
Derived tables: BLR at offset 7352 -context already in use при вложенности 86 и выше
|
|||
|---|---|---|---|
|
#18+
оффтоп вынесен в отдельный топик, в силу того, что функционал новый я выносил все довольно долго, если что-то потерял при переносе, значит потерял. 500 джойнов и IN ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2013, 12:31:37 |
|
||
|
|

start [/forum/topic.php?fid=40&fpage=107&tid=1564058]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
64ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
32ms |
get tp. blocked users: |
1ms |
| others: | 228ms |
| total: | 362ms |

| 0 / 0 |
