Cloudron makes it easy to run web apps like WordPress, Nextcloud, GitLab on your server. Find out more or install now.


Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
  • Search
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

Cloudron Forum

Apps - Status | Demo | Docs | Install
  1. Cloudron Forum
  2. Grav CMS
  3. Grav 2.0 - copying a page is slow

Grav 2.0 - copying a page is slow

Scheduled Pinned Locked Moved Grav CMS
21 Posts 5 Posters 284 Views 5 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    superhua
    wrote last edited by
    #1

    (This is a stretch, but I'm not sure where else to post.)

    Copying a page in Grav 2.0/Admin 2.0 is slow (~12 seconds).

    The Grav support forum suggests it is not a Grav issue, but may be a server/network issue.

    From the log below (which shows long POST and PATCH requests of 3 and 6 seconds respectively), is there anything that would suggest this is related to how Cloudron configures things?

    Jul 09 08:01:10 149.154.20.112 - - [09/Jul/2026:12:01:10 +0000] "GET /api/v1/pages?children_of=%2F&sort=order&order=asc&per_page=200&page=1 HTTP/1.1" 200 2599 "https://examplesite.org/admin/pages/edit/test" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Safari/605.1.15"
    Jul 09 08:01:11 149.154.20.112 - - [09/Jul/2026:12:01:10 +0000] "POST /api/v1/pages/test/copy HTTP/1.1" 201 6063 "https://examplesite.org/admin/pages/edit/test" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Safari/605.1.15"
    Jul 09 08:01:14 - - - [09/Jul/2026:12:01:14 +0000] "OPTIONS * HTTP/1.0" 200 - "-" "Apache/2.4.58 (Ubuntu) mod_perl/2.0.13 Perl/v5.38.2 (internal dummy connection)"
    Jul 09 08:01:17 149.154.20.112 - - [09/Jul/2026:12:01:11 +0000] "PATCH /api/v1/pages/test-2 HTTP/1.1" 200 6069 "https://examplesite.org/admin/pages/edit/test" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Safari/605.1.15"
    Jul 09 08:01:23 - - - [09/Jul/2026:12:01:20 +0000] "GET / HTTP/1.1" 302 - "-" "Mozilla (CloudronHealth)"
    Jul 09 08:01:23 149.154.20.112 - - [09/Jul/2026:12:01:17 +0000] "GET /api/v1/reports/twig-content/page?route=%2Ftest-2 HTTP/1.1" 200 80 "https://examplesite.org/admin/pages/edit/test-2" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.5 Safari/605.1.15"
    
    1 Reply Last reply
    2
    • jamesJ Offline
      jamesJ Offline
      james
      Staff
      wrote last edited by
      #2

      Hello @superhua
      Without more details about your set-up it is close to impossible to make an assumption what the issue could be.
      It might be the systems IO, network speed or something else.
      Maybe you can check your browser console with these request if they really take this long.
      If the browser console reports back faster the web log viewer it might be system related.

      Maybe also provide the output of cloudron-support --troubleshoot so we can get a better understand of what you are working with.

      S 1 Reply Last reply
      1
      • jamesJ james

        Hello @superhua
        Without more details about your set-up it is close to impossible to make an assumption what the issue could be.
        It might be the systems IO, network speed or something else.
        Maybe you can check your browser console with these request if they really take this long.
        If the browser console reports back faster the web log viewer it might be system related.

        Maybe also provide the output of cloudron-support --troubleshoot so we can get a better understand of what you are working with.

        S Offline
        S Offline
        superhua
        wrote last edited by
        #3

        @james Thank you. I totally understand that this is nearly impossible to diagnose. Feels like such an odd issue.

        Anyhow, not sure which aspect of the browser console would be helpful, but the long wait times are confirmed:

        Screenshot 2026-07-10 at 06.50.14.png

        Further, here is the output of cloudron-support --troubleshoot:

        Vendor: Red Hat Product: KVM
        Linux: 5.15.0-185-generic
        Ubuntu: jammy 22.04
        Cloudron: 9.2.0
        Execution environment: kvm
        Processor: Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz x 4
        RAM: 8127812KB
        Disk: /dev/vda4        16G
        [OK]	Root disk usage is OK (82%)
        [OK]	Memory usage is OK (53%)
        [OK]	Clock is NTP-synchronized
        [OK]	node version is correct
        [OK]	IPv6 is enabled in kernel. No public IPv6 address
        [OK]	docker is running
        [OK]	docker version is correct
        [OK]	MySQL is running
        [OK]	netplan is good
        [OK]	DNS is resolving via systemd-resolved
        [OK]	unbound is running
        [OK]	IPv4 HTTPS to api.cloudron.io/api/v1/helper/public_ip
        [SKIP]	IPv6 HTTPS to api.cloudron.io/api/v1/helper/public_ip — no public IPv6 address
        [OK]	IPv4 HTTPS to auth.docker.io/token
        [SKIP]	IPv6 HTTPS to auth.docker.io/token — no public IPv6 address
        [OK]	IPv4 HTTPS to acme-v02.api.letsencrypt.org
        [SKIP]	IPv6 HTTPS to acme-v02.api.letsencrypt.org — no public IPv6 address
        [OK]	nginx is running
        [OK]	dashboard cert is valid
        [OK]	dashboard is reachable via loopback
        [OK]	No pending database migrations
        [OK]	Service 'mysql' is running and healthy
        [OK]	Service 'postgresql' is running and healthy
        [OK]	Service 'mongodb' is running and healthy
        [OK]	Service 'mail' is running and healthy
        [OK]	Service 'graphite' is running and healthy
        [OK]	Service 'sftp' is running and healthy
        [OK]	box v9.2.0 is running
        [OK]	Dashboard is reachable via IPv4 (https://my.indychinesechurch.org)
        [SKIP]	Dashboard IPv6 reachability — no public IPv6 address
        [SKIP]	Domain expiry check — whois not installed; run 'apt install whois' to check
        
        ======== Summary ========
        PASS:  26
        WARN:  0
        FAIL:  0
        SKIP:  5
        
        1 Reply Last reply
        0
        • jamesJ Offline
          jamesJ Offline
          james
          Staff
          wrote last edited by
          #4

          Hello @superhua
          /dev/vda4 hints that this is a virtual disk.
          You should check the disk speeds it could be it is very slow for some reason.
          Also, IOWAIT might be worth looking at.

          Not that your hoster is having file storage issues and your system is just slow because of that.

          1 Reply Last reply
          1
          • S Offline
            S Offline
            superhua
            wrote last edited by
            #5

            hdparm -Tt /dev/vda4 yields:

            /dev/vda4:
             Timing cached reads:   9658 MB in  1.99 seconds = 4846.98 MB/sec
             Timing buffered disk reads: 896 MB in  3.00 seconds = 298.61 MB/sec
            

            Wait time (wa) using vmstat 1 is 0 or 1.

            These numbers look good.

            I'll continue to research and report back if I discover anything.

            Thanks again for your help!

            1 Reply Last reply
            1
            • S Offline
              S Offline
              superhua
              wrote last edited by
              #6

              Update: Installing Grav on the Cloudron LAMP App yields faster copy times (about twice as fast).

              Thus, perhaps it is something related to the Dockerization of it?

              1 Reply Last reply
              0
              • robiR Offline
                robiR Offline
                robi
                wrote last edited by
                #7

                Does grav on the demo server have the same pattern?

                Conscious tech

                1 Reply Last reply
                0
                • S Offline
                  S Offline
                  superhua
                  wrote last edited by
                  #8

                  @robi – Good idea!
                  Yes, after installing Grav and LAMP (and then Grav on top of that), LAMP/Grav is still faster on the demo server.

                  robiR 1 Reply Last reply
                  0
                  • S superhua

                    @robi – Good idea!
                    Yes, after installing Grav and LAMP (and then Grav on top of that), LAMP/Grav is still faster on the demo server.

                    robiR Offline
                    robiR Offline
                    robi
                    wrote last edited by robi
                    #9

                    @superhua perfect for @james to take a peek.

                    Drop the app subdomains of the demo server to help him out.

                    Conscious tech

                    1 Reply Last reply
                    0
                    • S Offline
                      S Offline
                      superhua
                      wrote last edited by superhua
                      #10

                      @james Here are the two test sites:

                      • Grav in Docker

                      • Grav on LAMP

                      (PM me for password.)

                      1 Reply Last reply
                      1
                      • nebulonN Offline
                        nebulonN Offline
                        nebulon
                        Staff
                        wrote last edited by
                        #11

                        If both those apps are installed and using the same disk, I can't quite see how filesystem operations would in any case impact how Grav is serving up files. On top of this, the Grav package is also using apache to serve up the files.

                        S 1 Reply Last reply
                        0
                        • nebulonN nebulon

                          If both those apps are installed and using the same disk, I can't quite see how filesystem operations would in any case impact how Grav is serving up files. On top of this, the Grav package is also using apache to serve up the files.

                          S Offline
                          S Offline
                          superhua
                          wrote last edited by
                          #12

                          @nebulon Thanks for the reply.

                          Yes, both apps are installed and using the same disk.

                          Good to know the Grav package is also using Apache.

                          Quite a mystery why there is a difference in speed then! 🤷 🙂

                          1 Reply Last reply
                          0
                          • S Offline
                            S Offline
                            superhua
                            wrote last edited by
                            #13

                            Would the following making any difference?

                            grav-system-info.yaml from the Dockerized install has opcache.revalidate_freq: "2s"

                            while

                            grav-system-info.yaml from LAMP install has opcache.revalidate_freq: "60s"

                            ?

                            robiR 1 Reply Last reply
                            1
                            • jamesJ Offline
                              jamesJ Offline
                              james
                              Staff
                              wrote last edited by
                              #14

                              Hello @superhua
                              The official docker image of grav is also settings this to 2s.
                              See: https://github.com/getgrav/docker-grav/blob/89920ea92715261adee817dc7d74f366621af5c9/config/php-grav.ini#L32

                              1 Reply Last reply
                              1
                              • S superhua

                                Would the following making any difference?

                                grav-system-info.yaml from the Dockerized install has opcache.revalidate_freq: "2s"

                                while

                                grav-system-info.yaml from LAMP install has opcache.revalidate_freq: "60s"

                                ?

                                robiR Offline
                                robiR Offline
                                robi
                                wrote last edited by robi
                                #15

                                @superhua change it and test?

                                How's the CPU usage for both during the op?

                                Conscious tech

                                S 1 Reply Last reply
                                0
                                • robiR robi

                                  @superhua change it and test?

                                  How's the CPU usage for both during the op?

                                  S Offline
                                  S Offline
                                  superhua
                                  wrote last edited by superhua
                                  #16

                                  @robi Thanks for the reply! No, I haven't changed the opcache.revalidate_freq as I don't know how. If there is a way to do that in Cloudron, please let me know. 😄

                                  CPU usage for both is okay -- but the Disk I/O is quite different: 4.6 GB / 9.6 GB for Docker and 128 MB / 436 MB for LAMP:

                                  Docker:
                                  docker - Screenshot 2026-07-15 at 06.42.37.png

                                  LAMP:
                                  lamp - Screenshot 2026-07-15 at 06.51.33.png

                                  S robiR 2 Replies Last reply
                                  0
                                  • S superhua

                                    @robi Thanks for the reply! No, I haven't changed the opcache.revalidate_freq as I don't know how. If there is a way to do that in Cloudron, please let me know. 😄

                                    CPU usage for both is okay -- but the Disk I/O is quite different: 4.6 GB / 9.6 GB for Docker and 128 MB / 436 MB for LAMP:

                                    Docker:
                                    docker - Screenshot 2026-07-15 at 06.42.37.png

                                    LAMP:
                                    lamp - Screenshot 2026-07-15 at 06.51.33.png

                                    S Offline
                                    S Offline
                                    superhua
                                    wrote last edited by
                                    #17

                                    Update: just re-tested on the Docker install, and the I/O amounts are now similar to the LAMP install.

                                    However, copying a page in the GUI is still slow.

                                    jdaviescoatesJ 1 Reply Last reply
                                    0
                                    • S superhua

                                      Update: just re-tested on the Docker install, and the I/O amounts are now similar to the LAMP install.

                                      However, copying a page in the GUI is still slow.

                                      jdaviescoatesJ Offline
                                      jdaviescoatesJ Offline
                                      jdaviescoates
                                      wrote last edited by
                                      #18

                                      @superhua have you tried another browser, incognito tabs, no plugins, cleared cache etc yet?

                                      I use Cloudron with Gandi & Hetzner

                                      S 1 Reply Last reply
                                      0
                                      • S superhua

                                        @robi Thanks for the reply! No, I haven't changed the opcache.revalidate_freq as I don't know how. If there is a way to do that in Cloudron, please let me know. 😄

                                        CPU usage for both is okay -- but the Disk I/O is quite different: 4.6 GB / 9.6 GB for Docker and 128 MB / 436 MB for LAMP:

                                        Docker:
                                        docker - Screenshot 2026-07-15 at 06.42.37.png

                                        LAMP:
                                        lamp - Screenshot 2026-07-15 at 06.51.33.png

                                        robiR Offline
                                        robiR Offline
                                        robi
                                        wrote last edited by
                                        #19

                                        @superhua You edit the .yaml file from the File Manager or CLI console.. then test your page copy.

                                        It might help to fully describe exactly what you're doing to copy a page and how slow it is, so it can be tested on the demo server as well.

                                        Conscious tech

                                        S 1 Reply Last reply
                                        0
                                        • jdaviescoatesJ jdaviescoates

                                          @superhua have you tried another browser, incognito tabs, no plugins, cleared cache etc yet?

                                          S Offline
                                          S Offline
                                          superhua
                                          wrote last edited by
                                          #20

                                          @jdaviescoates Yes, I tried …

                                          • Chrome
                                          • Private browsing
                                          • Minimal plugins (e.g., Admin2, API, Login)
                                          • Clearing cache

                                          … but no difference.

                                          Copying a page in Admin2 is still slow.

                                          Thanks for your reply!

                                          1 Reply Last reply
                                          0

                                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                          With your input, this post could be even better 💗

                                          Register Login
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Bookmarks
                                          • Search