Closed (works as designed)
Project:
Drupal core
Version:
8.0.x-dev
Component:
database system
Priority:
Normal
Category:
Bug report
Assigned:
Unassigned
Reporter:
Created:
28 Mar 2015 at 03:44 UTC
Updated:
31 Mar 2015 at 02:32 UTC
Jump to comment: Most recent, Most recent file
Comments
Comment #2
chx commentedWe pass in
Install\Tasksbut alsoSelectand Select is in Query by core but not in Query per driver so the fallback logic is not flat.Comment #4
chx commentedOK... So
->extend('Drupal\Core\Database\Query\PagerSelectExtender')(and similar) was breaking it. After this patch we can change all callers to use->extend('PagerSelectExtender')if we so want.Also, here is a fun one, I never realized the driver can override the extender by creating a class called
Drupal\drivernamespace\Drupal\Core\Database\Query\PagerSelectExtender. Probably that wasn't the intention but it is certainly so in HEAD and with this patch too.Comment #6
chx commentedThat's just a unit test trying to pick up the now nonexistent class. Better luck with pgsql.
Comment #7
jibranhmmm interesting.
Comment #8
Crell commentedThe issue summary is incomplete and breaks off mid-sentence. I think I follow what is being done here from the patch. However, this is a regression. Early in the D8 cycle we switched the child classes to always be required in order to simplify the code. I think I made that change as part of the namespace-ification.
I don't see a reason to go back here. The empty classes hurt no one, and the patch here introduces a while loop into the driver handling that seems completely unnecessary.
I'm inclined to won't-fix.
PS: Yes, driver-specific extender classes are a deliberate design decision. I don't know that they're often used, but I am pretty sure that was deliberate.
Comment #9
chx commentedBroke out one tiny, tiny bit to #2462653: Connection::getDriverClass doesn't support non-core drivers .