|
|
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
подскажите, можно ли как-то настроить ини файл, что-бы всегда (идеально) или хотя бы по умолчанию у psql стартовал полноценный транзакционный режим? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 13:17 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
Jonhsonподскажите, можно ли как-то настроить ини файл, что-бы всегда (идеально) или хотя бы по умолчанию у psql стартовал полноценный транзакционный режим? что вы имеете ввиду? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 13:20 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
имею ввиду, что-бы пока я не сделал commit; другие сессии не видели моих изменений ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 13:29 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
Код: sql 1. вроде пишется, а хочется зафорсить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 13:30 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
Jonhsonподскажите, можно ли как-то настроить ини файл, что-бы всегда (идеально) или хотя бы по умолчанию у psql стартовал полноценный транзакционный режим? ф топег приглашается г-н лавров, мастер дипломатических формулировок ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 13:34 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
Jonhson, Код: sql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 13:37 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
vyegorov, на сработало, пробовал Код: sql 1. и Код: sql 1. Код: sql 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 13:53 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
виноват, строчными надо, сработало, спасибо! А на уровне инстанса зафорсить транзакционный режим, нельзя, как я понимаю? типа Код: sql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 13:56 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
Jonhson, Он включен всегда на уровне экземпляра — как вы себе представляете ACID СУБД с отключенными транзакциями? В данном случае — это особенность клиента, а не СУБД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 13:59 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
т.е. в режиме Код: sql 1. клиент ( либы psql) просто не передают инфу инстансу пока не будет commit? я правильно понял? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 14:01 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
Jonhsonт.е. в режиме Код: sql 1. клиент ( либы psql) просто не передают инфу инстансу пока не будет commit? я правильно понял?думаю нет. думаю он за вас говорит Код: sql 1. когда--то давно был серверный параметр "автокоммит", выпилили. теперь все клиенты эмулируют его просылкой begin; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 14:29 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
Jonhson, Почему вы так думаете? Транзакция начинается каждый раз, когда вы даёте запрос базе. Завершается она либо явно, когда вы напишите COMMIT или же ROLLBACK (== AUTOCOMMIT off), либо неявно, т.е. клиент за вас посылает COMMIT после кажого запроса (== AUTOCOMMIT on, default). Советую также посмотреть на то, как себя ведёт скрипт если где-то посерёдке было исключение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 14:30 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
vyegorovJonhson, Почему вы так думаете? Транзакция начинается каждый раз, когда вы даёте запрос базе. Завершается она либо явно, когда вы напишите COMMIT или же ROLLBACK (== AUTOCOMMIT off), либо неявно, т.е. клиент за вас посылает COMMIT после кажого запроса (== AUTOCOMMIT on, default). Советую также посмотреть на то, как себя ведёт скрипт если где-то посерёдке было исключение.\ Нет ту вы не правы а qwwq прав. По умолчанию если просто запрос выполнен - он считается сам по себе транзакцией. И никаких begin/commit от клиента не приходит и не требуется. И autocommit off на клиенте все что значит это то что клиент автоматом перед первым вашим запросом будет делать begin; и так же будет делать begin; после того как вы commit;/rollback; сделаете. Т.е. он просто begin; за вас будет вызывать автоматом. При этом autocommit off это свойство конкретного клиента (в данном случае мы говорим о psql и только о нем) и на каких то клиентах может нормально не поддерживаться или поддерживаться криво. -- Maxim Boguk www.postgresql-consulting.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 14:34 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
vyegorovJonhson, Почему вы так думаете? Транзакция начинается каждый раз, когда вы даёте запрос базе. Завершается она либо явно, когда вы напишите COMMIT или же ROLLBACK (== AUTOCOMMIT off), либо неявно, т.е. клиент за вас посылает COMMIT после кажого запроса (== AUTOCOMMIT on, default). Советую также посмотреть на то, как себя ведёт скрипт если где-то посерёдке было исключение. выфсёврёти в режиме "автокоммит он" он просто не шлёт эмулирующего бегина, думается. (включите лог всех стейтментов на сервере, и покажите что я неправ ) хотя могут быть и исключения (т.е. могу врать). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 14:35 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
посылка begin transaction это понятно, но по факту что происходит? Код: sql 1. 2. 3. 4. 5. 6. 7. это схема отражает реалии работы pg? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 14:36 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
Jonhsonпосылка begin transaction это понятно, но по факту что происходит? Код: sql 1. 2. 3. 4. 5. 6. 7. это схема отражает реалии работы pg? Нет... каждый запрос отправляется в "instance" в вашей терминологии сразу. Иначе как можно вообще выполнить запрос не передавая его в базу? -- Maxim Boguk www.postgresql-consulting.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 14:38 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
Jonhson, откройте руками в другом соединении pg_stat_activity и следите за его состоянием после каждого стейтмента. сразу станет ясно, что все сразу приходит на сервер. без бегина он просто коммитит всё сразу. поскольку автокоммит он -- его единственный режим. других просто нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 14:40 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
Maxim BogukНет ту вы не правы а qwwq прав. По умолчанию если просто запрос выполнен - он считается сам по себе транзакцией. И никаких begin/commit от клиента не приходит и не требуется. Да, согласен. Более того, сам уже наступал на эти грабли, но забыл: www.postgresql.org/message-id/flat/16634.1413831804@sss.pgh.pa.us ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 14:42 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
Maxim BogukJonhsonпосылка begin transaction это понятно, но по факту что происходит? Код: sql 1. 2. 3. 4. 5. 6. 7. это схема отражает реалии работы pg? Нет... каждый запрос отправляется в "instance" в вашей терминологии сразу. Иначе как можно вообще выполнить запрос не передавая его в базу? ок, стало быть 1-е утверждение в 19267088 не верно. Инстанс по факту может работать в autocommit для каждого запроса. Спасибо. А можете каким-то образом объяснить это: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. несколько вгоняет в ступор. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 14:55 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
JonhsonИнстанс по факту может работать в autocommit для каждого запроса.неожиданный вывод из слов, что автокоммит к "инстансу" отношения не имеет. Jonhsonнесколько вгоняет в ступор.ожидаемый результат? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 15:08 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
Jonhson, Целочисленный тип колонки `t1.x`? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 15:08 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
p2.Jonhsonнесколько вгоняет в ступор.ожидаемый результат? исключение по крайней мере в одном случае ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 15:10 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
vyegorovJonhson, Целочисленный тип колонки `t1.x`? тип int. Как тут сделать запрос к Код: sql 1. что-бы показать, не знаю... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 15:11 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
Jonhsonp2.пропущено... ожидаемый результат? исключение по крайней мере в одном случаене обязано быть исключение. У sqrt выше стоимость и негарантированно вычисляется после сравнения с литералом. Вычислять второе выражение AND после false/null смысла нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 15:13 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
p2.Jonhsonпропущено... исключение по крайней мере в одном случаене обязано быть исключение. У sqrt выше стоимость и негарантированно вычисляется после сравнения с литералом. Вычислять второе выражение AND после false/null смысла нет. вот тут подробнее выражение Код: sql 1. что тут первое, что второе? для лучшего понимания пример на С: ... Код: plaintext 1. 2. 3. 4. вычислиться ГАРАНТИРОВАННО корректно, поскольку сначала будет проверено x>0 , и только в случае true вычислен корень. есть ли какие-то правила на порядок в where ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 15:28 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
от типа это не зависит, с numeric (как я понимаю некий аналог number) тоже самое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 15:31 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
Jonhsonесть ли какие-то правила на порядок в where ? https://www.postgresql.org/docs/current/static/sql-expressions.html#SYNTAX-EXPRESS-EVAL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 15:34 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
vyegorovJonhsonесть ли какие-то правила на порядок в where ? https://www.postgresql.org/docs/current/static/sql-expressions.html#SYNTAX-EXPRESS-EVAL The order of evaluation of subexpressions is not defined. исчерпывающе. Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 15:37 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
Jonhsonvyegorovпропущено... https://www.postgresql.org/docs/current/static/sql-expressions.html#SYNTAX-EXPRESS-EVAL The order of evaluation of subexpressions is not defined. исчерпывающе. Спасибо! вам о том и говорили -- на откуп оптимизатору но если очень хочется навязать то модифицируйет в Код: sql 1. тогда всенепременно сначала a , и только и при условии a -- исчисляется b ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 15:41 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
Jonhson, Я не понимаю цели изысканий. Могли бы поделиться, может будет проще помочь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 15:47 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
до case уже дочитал по вышуказанной ссылке ага ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 15:48 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
vyegorovJonhson, Я не понимаю цели изысканий. Могли бы поделиться, может будет проще помочь? возникли идеи перенести некоторую часть аппликухи с оракула на постгресс, нужно понять насколько это реально и примерно оценить трудозатраты перевода ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 16:27 |
|
||
|
default transaction mode
|
|||
|---|---|---|---|
|
#18+
Jonhsonвот тут подробнее выражение Код: sql 1. что тут первое, что второе? Что тут подробнее? Скобки меняют приоритет операций, а не порядок вычисления/невычисления аргументов AND. Тем более, в данном примере скобки подтверждают исходный приоритет. Беспорядок вычисления выражений в where оговорен стандартом sql и его поддерживают большинство вменяемых субд, включая постгрес и оракл. Переносить концепции алгоритмического языка на декларативный непродуктивно. Возьми книжку по postgresql, прочитай до конца, потом задавай вопросы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2016, 16:43 |
|
||
|
|

start [/forum/topic.php?all=1&fid=53&tid=1997184]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
173ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
63ms |
get tp. blocked users: |
1ms |
| others: | 221ms |
| total: | 493ms |

| 0 / 0 |
