|
|
|
Вопрос по логике конструкции FOR SELECT
|
|||
|---|---|---|---|
|
#18+
Добрый день. Предположим, в теле цикла FOR SELECT могут создаваться записи, которые по смыслу попадают в выборку, задаваемую селектом в голове цикла. Вопрос: будут ли они включаться в цикл? Где в официальной документации можно прочитать про логику в таком случае? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2014, 16:50:29 |
|
||
|
Вопрос по логике конструкции FOR SELECT
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2014, 16:51:52 |
|
||
|
Вопрос по логике конструкции FOR SELECT
|
|||
|---|---|---|---|
|
#18+
Допустим, уровень изоляции транзакций - Read Committed. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2014, 16:55:07 |
|
||
|
Вопрос по логике конструкции FOR SELECT
|
|||
|---|---|---|---|
|
#18+
хинт для поиска "стабильный курсор" или его англоязычный аналог обычно хинтом служит "ордер бай" натуралом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2014, 16:57:28 |
|
||
|
Вопрос по логике конструкции FOR SELECT
|
|||
|---|---|---|---|
|
#18+
InterloperДопустим, уровень изоляции транзакций - Read Committed. Тогда без разницы, что там появилось. Все таки рекомендуется тот сайт посещать чуть чаще, чем получив ссылку здесь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2014, 17:00:27 |
|
||
|
Вопрос по логике конструкции FOR SELECT
|
|||
|---|---|---|---|
|
#18+
wadmanInterloperДопустим, уровень изоляции транзакций - Read Committed. Тогда без разницы, что там появилось. Все таки рекомендуется тот сайт посещать чуть чаще, чем получив ссылку здесь. и почему мне кажется что уровень изоляции транзакции здесь не причем???? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2014, 17:02:04 |
|
||
|
Вопрос по логике конструкции FOR SELECT
|
|||
|---|---|---|---|
|
#18+
InterloperДобрый день. Предположим, в теле цикла FOR SELECT могут создаваться записи, которые по смыслу попадают в выборку, задаваемую селектом в голове цикла. Вопрос: будут ли они включаться в цикл? Где в официальной документации можно прочитать про логику в таком случае? http://tracker.firebirdsql.org/browse/CORE-3362 И там же: CORE-2799 Changing sort directon in delete statement cause deletion of all records in table CORE-634 Bad treatment of FIRST/SKIP in subselect CORE-92 infinite insertion cycle CORE-3317 Success of deleting rows depending on order А самое лучшее - сделайте эксперимент самостоятельно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2014, 17:02:06 |
|
||
|
Вопрос по логике конструкции FOR SELECT
|
|||
|---|---|---|---|
|
#18+
m7mwadmanпропущено... Тогда без разницы, что там появилось. Все таки рекомендуется тот сайт посещать чуть чаще, чем получив ссылку здесь. и почему мне кажется что уровень изоляции транзакции здесь не причем???? Упс... Упустил из виду, что в теле создаются. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2014, 17:03:04 |
|
||
|
Вопрос по логике конструкции FOR SELECT
|
|||
|---|---|---|---|
|
#18+
Ivan_Pisarevskyхинт для поиска "стабильный курсор" или его англоязычный аналог обычно хинтом служит "ордер бай" натуралом Почему, если в селекте задана сортировка, новые записи не будут подхватываться, а если не задана - будут? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2014, 17:05:04 |
|
||
|
Вопрос по логике конструкции FOR SELECT
|
|||
|---|---|---|---|
|
#18+
Таблоид, провел эксперимент. Если нет сортировки, новые записи попадают в цикл, если есть - не попадают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2014, 17:09:11 |
|
||
|
Вопрос по логике конструкции FOR SELECT
|
|||
|---|---|---|---|
|
#18+
InterloperIvan_Pisarevskyхинт для поиска "стабильный курсор" или его англоязычный аналог обычно хинтом служит "ордер бай" натуралом Почему, если в селекте задана сортировка, новые записи не будут подхватываться, а если не задана - будут? Насколько я понимаю: При сортировке создаётся "временный файл" (если конечно в плане запроса стоит SORT) - и здесь результат вполне предсказуем Если в плане запроса нет SORT то на самом деле результат непредсказуемый, что-то может подхватиться а что-то не подхватится ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2014, 17:11:38 |
|
||
|
Вопрос по логике конструкции FOR SELECT
|
|||
|---|---|---|---|
|
#18+
Interloper, в тройке и без SORT не будут, но это если внутри FOR не делать SUSPEND. Правда она пока не зарелизена ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2014, 17:17:12 |
|
||
|
Вопрос по логике конструкции FOR SELECT
|
|||
|---|---|---|---|
|
#18+
Симонов Денис, Я работаю с 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2014, 17:40:18 |
|
||
|
Вопрос по логике конструкции FOR SELECT
|
|||
|---|---|---|---|
|
#18+
Симонов Денисв тройке и без SORT не будут, но это если внутри FOR не делать SUSPEND. Правда она пока не зарелизенаС саспендом вообще веселуха (да, я знаю, что он "недоделан", просто для примера). DDL: Код: plaintext 1. 2. 3. 4. Test: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. - выдаёт около 87 тыс строк, причём при каждом новом запуске оно... разное! :-) PS. LI-T6.3.0.31071 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2014, 18:08:09 |
|
||
|
Вопрос по логике конструкции FOR SELECT
|
|||
|---|---|---|---|
|
#18+
Таблоид- выдаёт около 87 тыс строк, причём при каждом новом запуске оно... разное! :-) PS. LI-T6.3.0.31071 не ушло в бесконечный цикл, и то уже хорошо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2014, 18:14:28 |
|
||
|
Вопрос по логике конструкции FOR SELECT
|
|||
|---|---|---|---|
|
#18+
ТаблоидС саспендом вообще веселуха (да, я знаю, что он "недоделан", просто для примера). Он не "недоделан". В движке наоборот накручен довольно интересный код чтобы он работал именно так как работает. И я не уверен, что имеет смысл делать как-то иначе. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2014, 18:27:59 |
|
||
|
Вопрос по логике конструкции FOR SELECT
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovТаблоидС саспендом вообще веселуха (да, я знаю, что он "недоделан", просто для примера).Он не "недоделан". В движке наоборот накручен довольно интересный код чтобы он работал именно так как работает. И я не уверен, что имеет смысл делать как-то иначе.Мой ЦПУ отказывается понимать, почему на стабильность курсора так влияет именно suspend, а не что либо иное. Ну, передали кортеж клиенту и застыли в ожидании от него команды "давай еще" - и как это влиять может на "видимость / невидимость" ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2014, 18:32:35 |
|
||
|
Вопрос по логике конструкции FOR SELECT
|
|||
|---|---|---|---|
|
#18+
ТаблоидНу, передали кортеж клиенту и застыли в ожидании от него команды "давай еще" - и как это влиять может на "видимость / невидимость" ? suspend это не возврат из процедуры получения записи, это рекурсивный вызов кода внешнего уровня вложенности. Этакая бутылка Клейна в действии. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2014, 18:42:44 |
|
||
|
Вопрос по логике конструкции FOR SELECT
|
|||
|---|---|---|---|
|
#18+
InterloperПочему, если в селекте задана сортировка, новые записи не будут подхватываться, а если не задана - будут?А подумать? для сортировки натуралом сервер фетчит весь разалтсет в файл сортировки и потом отдает оттуда (а не набирая из исходных таблиц) данные в упорядоченном виде. Как-то так оно работает до тройки, в т.ч. и в полуторке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2014, 09:05:07 |
|
||
|
|

start [/forum/topic.php?fid=40&tid=1563662]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
194ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
| others: | 234ms |
| total: | 523ms |

| 0 / 0 |
