Initially, I assume that PostId is auto-incremented. Except for very rare cases, where the data is completely wiped from the database, leaving some holes in the PostId progression, I expect that the PostId would always lead me to a question, an answer, or a tag wiki.
However, when I looked at the SEDE data as research for this meta question, with the following query, I found some big gaps in the progression:
;WITH n(n) AS
(
SELECT 1
UNION ALL
SELECT n+1 FROM n WHERE n < 26000
)
SELECT n FROM n
left join postswithdeleted d on d.id = n
where d.posttypeid is null
ORDER BY n
OPTION (MAXRECURSION 26000);
On A&M, there are roughly 6000 ids not accessible by any means, broken into 6 ranges, roughly 1000 ids each:
- 934 → 1929 (996 ids), post id 933 posted on 2013/01/14
- 10160 → 11154 (995 ids), post id 10159 posted on 2014/06/08
- 11751 → 12746 (996 ids), post id 11750 posted on 2014/07/10
- 15640 → 16636 (997 ids), post id 15639 posted on 2014/12/11
- 17353 → 18351 (999 ids), post id 17352 posted on 2015/01/07
- 24612 → 25609 (998 ids), post id 24611 posted on 2015/09/03
Since the gaps are quite uniform, I guess there must be a reason behind it. What caused these gaps in the progression of PostId?