Fork me on GitHub
Subscribe 0

Ticket #3 (fixed enhancement)

Improving performance for large topics

  • Created: 2010-05-23 20:38:56
  • Reported by: Reines
  • Assigned to: Reines
  • Milestone: 1.4.0
  • Component: database
  • Priority: low

FluxBB currently uses SELECT ... LIMIT X, Y quite often - specifically within threads to select the page of posts.

Using LIMIT X, Y with a large X is inefficient as the MySQL server will select all X+Y records then throw away X of them. When selecting lots of fields and joining other tables this is expensive.


Reines 2010-05-23 21:38:50

  • Owner set to Reines.

Reines 2010-05-23 22:35:39

  • Owner Reines removed.

Reines 2010-05-25 21:38:25

  • Milestone set to 1.4.1.

Reines 2010-05-26 13:51:42

I just did a little quick testing, and it seems the idea of splitting the query into 2 - one fetching only the IDs and handling the LIMIT, and the other fetching all the data corresponding to those IDs - is actually an improvement in all cases.

Reines 2010-05-26 13:54:18

  • Owner set to Reines.

Franz 2010-05-27 22:55:31

  • Milestone changed from 1.4.1 to 1.4.0.

Reines 2010-05-27 23:10:12

  • Status changed from open to fixed.

Commit in cf806e8 (then fixed in a7d4528 and bb787f9...)

Page (v2.0:modules:cache) edited by Franz 2012-02-15 23:50:09

#368: Add API section stub

Page (v2.0:modules:cache) edited by Franz 2012-06-22 12:09:25

#368: Clean up example code.