Fix DateTime & clear()

This commit is contained in:
Jeremy Benoist 2016-09-09 10:12:25 +02:00
parent 6d65c0a8b0
commit 8664069e1a
No known key found for this signature in database
GPG key ID: BCA73962457ACC3C
3 changed files with 16 additions and 7 deletions

View file

@ -97,7 +97,7 @@ class Entry
private $content;
/**
* @var date
* @var \DateTime
*
* @ORM\Column(name="created_at", type="datetime")
*
@ -106,7 +106,7 @@ class Entry
private $createdAt;
/**
* @var date
* @var \DateTime
*
* @ORM\Column(name="updated_at", type="datetime")
*
@ -413,7 +413,7 @@ class Entry
* Set created_at.
* Only used when importing data from an other service.
*
* @param DateTime $createdAt
* @param \DateTime $createdAt
*
* @return Entry
*/
@ -425,7 +425,7 @@ class Entry
}
/**
* @return DateTime
* @return \DateTime
*/
public function getCreatedAt()
{
@ -433,7 +433,7 @@ class Entry
}
/**
* @return DateTime
* @return \DateTime
*/
public function getUpdatedAt()
{

View file

@ -7,6 +7,8 @@ use OldSound\RabbitMqBundle\RabbitMq\ConsumerInterface;
use PhpAmqpLib\Message\AMQPMessage;
use Wallabag\ImportBundle\Import\AbstractImport;
use Wallabag\UserBundle\Repository\UserRepository;
use Wallabag\CoreBundle\Entity\Entry;
use Wallabag\CoreBundle\Entity\Tag;
use Psr\Log\LoggerInterface;
use Psr\Log\NullLogger;
@ -53,7 +55,10 @@ class EntryConsumer implements ConsumerInterface
try {
$this->em->flush();
$this->em->clear($entry);
// clear only affected entities
$this->em->clear(Entry::class);
$this->em->clear(Tag::class);
} catch (\Exception $e) {
$this->logger->warning('Unable to save entry', ['entry' => $storedEntry, 'exception' => $e]);

View file

@ -7,6 +7,7 @@ use Psr\Log\NullLogger;
use Doctrine\ORM\EntityManager;
use Wallabag\CoreBundle\Helper\ContentProxy;
use Wallabag\CoreBundle\Entity\Entry;
use Wallabag\CoreBundle\Entity\Tag;
use Wallabag\UserBundle\Entity\User;
use OldSound\RabbitMqBundle\RabbitMq\Producer;
@ -113,7 +114,10 @@ abstract class AbstractImport implements ImportInterface
// flush every 20 entries
if (($i % 20) === 0) {
$this->em->flush();
$this->em->clear($entry);
// clear only affected entities
$this->em->clear(Entry::class);
$this->em->clear(Tag::class);
}
++$i;
}