The db_prefix_tables() function in includes/database.inc generates notices if $db_prefix['default'] is not set. This patch fixes that problem. This has a side benefit of making $db_prefix easier to use.

CommentFileSizeAuthor
#2 database2.diff1.17 KBdanielc
database.diff720 bytesdanielc
Support from Acquia helps fund testing for Drupal Acquia logo

Comments

moshe weitzman’s picture

nice ... this has been a bit a pimple for a while.

danielc’s picture

FileSize
1.17 KB

I've come up with a new version of the patch that optimizes the speed of the whole function.

danielc’s picture

Change Version from "4.5.2" to "cvs".

danielc’s picture

Pardon me, I'm testing if this goes the drupal-dev list now that the version is "cvs."

danielc’s picture

Dries’s picture

Any idea of how much faster the second patch is? I don't think it makes a real difference in which case I'd favor the first patch.

danielc’s picture

The speed increase is 5%.

Dries’s picture

5% compared to what? What did you measure?

danielc’s picture

I tested the db_prefix_tables() function in two configurations. With my first patch applied and with my second patch applied. The second patch is 5% faster than the first. This improvement is the same for both the string and array formats of $db_url.

danielc’s picture

Can this please be applied to 4-6 and HEAD?

Dries’s picture

I was checking settings.php to read up on how to use $db_prefix but noticed that only the 'simple' case was documented. The fact that $db_prefix can be an array isn't explained anywhere (not in the phpdoc of db_prefix_tables() and not in settings.php). Where did that go? I wanted to check what the documentation had to say on the availability of a 'default' entry ...

moshe weitzman’s picture

docs in the administrators guide - http://drupal.org/node/2622

danielc’s picture

And the patch to issue 19474 (http://drupal.org/node/19474) contains a patch to provide such information to settings.php.

Dries’s picture

Committed to HEAD and DRUPAL-4-6. Thanks.

Anonymous’s picture