mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 08:30:25 +08:00 
			
		
		
		
	fix: if Mirrors repo no content is fetched, updated time should not b… (#3551)
* fix: if Mirrors repo no content is fetched, updated time should not be changed * fix: sync update time from mirror repo. * fix: one single session. * update comment. Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
This commit is contained in:
		@@ -244,6 +244,8 @@ func MirrorUpdate() {
 | 
			
		||||
// SyncMirrors checks and syncs mirrors.
 | 
			
		||||
// TODO: sync more mirrors at same time.
 | 
			
		||||
func SyncMirrors() {
 | 
			
		||||
	sess := x.NewSession()
 | 
			
		||||
	defer sess.Close()
 | 
			
		||||
	// Start listening on new sync requests.
 | 
			
		||||
	for repoID := range MirrorQueue.Queue() {
 | 
			
		||||
		log.Trace("SyncMirrors [repo_id: %v]", repoID)
 | 
			
		||||
@@ -260,10 +262,22 @@ func SyncMirrors() {
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		m.ScheduleNextUpdate()
 | 
			
		||||
		if err = UpdateMirror(m); err != nil {
 | 
			
		||||
		if err = updateMirror(sess, m); err != nil {
 | 
			
		||||
			log.Error(4, "UpdateMirror [%s]: %v", repoID, err)
 | 
			
		||||
			continue
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		// Get latest commit date and update to current repository updated time
 | 
			
		||||
		commitDate, err := git.GetLatestCommitTime(m.Repo.RepoPath())
 | 
			
		||||
		if err != nil {
 | 
			
		||||
			log.Error(2, "GetLatestCommitDate [%s]: %v", m.RepoID, err)
 | 
			
		||||
			continue
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		if _, err = sess.Exec("UPDATE repository SET updated_unix = ? WHERE id = ?", commitDate.Unix(), m.RepoID); err != nil {
 | 
			
		||||
			log.Error(2, "Update repository 'updated_unix' [%s]: %v", m.RepoID, err)
 | 
			
		||||
			continue
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user