Make WordPress Core

Opened 15 years ago

Closed 14 years ago

#10798 closed defect (bug) (duplicate)

_transient_rewrite_rules can get too long causing MySQL error

Reported by: mark8barnes's profile mark8barnes Owned by:
Milestone: Priority: high
Severity: minor Version: 2.8.5
Component: General Keywords:
Focuses: Cc:

Description

On large sites, particularly with the permalink set to /%postname%/ _transient_rewrite_rules can get too long, causing the "MySQL server has gone away" error message.

`WordPress database error: [MySQL server has gone away]
INSERT INTO wp_options (option_name,option_value,autoload) VALUES ('_transient_rewrite_rules','a:7526:{s:12:\"robots\\.txt$\";s:18:\"index.php?robots=1\ etc.`

Once this occurs, functionality is severely disrupted until the permalink settings are changed.

I guess the easiest fix might me be to split the data in two, and store it in two rows.

Change History (5)

#1 @alxndr
15 years ago

I'm seeing a PHP Access Violation message when using the XML Sitemaps Generator; when using the debug function it provides, the error message is printed at the end of the dump of the '_transient_rewrite_rules' key under WordPress Config.

#2 @webgrafia
15 years ago

  • Priority changed from normal to high
  • Version changed from 2.8.4 to 2.8.5

I have a serious problem related with _transient_rewrite_rules with a blog with 760 pages.
For each new page that we try to publish or update it crash the entire server. No problems with post.

#3 @felipelavinz
14 years ago

I'll repeat something you probably already read, but it's worth saying that it's a very bad idea to use that kind of permalink structure if you care at all about performance... the option_value column has a max lenght of about 4MB, so even though the field can take a lot of info, you really wouldn't want to go through 4MB of data just to find out what kind of info should be displayed

#4 @nacin
14 years ago

Closing as a duplicate of #16687.

#5 @nacin
14 years ago

  • Milestone Future Release deleted
  • Resolution set to duplicate
  • Status changed from new to closed
Note: See TracTickets for help on using tickets.