GoToSocial/internal/gtsmodel
tobi 3cceed11b2
[feature/performance] Store account stats in separate table (#2831)
* [feature/performance] Store account stats in separate table, get stats from remote

* test account stats

* add some missing increment / decrement calls

* change stats function signatures

* rejig logging a bit

* use lock when updating stats
2024-04-16 13:10:13 +02:00
..
README.md
account.go [feature/performance] Store account stats in separate table (#2831) 2024-04-16 13:10:13 +02:00
accountnote.go
accountsettings.go
accountstats.go [feature/performance] Store account stats in separate table (#2831) 2024-04-16 13:10:13 +02:00
adminaction.go
application.go
block.go
client.go
domainallow.go
domainblock.go
domainpermission.go
emaildomainblock.go
emoji.go
emojicategory.go
filter.go
follow.go
followrequest.go
headerfilter.go
instance.go
list.go
marker.go
mediaattachment.go
mention.go
move.go
notification.go
poll.go
report.go
routersession.go
rule.go
status.go
statusbookmark.go
statusfave.go
statusmute.go
tag.go
thread.go
threadmute.go
token.go
tombstone.go
user.go

README.md

A note on when we should set data structures linked to objects in the database to use the bun nullzero tag -- this should only be done if the member type is a pointer, or if the this primitive type is literally invalid with an empty value (e.g. media IDs which when empty signifies a null database value, compared to say an account note which when empty could mean either an empty note OR null database value).

Obviously it is a little more complex than this in practice, but keep it in mind!