I have the same annotations to others ManyToOne relationships and works fine, but with this one occurs this error from doctrine cache. I'm stuck in this. It's like the doctrine doesn't knew the inversedBy
annotation.
The error track:
file: /var/www/html/clipp/Backend/vendor/doctrine/orm/lib/Doctrine/ORM/UnitOfWork.php
line: 2917
message: Undefined index: 000000003cb11e66000000006a2469c1
The ClientPromotion entity:
<?php
namespace Application\Model;
use Doctrine\ORM\Mapping as ORM;
/**
*
* @ORM\Entity
* @ORM\Table(name="ApplicationClientPromotion")
* @ORM\Cache(usage="READ_WRITE")
*/
class ClientPromotion
{
/**
* @ORM\Id
* @ORM\Column(type="integer");
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @ORM\ManyToOne(targetEntity="Application\Model\Client", cascade={"all"}, inversedBy="phoneCollection")
* @ORM\JoinColumn(name="client_id", referencedColumnName="id",onDelete="CASCADE")
* @ORM\Cache(usage="NONSTRICT_READ_WRITE")
*
*/
public $client;
The Client entity:
/**
*
* @ORM\Entity
* @ORM\Table(name="ApplicationClient"})
* @ORM\Cache(usage="NONSTRICT_READ_WRITE")
*/
class Client
{
/* OTHER ATTRIBUTES */
/**
* @ORM\OneToMany(
* targetEntity="Application\Model\ClientPromotion",
* mappedBy="client",
* cascade={"all"},
* orphanRemoval=true,
* fetch="EXTRA_LAZY")
* @ORM\Cache(usage="NONSTRICT_READ_WRITE")
* @var Doctrine\Common\Collections\Collection
*/
public $clientPromotionCollection;
The error occurs when I call a closure to filter the collection:
$freePricePromotions = $client->clientPromotionCollection->filter(function ($entry) {
// some logic
});