Comments (12)
I really like the idea. This will require some refactoring of the data collector (and of course the displaying in the webprofiler).
I will work on it this weekend.
from doctrinebundle.
Related to symfony/symfony#2930
from doctrinebundle.
@Tobion It is a totally different thing. When explaining the query, I will never replace the parameters by hand. I will simply let PDO bind them when running the EXPLAIN query.
from doctrinebundle.
I see, so you also want to provide a UI for the EXPLAIN result.
from doctrinebundle.
This cannot be implemented currently.
The DBAL logger is called before conversion from the PHP values to the database values. Because of this, the profiler has to sanitize the queries because the parameters may not be serializable. So we cannot execute the query again with EXPLAIN.as we are not able to bind the parameters again.
Btw, the feature request linked by @Tobion cannot be implemented either for the same reason
from doctrinebundle.
I think it should be changed in that the DBAL logger only logs the database values. The PHP values are not usefull in this case.
from doctrinebundle.
@beberlei what do you think about it ?
from doctrinebundle.
@stof I'm ok with this change, specially because this currently means Logger is unusable to log, so against its concept.
Even though, this change may be considered as a BC break, it sounds like a bug to me (because what is logged is not actually the query executed neither the parameters are the correct ones)
from doctrinebundle.
@guilhermeblanco anyway, to be able to use such change in the DBAL logger for Symfony 2.1, we need to have this change in Doctrine 2.2. Is it too late already ?
from doctrinebundle.
@stof it will depends of how @beberlei is going to consider this
. I'd consider as a bug, so fixing it would be valid. If he also considers on this perspective, it will be in 2.2
from doctrinebundle.
@stof I am +1, but i cant yet see how it works in the code. Happily awaiting a PR. Will merge this into 2.2
from doctrinebundle.
Implemented by #12
from doctrinebundle.
Related Issues (20)
- PostrgreSQL 15 with Symfony 6.4 ID generation deprecation - SEQUENCE for Doctrine\DBAL\Platforms\PostgreSqlPlatform HOT 4
- Subscribing to onSchemaCreateTable events is deprecated HOT 3
- Unsetting "dbname" param leads to incorrectly casting deprecation HOT 2
- Add support to the new id entity generation preferences in Doctrine ORM 3.0 HOT 1
- Missing `doctrine/common` in composer.json
- Missing SimplifiedYamlDriver but it is still required in code. HOT 1
- Create and drop PostgreSQL database fails HOT 5
- DBAL 4 `setNestTransactionsWithSavepoints` deprecation HOT 1
- Prefix pgsql uses PDO PgSQL driver instead of PgSQL HOT 1
- Custom fields always treated as changed in Postgres HOT 2
- `CREATE SCHEMA public` is added to all `down` migrations in Postgres HOT 1
- Decorating DoctrineRegistry service breaks 'explain query' functionality in symfony webprofiler. HOT 1
- Default dbname broken since 2.11.4 HOT 3
- `enable_lazy_ghost_objects: true` breaks separation of entities with serializer groups HOT 1
- Incorrect string value saving emoji HOT 6
- Issue with StaticPHPDriver namespace since doctrine/orm 2.3 (breaks since 3.0) HOT 1
- Impossible to profile LoadDataFixturesDoctrineCommand HOT 1
- Symfony 7.1 Support HOT 1
- Update to 2.12 breaks Symfony debug toolbar HOT 11
- Overriding xml mappings file ignored HOT 1
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 doctrinebundle.