I have a reasonably large schema, 185 predicates, 22 types and a fair number of indices. But installing the schema takes over 60 minutes on a fairly beefy workstation. In SQL this is something that would return instantly, so I’m wondering if there is an issue.
I understand that updating many indexes would be pretty intensive, but when there is no associated data, it doesn’t seem to make as much sense.
I’d prefer to not paste my schema here since it is for an internal app, but I’m happy to otherwise send it to anyone who is interested in loading it.
Do you know if running indexing in the background would make the new schema usable faster? I notice while the schema is being updated, no new types or predicates are visible in Ratel, it just hangs at Refreshing Schema... until my request returns.
Queries that require the index would not be able to run until the index has been created. For instance, using the anyofterms function requires the term index to be created first. Other than that, queries and mutations can still be serviced while indexing is done in the background.
Can you also share the cluster set up? On my computer, the schema update finishes in about 20 seconds on a fresh cluster of v20.03.1.
It takes over an hour to load the schema. Last night I tried it and I killed it after 90 minutes. Dgraph alpha consumes large amounts of CPU during this time.
I’m on Arch Linux with 12 cores and 64Gb of ram. My brother has the exact same workstation and operating system, so I had him run it with the exact same dgraph executable. It finished in about 5 seconds.
While the schema is updating on my system, certain other applications will not run, while others seem to complete quickly. Python scripts run immediately. But another of my Go applications wouldn’t run within a few minutes, so I killed it. go build also takes forever. Alpha increases my system load from 4 to 30.
It seems to be an issue specific to my system, though I don’t have issues with any other applications. I’m going to update/reboot and report back.