Add SQL execution on log and indexes on table repository and comment (#7740)
* add index on comment * add SQL execution time on log and index owner_id on repository * add migration
This commit is contained in:
		
							parent
							
								
									52feff5a5c
								
							
						
					
					
						commit
						7b009626da
					
				|  | @ -99,10 +99,10 @@ const ( | |||
| 
 | ||||
| // Comment represents a comment in commit and issue page.
 | ||||
| type Comment struct { | ||||
| 	ID               int64 `xorm:"pk autoincr"` | ||||
| 	Type             CommentType | ||||
| 	PosterID         int64 `xorm:"INDEX"` | ||||
| 	Poster           *User `xorm:"-"` | ||||
| 	ID               int64       `xorm:"pk autoincr"` | ||||
| 	Type             CommentType `xorm:"index"` | ||||
| 	PosterID         int64       `xorm:"INDEX"` | ||||
| 	Poster           *User       `xorm:"-"` | ||||
| 	OriginalAuthor   string | ||||
| 	OriginalAuthorID int64 | ||||
| 	IssueID          int64  `xorm:"INDEX"` | ||||
|  | @ -143,7 +143,7 @@ type Comment struct { | |||
| 	ShowTag CommentTag `xorm:"-"` | ||||
| 
 | ||||
| 	Review      *Review `xorm:"-"` | ||||
| 	ReviewID    int64 | ||||
| 	ReviewID    int64   `xorm:"index"` | ||||
| 	Invalidated bool | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -236,6 +236,8 @@ var migrations = []Migration{ | |||
| 	NewMigration("add original author/url migration info to issues, comments, and repo ", addOriginalMigrationInfo), | ||||
| 	// v90 -> v91
 | ||||
| 	NewMigration("change length of some repository columns", changeSomeColumnsLengthOfRepo), | ||||
| 	// v91 -> v92
 | ||||
| 	NewMigration("add index on owner_id of repository and type, review_id of comment", addIndexOnRepositoryAndComment), | ||||
| } | ||||
| 
 | ||||
| // Migrate database to current version
 | ||||
|  |  | |||
|  | @ -0,0 +1,26 @@ | |||
| // Copyright 2019 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 "github.com/go-xorm/xorm" | ||||
| 
 | ||||
| func addIndexOnRepositoryAndComment(x *xorm.Engine) error { | ||||
| 	type Repository struct { | ||||
| 		ID      int64 `xorm:"pk autoincr"` | ||||
| 		OwnerID int64 `xorm:"index"` | ||||
| 	} | ||||
| 
 | ||||
| 	if err := x.Sync2(new(Repository)); err != nil { | ||||
| 		return err | ||||
| 	} | ||||
| 
 | ||||
| 	type Comment struct { | ||||
| 		ID       int64 `xorm:"pk autoincr"` | ||||
| 		Type     int   `xorm:"index"` | ||||
| 		ReviewID int64 `xorm:"index"` | ||||
| 	} | ||||
| 
 | ||||
| 	return x.Sync2(new(Comment)) | ||||
| } | ||||
|  | @ -262,6 +262,7 @@ func NewTestEngine(x *xorm.Engine) (err error) { | |||
| 		return fmt.Errorf("Connect to database: %v", err) | ||||
| 	} | ||||
| 
 | ||||
| 	x.ShowExecTime(true) | ||||
| 	x.SetMapper(core.GonicMapper{}) | ||||
| 	x.SetLogger(NewXORMLogger(!setting.ProdMode)) | ||||
| 	x.ShowSQL(!setting.ProdMode) | ||||
|  | @ -275,6 +276,7 @@ func SetEngine() (err error) { | |||
| 		return fmt.Errorf("Failed to connect to database: %v", err) | ||||
| 	} | ||||
| 
 | ||||
| 	x.ShowExecTime(true) | ||||
| 	x.SetMapper(core.GonicMapper{}) | ||||
| 	// WARNING: for serv command, MUST remove the output to os.stdout,
 | ||||
| 	// so use log file to instead print to stdout.
 | ||||
|  |  | |||
|  | @ -129,7 +129,7 @@ func NewRepoContext() { | |||
| // Repository represents a git repository.
 | ||||
| type Repository struct { | ||||
| 	ID            int64  `xorm:"pk autoincr"` | ||||
| 	OwnerID       int64  `xorm:"UNIQUE(s)"` | ||||
| 	OwnerID       int64  `xorm:"UNIQUE(s) index"` | ||||
| 	OwnerName     string `xorm:"-"` | ||||
| 	Owner         *User  `xorm:"-"` | ||||
| 	LowerName     string `xorm:"UNIQUE(s) INDEX NOT NULL"` | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue