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
Round 2 for Drupal transaction isolation, fixes #4281 #4351
Conversation
This reverts commit 82c07c4. Will attempt to do it in a more performant way
Download the artifacts for this pull request: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i've did the following steps:
ddev poweroff
and replaced the ddev binaryddev config
with an existing drupal 9 project- removed the mysql directory with the
.cnf
from the projects .ddev directory - made sure that none of the settings.php files contained the isolation level setting neither
ddev start
ddev launch -p
and ran the following querySHOW GLOBAL VARIABLES;
- searched in the browser window for
READ-
- found
tx_isolation READ-COMMITTED
- went also to the status report page there also no warnings or errors and the isolation level also showed READ-COMMITTED there.
so the mysql part works.
then i also wanted to test if postgres still works alongside. did a ddev config
for a drupal 9 site. changed the config.yml
to postgres 14 and then did
$> ddev start && ddev composer create "drupal/recommended-project:^9.4"
that lead to
Starting postgres...
Error response from daemon: Head "https://registry-1.docker.io/v2/library/postgres/manifests/14": Get "https://auth.docker.io/token?scope=repository%3Alibrary%2Fpostgres%3Apull&service=registry.docker.io": dial tcp: lookup auth.docker.io on 1.1.1.1:53: read udp 192.168.5.15:54863->1.1.1.1:53: i/o timeout
Unable to pull docker images: exit status 1
Network ddev-postgres_default Created
Container ddev-postgres-web Started
Container ddev-postgres-db Started
Container ddev-postgres-dba Started
Starting mutagen sync process... This can take some time.
Mutagen sync flush completed in 1s.
For details on sync status 'ddev mutagen st postgres -l'
Container ddev-router Running
Successfully started postgres
Project can be reached at https://postgres.ddev.site https://127.0.0.1:49173
not sure if that is due to the docker server is down or it is something with the ddev code? will retry in a few minutes
strange. i got the aforementioned error. but i'Ve deleted all postgres images yesterday. so there werent any. but a
real strange. but then i did a |
strange. the only postgres version i had installed was 14. now i started a ddev project with 15.
now all parts already existed? yesterday when i first tried one part already existed the other had to be downloaded. i wonder why all already exist? is aside the images also some sort of docker cache on my computer??? but everything went fine afterwards. drupal 10.1 with postgres 15 also no problems still. ok i went ahead and manually checked all docker images available. docker rmi'ed the postgres 14 and 15 and then created another new project with drupal 9 and postgres14 that had the strange error before. now it worked but same like postgres15.
odd that nothing has to be downloaded even though images were deleted. but aside that everything working |
is it possible that the |
I like this approach. Although I think it hides the settings deep within DDEV code and not obvious to new Drupal if/where it is set. I would like to suggest we display a message when we set it. Something like the following:
Not sure if this makes it "too noisy" though. |
@rpkoller As far as docker layer caching... when you delete an image it doesn't mean the cached layers are deleted. But nothing to worry about. |
@tyler36 I agree that a message would makes sense... but it would be every single |
ahhh ok good. and haven't noticed any DNS trouble yet with colima fortunately. but will keep my eyes open in the future. just happened the first time to me.
yep i've also just noticed that behavior the first time consciously. and in regards of @tyler36's point. i agree it would be a good thing to be transparent what is done under the hood but i also agree with @rfay that startups might become more of an information overload. but how about adding those details in the docs? add another paragraph to the drupal section in here perhaps? https://ddev.readthedocs.io/en/stable/users/quickstart/#system-requirements or is there a more specific place where all the measures a configuration entails for a cms? |
I agree about another paragraph in the Drupal section of the docs. Great idea. Then we don't have to feel guilty. Drupal folk get away with not knowing much about sysadmin when using DDEV. |
DDEV, it just works tm |
The Problem/Issue/Bug:
How this PR Solves The Problem:
This is an alternate technique for setting Drupal transaction isolation level. I apologize for re-doing it @tyler36.
Manual Testing Instructions:
Install and/or Bring up a variety of Drupal 9.4, 9.5, 10 sites and view admin/reports/status looking for the warning.
Automated Testing Overview:
Related Issue Link(s):
Release/Deployment notes: