The Joomla! Community Portal ™

How to break your Joomla! website?
Written by Peter Martin   
Monday, 11 January 2010 14:04

There is a limitation to the number of articles a default Joomla! website can store: just over 4 billion articles.
If you create over 4,294,967,295 articles, your Joomla! website will break....

Technical background: All Joomla!'s articles are stored in a MySQL database, in a table called jos_contents. Every article has its unique ID, which is stored in the ID field. The ID field is of field type INT(11) unsigned. The highest number that can be stored in an INT(11) unsigned field, and hence the maximum ID that can be used, is 4,294,967,295. So, the maximum number of articles that a Joomla! website can contain is 4,294,967,295.

BTW: INT(11) (with or without unsigned) for IDs and its limitation are quite common with software that uses MySQL, so it's not a particular Joomla! "issue" ;-)

PS: do you really write quite that lot? ;-)
The MySQL table field type BIGINT unsigned is able to store higher integers; 18,446,744,073,709,551,615. But BIGINT will only work on 64 bit operating systems with PHP AND MySQL compiled as 64 bit. I am not sure though if Joomla will work with BIGINT as ID field type.

 

Correction: Flavio Copes is right! Previously I wrote about a limitation of max. 2,147,483,647 articles.
You can test it yourself in Joomla! 1.5:

  • with phpMyAdmin create a dummy article with ID=4294967294.
  • in the Joomla! back-end create a new dummy article, save and it will be stored with ID=4294967295.
  • create another article, save and you will get the following error:
500 - An error has occurred!
DB function failed with error number 1062
Duplicate entry '4294967295' for key 1 SQL=INSERT INTO `jos_content` [..]