gitea/models/git
YR Chen b1dae9f2c8
Move from `max( id )` to `max( index )` for latest commit statuses (#30076) (#30155)
Backport https://github.com/go-gitea/gitea/pull/30076.

This PR replaces the use of `max( id )`, and instead using ``max(
`index` )`` for determining the latest commit status. Building business
logic over an `auto_increment` primary key like `id` is risky and
there’re already plenty of discussions on the Internet.

There‘s no guarantee for `auto_increment` values to be monotonic,
especially upon failures or with a cluster. In the specific case, we met
the problem of commit statuses being outdated when using TiDB as the
database. As [being
documented](https://docs.pingcap.com/tidb/stable/auto-increment),
`auto_increment` values assigned to an `insert` statement will only be
monotonic on a per server (node) basis.

Closes #30074.
2024-03-28 16:29:38 +00:00
..
branch.go Fix schedule tasks bugs (#28691) (#28780) 2024-01-14 23:54:22 +01:00
branch_list.go Also sync DB branches on push if necessary (#28361) (#28403) 2023-12-11 06:16:56 +00:00
branch_test.go Fix schedule tasks bugs (#28691) (#28780) 2024-01-14 23:54:22 +01:00
commit_status.go Move from `max( id )` to `max( index )` for latest commit statuses (#30076) (#30155) 2024-03-28 16:29:38 +00:00
commit_status_test.go Fix `GetCommitStatuses` (#28787) (#28804) 2024-01-15 19:30:12 +01:00
lfs.go Fix bugs in LFS meta garbage collection (#26122) 2023-07-26 07:02:53 +00:00
lfs_lock.go Introduce path Clean/Join helper functions (#23495) 2023-03-21 16:02:49 -04:00
main_test.go move repository deletion to service layer (#26948) 2023-09-08 04:51:15 +00:00
protected_banch_list_test.go Fix branch protection priority (#24045) 2023-04-11 13:22:49 -04:00
protected_branch.go Replace `util.SliceXxx` with `slices.Xxx` (#26958) 2023-09-07 09:37:47 +00:00
protected_branch_list.go Sync branches into databases (#22743) 2023-06-29 10:03:20 +00:00
protected_branch_test.go Supports wildcard protected branch (#20825) 2023-01-16 16:00:22 +08:00
protected_tag.go Use context parameter in models/git (#22367) 2023-01-09 11:50:54 +08:00
protected_tag_test.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00