You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
public static function build(Service $graphQlService, $context = [])
{
$db = Db::get();
$listing = $db->fetchAllAssociative('SELECT id, name FROM classes');
foreach ($listing as $class) {
$id = $class['id'];
$name = $class['name'];
$objectType = new PimcoreObjectType($graphQlService, $name, $id, [], $context);
self::$definitions[$name] = $objectType;
}
/**
* @var string $name
* @var PimcoreObjectType $definition
*/
foreach (self::$definitions as $name => $definition) {
$definition->build($context);
}
}
but not all classes will be used. It would make sense to convert this to a lazy loaded version where the instance is only created when get() is called.
This build process is almost 40% of the runtime in trivial GraphQL queries.
The text was updated successfully, but these errors were encountered:
Thanks a lot for reporting the issue. We did not consider the issue as "Pimcore:Priority", "Pimcore:ToDo" or "Pimcore:Backlog", so we're not going to work on that anytime soon. Please create a pull request to fix the issue if this is a bug report. We'll then review it as quickly as possible. If you're interested in contributing a feature, please contact us first here before creating a pull request. We'll then decide whether we'd accept it or not. Thanks for your understanding.
Improvement description
Currently,
\Pimcore\Bundle\DataHubBundle\GraphQL\ClassTypeDefinitions::build
is creating type instances for all classes on every requestdata-hub/src/GraphQL/ClassTypeDefinitions.php
Lines 35 to 54 in f781127
but not all classes will be used. It would make sense to convert this to a lazy loaded version where the instance is only created when
get()
is called.This build process is almost 40% of the runtime in trivial GraphQL queries.
The text was updated successfully, but these errors were encountered: