Skip to content
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

ddev-router fails to become ready on slower, older computer #2120

Closed
rpkoller opened this issue Mar 21, 2020 · 13 comments · Fixed by #2123
Closed

ddev-router fails to become ready on slower, older computer #2120

rpkoller opened this issue Mar 21, 2020 · 13 comments · Fixed by #2123

Comments

@rpkoller
Copy link
Collaborator

Describe the bug
As experienced in the midcamp contrib zoom chat ddev ran probably in a timeout on a too slow computer (mbp early 2011 - 8gb ram and ssd)

To Reproduce
Steps to reproduce the behavior:

  1. perform a ddev start but is healthy and running afterwards never the less

Bildschirmfoto 2020-03-21 um 20 06 49

Expected behavior
ddev-router should become ready in time

Screenshots
timeout

Version and configuration information (please complete the following information):

  • Host computer OS and Version: MBP early 2011 8GB RAM & SSD with macOS High Sierra 10.13.6.
  • Docker version information (use docker version) and insert it here.
$> docker version
Client: Docker Engine - Community
 Version:           19.03.8
 API version:       1.40
 Go version:        go1.12.17
 Git commit:        afacb8b
 Built:             Wed Mar 11 01:21:11 2020
 OS/Arch:           darwin/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.8
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.12.17
  Git commit:       afacb8b
  Built:            Wed Mar 11 01:29:16 2020
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          v1.2.13
  GitCommit:        7ad184331fa3e55e52b890ea95e65ba581ae3429
 runc:
  Version:          1.0.0-rc10
  GitCommit:        dc9208a3303feef5b3839f4323d9beb36df0a9dd
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683
  • ddev version information (use ddev version)
$> ddev version
DDEV-Local version	v1.13.1
commit            	v1.13.1
db                	drud/ddev-dbserver-mariadb-10.2:v1.13.0
dba               	phpmyadmin/phpmyadmin:5
ddev-ssh-agent    	drud/ddev-ssh-agent:v1.13.0
docker            	19.03.8
docker-compose    	1.25.4
os                	darwin
router            	drud/ddev-router:v1.13.0
web               	drud/ddev-webserver:v1.13.1
  • config.yaml contents for the misbehaving project
APIVersion: v1.13.1
name: d9contrib
type: drupal8
docroot: ""
php_version: "7.3"
webserver_type: nginx-fpm
router_http_port: "80"
router_https_port: "443"
xdebug_enabled: false
additional_hostnames: []
additional_fqdns: []
mariadb_version: "10.3"
nfs_mount_enabled: true
provider: default
use_dns_when_possible: true
timezone: ""
  • Do you have any custom configuration (nginx, php, mysql) in the .ddev folder? If so, have you tried without them?

Additional context
Add any other context about the problem here. Thanks!

@rfay
Copy link
Member

rfay commented Mar 21, 2020

Thanks!

@rpkoller
Copy link
Collaborator Author

I have to thank you for today! You helped a lot to clear up a few misconceptions and misunderstandings on my side about the process. :) Just had to leave over to the Help Topics room while you were gone, since it was impossible to run two sessions alongside - one in the app the other in the browser. :/

@rfay
Copy link
Member

rfay commented Mar 22, 2020

That was delightful working together today!

@rfay
Copy link
Member

rfay commented Mar 24, 2020

@rpkoller since you seem to be able to recreate this regularly, could you please provide the output of docker logs ddev-router right after it happens? You can paste it here, or a gist (gist.github.com) might be better. Thanks!

@rpkoller
Copy link
Collaborator Author

ran the command you provided right after the input prompt was available again after startup and the error showed:

$> docker logs ddev-router
Using the local CA at "/root/.local/share/mkcert" ✨
The local CA is now installed in the system trust store! ⚡️

Using the local CA at "/root/.local/share/mkcert" ✨

Created a new certificate valid for the following names 📜
 - "*.ddev.local"
 - "*.ddev.site"
 - "127.0.0.1"
 - "localhost"
 - "ddev-router"
 - "ddev-router.ddev_default"

Reminder: X.509 wildcards only go one level deep, so this won't match a.b.ddev.local ℹ️

The certificate is at "/etc/nginx/certs/.crt" and the key at "/etc/nginx/certs/.key" ✅

Using the local CA at "/root/.local/share/mkcert" ✨

@rfay
Copy link
Member

rfay commented Mar 25, 2020

