How to break your Joomla! website?

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` [..]

 

171 Votes

8 Comments

Feed
  1. Are there any websites with 2 billion articles?!
  2. The id field in the jos_content table is (as expected) unsigned, this means we have 4.294.967.295 articles possibile.. right? :-)
  3. Well. I guess no more Joomla! for me. I hit the 2 billion mark last week and am coming up on the limit.

    Now... I guess this also means I'll have to write some special migrator to WordPress that will do everything smoothly.

    (If you couldn't tell...everything above was written with the utmost sarcasm)
  4. God,but i don't think i will go to that number
  5. one day wikipedia will have
  6. some funny mathematics:
    there is a Daily Newspaper in your town,
    - it has 100 articles in every day
    - it issued 400 times in every year (with special editions)
    - it established over 100 years ago
    do you mean there is such 1000 newspaper on the whole word ?
    :D:):D:):D
  7. Hi,
    Peter were you able to find more. The jos_content id has int(11) but does not allow anything more than 999999999 - When I changed this to bigint(18) It was able to take in more values - but navigating to the section or article gives me a 404 error. Do I need to make changes in the joomla database php or other places?

    Thanks for helping.
  8. Hi,

    To double the current limit, surely you could just change the unsigned to signed and set the next auto id to -4,294,967,295.

    When the next auto-increment for the ID column takes place it will be -4,294,967,294 and so on.

    Cheers

    8-)

Add Comment


    • >:o
    • :-[
    • :'(
    • :-(
    • :-D
    • :-*
    • :-)
    • :P
    • :\
    • 8-)
    • ;-)