Summary: One advantage I wanted to get out of T1191 is automated rebuilds of `quickstart.sql`. If they don't actually work, I'd like to know sooner rather than later. We haven't rebuilt in a couple months, so give it a shot. Ran into two issues: - Some very old patches specify overlong keys which don't work if your default charsets are utf8mb4. Shorten these. No real users have applied these in a very long time. - Some gymnastics around `corpus` for the new Conpherence search index. Test Plan: - Ran `arc unit --everything`, got clean results. - Cost to do a storage upgrade on an empty namespace dropped from ~4s to ~3s. Reviewers: btrahan Reviewed By: btrahan Subscribers: epriestley Differential Revision: https://secure.phabricator.com/D11454
		
			
				
	
	
		
			23 lines
		
	
	
		
			841 B
		
	
	
	
		
			SQL
		
	
	
	
	
	
			
		
		
	
	
			23 lines
		
	
	
		
			841 B
		
	
	
	
		
			SQL
		
	
	
	
	
	
/* Patch 060 neglected to make this an AUTO_INCREMENT PRIMARY KEY */
 | 
						|
ALTER TABLE {$NAMESPACE}_phriction.phriction_document
 | 
						|
  CHANGE id id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY;
 | 
						|
 | 
						|
/* Needs to be initially nullable for insert when documents are created. */
 | 
						|
ALTER TABLE {$NAMESPACE}_phriction.phriction_document
 | 
						|
  CHANGE contentID contentID INT UNSIGNED;
 | 
						|
 | 
						|
CREATE TABLE {$NAMESPACE}_phriction.phriction_content (
 | 
						|
  id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,
 | 
						|
  documentID INT UNSIGNED NOT NULL,
 | 
						|
  version INT UNSIGNED NOT NULL,
 | 
						|
  UNIQUE KEY (documentID, version),
 | 
						|
  authorPHID VARCHAR(64) BINARY NOT NULL,
 | 
						|
  KEY (authorPHID),
 | 
						|
  title VARCHAR(512) NOT NULL,
 | 
						|
  slug VARCHAR(512) NOT NULL,
 | 
						|
  KEY (slug(128)),
 | 
						|
  content LONGBLOB NOT NULL,
 | 
						|
  dateCreated INT UNSIGNED NOT NULL,
 | 
						|
  dateModified INT UNSIGNED NOT NULL
 | 
						|
) ENGINE=InnoDB;
 |