Sorry, I gave you the wrong command @rpkoller . What I need is docker inspect --format "{{json .State.Health }}" ddev-router, and it should be done shortly after your ddev start, thanks!

Also, I'd love it if you could test this build: https://23305-80669528-gh.circle-artifacts.com/0/~/artifacts/ddev_macos.v1.13.0-23-g678d530c.tar.gz and see if it solves your problem. You can just extract the ddev binary and run it manually with a full path.

@rpkoller
Copy link
Collaborator Author

haha I tried now 6 times in a row with ddev start but unfortunately each time ddev started up properly. unable to reproduce the issue right now. will retry later this afternoon. the only thing that changed to the last times happening is yesterday evenings high sierra security update and that slack rolled out the new functionality on a few channels (which is told to be a bit more performant). no idea if one of those or both might have had an influence on the errors before. will keep on trying later on.

@rpkoller
Copy link
Collaborator Author

nope chance to far. tried it 13 or 14 time overall at least. stopped counting at a certain point. will try later tonight or tomorrow. but for the moment i can't be of any help here unfortunately :(

@rfay
Copy link
Member

rfay commented Mar 25, 2020

Does it matter which project you're doing? Or are you always working with the same project? Does it matter how many projects are running, or whether ddev-router is already running (ddev-router is running if at least one project is up; maybe adding a second project is related? ddev list shows whether router is running)

@rpkoller
Copy link
Collaborator Author

rpkoller commented Mar 25, 2020

hmmm i've played around a bit. the last time those errors taking place i had only one drupal 8 project installed and running in ddev and one wordpress project stopped (i've removed all other projects i had in there before due to the playing around with filesharing ressources and settings - where i had to remove all containers, volumes and images to get back to defaults - but the issue also still happened yesterday so the removal was not the reason fixing things).

with my tests earlier today the ddev-router was running. but i did a ddev poweroff and a ddev start now so the router got started fresh but still no sign of the timing error.

next i tried to simply spin up one or two more drupal sites with composer to see if that error shows up when three drupal 8 sites run in parallel. but no sign of the error still:

Bildschirmfoto 2020-03-25 um 17 21 26

the only thing happened was with the first of the two new projects on ddev configi got :

$> ddev config
Creating a new ddev project config in the current directory (/Users/myuser/Sites/d8test)
Once completed, your configuration will be written to /Users/myuser/Sites/d8test/.ddev/config.yaml

Project name (d8test):

The docroot is the directory from which your site is served.
This is a relative path from your project root at /Users/myuser/Sites/d8test
You may leave this value blank if your site files are in the project root
Docroot Location (web):
Found a drupal8 codebase at /Users/myuser/Sites/d8test/web.
Project Type [drupal6, drupal7, backdrop, magento, magento2, php, drupal8, wordpress, typo3] (drupal8):
Ensuring write permissions for d8test
No settings.php file exists, creating one
Existing settings.php file includes settings.ddev.php
Configuration complete. You may now run 'ddev start'.
segment 2020/03/25 17:12:02 ERROR: sending request - Post https://api.segment.io/v1/batch: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
segment 2020/03/25 17:12:02 ERROR: 2 messages dropped because they failed to be sent and the client was closed

but the initial issue i am still unable to reproduce :/ was a predictable given until yesterday.

@rfay
Copy link
Member

rfay commented Mar 25, 2020

The segment errors are when you're on bad internet or have pi-hole (or similar spam redirector) enabled, #1968

Thanks so much for all your effort on this. Have you increased docker memory since the other day?

@rpkoller
Copy link
Collaborator Author

no i even lowered the values back to the default ones to provoke the issue.

last time the issues happened:
1cpu(out of 2)/3GB Memory/2,5GBSwap/40GB Diskimage

back to the defaults:
1/2GB/1GB/40GB

@rpkoller
Copy link
Collaborator Author

ok remembered one other detailed i might have changed since the last time the error showed. i've set the debugging of docker engine to false. reverted to true now and installed another drupal site with composer. but also with debugging set to true again ddev start hasnt ran into the issue. so i got 4 drupal 8 sites running alongside now.

@rfay rfay changed the title ddev-router fails to become ready on a too slow computer in time ddev-router fails to become ready on slower, older computer Apr 2, 2020
rfay added a commit that referenced this issue May 28, 2020
fixes #2120 (#2123)

* Increase timeout on ddev-router for slower machines, fixes #2120
* Increase timeout on web container as well
* Increase test timeout for windows machines [skip ci][ci skip]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants