mirror of
				https://github.com/go-gitea/gitea
				synced 2025-10-31 03:18:24 +00:00 
			
		
		
		
	There appears to be a strange bug whereby the comment_id index can sometimes be missed or missing from the action table despite the sync2 that should create it in the earlier part of this migration. However, looking through the code for Sync2 there is no need for this pre-code to exist and Sync2 should drop/create the indices as necessary. I think therefore we should simplify the migration to simply be Sync2. Signed-off-by: Andrew Thornton <art27@cantab.net>
		
			
				
	
	
		
			47 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| // Copyright 2022 The Gitea Authors. All rights reserved.
 | |
| // Use of this source code is governed by a MIT-style
 | |
| // license that can be found in the LICENSE file.
 | |
| 
 | |
| package migrations
 | |
| 
 | |
| import (
 | |
| 	"code.gitea.io/gitea/modules/timeutil"
 | |
| 
 | |
| 	"xorm.io/xorm"
 | |
| 	"xorm.io/xorm/schemas"
 | |
| )
 | |
| 
 | |
| type improveActionTableIndicesAction struct {
 | |
| 	ID          int64 `xorm:"pk autoincr"`
 | |
| 	UserID      int64 // Receiver user id.
 | |
| 	OpType      int
 | |
| 	ActUserID   int64 // Action user id.
 | |
| 	RepoID      int64
 | |
| 	CommentID   int64 `xorm:"INDEX"`
 | |
| 	IsDeleted   bool  `xorm:"NOT NULL DEFAULT false"`
 | |
| 	RefName     string
 | |
| 	IsPrivate   bool               `xorm:"NOT NULL DEFAULT false"`
 | |
| 	Content     string             `xorm:"TEXT"`
 | |
| 	CreatedUnix timeutil.TimeStamp `xorm:"created"`
 | |
| }
 | |
| 
 | |
| // TableName sets the name of this table
 | |
| func (a *improveActionTableIndicesAction) TableName() string {
 | |
| 	return "action"
 | |
| }
 | |
| 
 | |
| // TableIndices implements xorm's TableIndices interface
 | |
| func (a *improveActionTableIndicesAction) TableIndices() []*schemas.Index {
 | |
| 	actUserIndex := schemas.NewIndex("au_r_c_u_d", schemas.IndexType)
 | |
| 	actUserIndex.AddColumn("act_user_id", "repo_id", "created_unix", "user_id", "is_deleted")
 | |
| 
 | |
| 	repoIndex := schemas.NewIndex("r_c_u_d", schemas.IndexType)
 | |
| 	repoIndex.AddColumn("repo_id", "created_unix", "user_id", "is_deleted")
 | |
| 
 | |
| 	return []*schemas.Index{actUserIndex, repoIndex}
 | |
| }
 | |
| 
 | |
| func improveActionTableIndices(x *xorm.Engine) error {
 | |
| 	return x.Sync2(&improveActionTableIndicesAction{})
 | |
| }
 |