Comments (5)
Please try the last release: https://github.com/liip/LiipTestFixturesBundle/releases/tag/2.4.0
from liiptestfixturesbundle.
We may had a compatibility layer in order to call getCache()
if it's available, or getCacheDriver()
otherwise.
from liiptestfixturesbundle.
The new getCache()
method in AbstractClassMetadataFactory
in now protected (and was public)
from liiptestfixturesbundle.
This one's fun.
Based on liip/LiipFunctionalTestBundle#69 the intent is to flush the result cache before loading fixtures, but it's pulling the cache driver from the object manager's metadata factory. Only the ORM has a result cache though. Making things even more inconsistent, the ORM entity manager configures the metadata factory with the metadata cache service, which might not even be the same service as the result cache service. The document managers for MongoDB and PHPCR are also injecting the metadata cache service.
So if the intent is to clear the result cache, as the original PR implies, then there is a long-standing bug that needs to be fixed in the ORMDatabaseTool
and it needs to pull the correct cache service from the entity manager's configuration instance and the MongoDBDatabaseTool
and PHPCRDatabaseTool
classes can have this cache clearing operation removed.
If the intent is to clear the metadata cache, then the way forward looks to be replacing the getMetadataFactory()
calls with getConfiguration()
(note, that method isn't part of the ObjectManager
interface) and fetching the metadata cache service from there.
from liiptestfixturesbundle.
If the intent is to clear the metadata cache, then the way forward looks to be replacing the
getMetadataFactory()
calls withgetConfiguration()
(note, that method isn't part of theObjectManager
interface) and fetching the metadata cache service from there.
I prepared a MR which implements this suggestion - the property $om
is annotated as an EntityManager
in ORMDatabaseTool
, so the fact that getConnection
is not part of the ObjectManager
interface does not seem to be an issue here.
I do not have much experience with the doctrine caching system, but this PR makes the tests in my projects run.
Edit
This only fixes the issue for ORMDatabaseTool, not MongoDB/PHPCR/ORMSqlite
from liiptestfixturesbundle.
Related Issues (20)
- Drop support of PHP 7.2 and 7.3? HOT 1
- [Bug]: keep_database_and_schema config is ignored it is always false with SQL Server HOT 2
- facing issue in new pimcore version 10.6 HOT 5
- [Feature Request]: Add LoadFixtureGroup method HOT 2
- Deprecated DBAL APIs still in use HOT 1
- Question: cached database with GitLab CI pipeline HOT 2
- Load fixture without a file path HOT 7
- [Feature Request]: Support Symfony 7 HOT 1
- [Bug]: $referenceRepository->getReferences() is broken HOT 1
- [Bug]: mysqldump: unknown variable 'column-statistics=0' error HOT 7
- Performance with LiipTestFixturesBundle v2.6.0 HOT 7
- SqlitePlatform::getName() is deprecated HOT 4
- [Bug]: Impossible to set "keep_database_and_schema" HOT 4
- [Bug]: 2.7.2 - Doctrine MongoDB Manager can not be used anymore HOT 2
- [Feature Request]: Upgrading doctrine/dbal Connection handling HOT 5
- [Feature Request]: Support "doctrine/dbal" 4 HOT 1
- [Feature Request]: Prepare release 3.x HOT 1
- [Bug]: Undeclared dependency on doctrine/dbal ^3.1.0 | ^4.0.1 HOT 3
- [Feature Request]: Support doctrine/dbal 4
- contributing: MongoDb extension on Mac M1 HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from liiptestfixturesbundle.