Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Странное поведение AR с rollback #58

Open
redic opened this issue Apr 11, 2012 · 3 comments
Open

Странное поведение AR с rollback #58

redic opened this issue Apr 11, 2012 · 3 comments

Comments

@redic
Copy link

redic commented Apr 11, 2012

Есть код, в котором:

  • сначала select id from table1
  • потом insert into table1 (id) values (1), переде этим идет begin
  • потом select no_such_field from table1, выскакивает lmbDbException: Unknown column 'no_such_field', а потом почему-то идет rollback.

Почему rollback в таком странном месте происходит?

@korchasa
Copy link

Это https://github.com/limb-php-framework/limb/blob/master/dbal/src/filter/lmbAutoDbTransactionFilter.class.php. Если где-то "ниже" него было брошено исключение, то транзакция ролбэчится.

@redic
Copy link
Author

redic commented Apr 18, 2012

Почему происходит rollback - это мне понятно.
Непонятно почему в данной ситуации срабатывает такой rollback.
Я открыл транзакцию на добавление. Добавил. Ожидаю что транзакция закоммитится. Ну или в самом конце произойдет commit.
Но никак не rollback на ошибку в select. Вот это мне непонятно.
Это так и должно быть?

@korchasa
Copy link

Это проблема документации, мне кажется. Т.е. текущий подход "весь запрос == одна транзакция" надо писать явно, и большими буквами.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants