-
Notifications
You must be signed in to change notification settings - Fork 16
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Nested transactions are not supported by this client. #232
Comments
Can you at least narrow down to the exact version? thanks. |
Sure, 7.4.2 worked fine, but 8.1.2 up to 8.2.0 did not. I didnt try 8.1.0-8.1.1 because the updateOrInsert signature wasnt compatible with the version of Laravel 11 I had, but I can also try and downgrade Laravel if you think that testing 8.1.0-8.1.1 would help narrow it down |
Can you try updating only google/cloud-spanner while using 7.4.2? |
I used the latest google/cloud-spanner in both (1.86.0) I will test 8.0.0 shortly and let you know, thanks |
As far as I can tell, I haven't changed anything transaction related v7.4.2...v8.1.2. So I'm guessing there might be changes in related libraries. |
I just tested 8.0.0 and the same issue occurs, "Nested transactions are not supported by this client" is thrown |
Could be something that changed on laravel's side. Can you try lowering laravel 11's version to 11.0.0? |
Just tried Laravel 11.0.0 with version 8.0.0 of this driver, still throwing |
what was laravel/framework 's version when you were on laravel-spanner v7.4.2? |
Heres something interesting - on my fork I removed the Laravel 11 requirement from composer.json and installed v8.2.0 in a Laravel 10 project, and it doesn't throw the error any more So it looks like something has changed in Laravel between 10 and 11 that is making passing the nested transaction handling up the inheritance chain no longer work as expected? |
I was on version 10.48.22 (pardon the edit, copy pasted the wrong value) |
At this point I really can't do much without reproducible code. |
Yes, basically what is happening in that call stack is a model is being created via a Laravel Nova resource update request, but I also have the spatie/laravel-medialibrary package associated with said model, which I guess internally uses SyncQueue to commit to its own media table when editing models that have associated media. I will see what I can do about creating a demo repo |
When I upgraded from v7 to v8 of this driver, I found that suddenly code that worked fine in v7 is now throwing the "Nested transactions are not supported by this client." error from google/cloud-spanner/src/Database.php:912
I know that in the ManagesTransactions trait there is the following block
Which I would assume is supposed to stop nested transaction calls from throwing the error I am getting, and in v7 it does seem to work, but something has changed in v8 that is making it no longer work?
I know its probably hard to debug without a demo repository, but I am hoping you have a some idea what might have changed with transaction handling from v7 to v8 that might be causing this
If it is helpful here is the error and call stack
The text was updated successfully, but these errors were encountered: