0

Request details

I m using Symfony 5.4 , When I run a this request I get The following error :

Fatal error: Allowed memory size of 536870912 bytes exhausted (tried to allocate 262144 bytes) in C:\Users\lenovo\Desktop\pro\Hays-Back\var\cache\dev\ContainerVJJWSl2\App_KernelDevDebugContainer.php on line 328

Fatal error: Allowed memory size of 536870912 bytes exhausted (tried to allocate 262144 bytes) in Unknown on line 0

I cleared cache and I changed The php.ini memory_limit attribut to -1 and nothing changed

this is the code of my controller

public function getUserInWorkFlowAction(Request $request,EntityManagerInterface $em,WorkflowManager $workflowManager,ReferentielManager $referentielManager,Kernel $kernel)
{
    $fileDecode = $this->getFileDecode('Fr.json',$kernel);
    $token = $em->getRepository(AccessToken::class)->findOneBy(['token' => $request->headers->get('token')]);
    $actor = new User();
    if ($token) {
        $actor = $token->getUser();
    }
    $start = $request->toArray()['start'] ?: 0;
    $pageSize = $request->toArray()['pageSize'] ?: 10;
    $sort = $request->toArray()['sort'];
    $lang = $request->toArray()['lang'];
    $filterBy = ($request->toArray()['filter'])["filters"];
    $usersData = $workflowManager->getUserINworkflow($actor, $start, $pageSize, $sort, $filterBy, $lang);
    foreach ($usersData["data"] as $key => $salaryData) {
        $referentialId = $referentielManager->getByReferencesIdCode([$salaryData["actionWf"], $salaryData["typeStaff"], $salaryData["typeContrat"]], $fileDecode);
        foreach ($referentialId as $reference) {
            if ($usersData["data"][$key]["modified_by"] != null) {
                $usersData["data"][$key]["actor"]=$usersData["data"][$key]["modified_by"];
            }
            if (array_key_exists("type_staff", $reference)) {
                $usersData["data"][$key]["typeStaffIdRef"] = $reference["type_staff"];
            } elseif (array_key_exists("workflow", $reference)) {
                $usersData["data"][$key]["actionWfIdRef"] = $reference["workflow"];
            } elseif (array_key_exists("type_contrat", $reference)) {
                $usersData["data"][$key]["typeContratIdRef"] = $reference["type_contrat"];

            }
        }
    }
    return $this->json($usersData);

}

Any Help please

RiggsFolly
  • 93,638
  • 21
  • 103
  • 149

1 Answers1

0

you can try this

       1. ini_set("max_execution_time", "-1");
      or
       2. ini_set("memory_limit", "-1");
      or
       3. ignore_user_abort(true);
      or
       4. set_time_limit(0);
Rajib Bin Alam
  • 353
  • 1
  • 4
  • 16