0
0
Fork 0
mirror of https://github.com/go-gitea/gitea synced 2024-12-25 05:35:02 +01:00
gitea/modules
Jason Song 9958642502
Fix issues indexer document mapping (#25619)
Fix regression of #5363 (so long ago).

The old code definded a document mapping for `issueIndexerDocType`, and
assigned it to `BleveIndexerData` as its type. (`BleveIndexerData` has
been renamed to `IndexerData` in #25174, but nothing more.) But the old
code never used `BleveIndexerData`, it wrote the index with an anonymous
struct type. Nonetheless, bleve would use the default auto-mapping for
struct it didn't know, so the indexer still worked. This means the
custom document mapping was always dead code.

The custom document mapping is not useless, it can reduce index storage,
this PR brings it back and disable default mapping to prevent it from
happening again. Since `IndexerData`(`BleveIndexerData`) has JSON tags,
and bleve uses them first, so we should use `repo_id` as the field name
instead of `RepoID`.

I did a test to compare the storage size before and after this, with
about 3k real comments that were migrated from some public repos.

Before:

```text
[ 160]  .
├── [  42]  index_meta.json
├── [  13]  rupture_meta.json
└── [ 128]  store
    ├── [6.9M]  00000000005d.zap
    └── [256K]  root.bolt
```

After:

```text
[ 160]  .
├── [  42]  index_meta.json
├── [  13]  rupture_meta.json
└── [ 128]  store
    ├── [3.5M]  000000000065.zap
    └── [256K]  root.bolt
```

It saves about half the storage space.

---------

Co-authored-by: Giteabot <teabot@gitea.io>
2023-07-04 09:05:28 +00:00
..
actions Support downloading raw task logs (#24451) 2023-06-29 10:58:56 +08:00
activitypub
analyze
assetfs Use a general approach to access custom/static/builtin assets (#24022) 2023-04-12 18:16:45 +08:00
auth Use a general approach to access custom/static/builtin assets (#24022) 2023-04-12 18:16:45 +08:00
avatar Improve avatar uploading / resizing / compressing, remove Fomantic card module (#24653) 2023-05-13 20:59:11 +02:00
base Update octicons and use octicon-file-directory-symlink (#25453) 2023-06-22 22:05:52 +00:00
cache Update redis library to support redis v7 (#24114) 2023-04-13 18:41:04 -04:00
charset Update go tool dependencies, restructure lint targets (#24239) 2023-04-22 14:53:00 -04:00
container
context Sync branches into databases (#22743) 2023-06-29 10:03:20 +00:00
csv Refactor locale number (#24134) 2023-04-17 11:37:23 +08:00
doctor Refactor path & config system (#25330) 2023-06-21 13:50:26 +08:00
emoji Update emoji set to Unicode 15 (#25595) 2023-06-29 16:29:48 +00:00
eventsource
generate
git Fix index generation parallelly failure (#25235) 2023-06-15 02:14:43 +02:00
gitgraph
graceful Improve queue and logger context (#24924) 2023-05-26 07:31:55 +00:00
hcaptcha
highlight
hostmatcher
html
httpcache Use standard HTTP library to serve files (#24693) 2023-05-13 16:04:57 +02:00
httplib Use fetch to send requests to create issues/comments (#25258) 2023-06-16 06:32:43 +00:00
indexer Fix issues indexer document mapping (#25619) 2023-07-04 09:05:28 +00:00
issue/template
json
label
lfs Rewrite logger system (#24726) 2023-05-21 22:35:11 +00:00
log Fix sub-command log level (#25537) 2023-06-28 08:02:06 +02:00
markup Refactor path & config system (#25330) 2023-06-21 13:50:26 +08:00
mcaptcha
metrics Use a separate admin page to show global stats, remove actions stat (#25062) 2023-06-03 22:03:41 +08:00
migration
mirror Improve queue and logger context (#24924) 2023-05-26 07:31:55 +00:00
nosql Update redis library to support redis v7 (#24114) 2023-04-13 18:41:04 -04:00
notification Add Adopt repository event and handler (#25497) 2023-06-26 06:59:15 +00:00
options Use a general approach to access custom/static/builtin assets (#24022) 2023-04-12 18:16:45 +08:00
packages Add direct serving of package content (#25543) 2023-07-03 15:33:28 +02:00
paginator Use more specific test methods (#24265) 2023-04-22 17:56:27 -04:00
pprof
private Use the type RefName for all the needed places and fix pull mirror sync bugs (#24634) 2023-05-26 01:04:48 +00:00
process Do not output "Trace" level logs from process manager by default (#24952) 2023-05-27 10:55:24 +00:00
proxy
proxyprotocol
public Use standard HTTP library to serve files (#24693) 2023-05-13 16:04:57 +02:00
queue Help to recover from corrupted levelqueue (#24912) 2023-05-29 10:52:32 +08:00
recaptcha
references
regexplru
repository Fix branch commit message too long problem (#25588) 2023-06-30 17:03:05 +08:00
secret Improve decryption failure message (#24573) 2023-05-07 19:29:43 +08:00
session Update redis library to support redis v7 (#24114) 2023-04-13 18:41:04 -04:00
setting Set SSH_AUTHORIZED_KEYS_BACKUP to false (#25412) 2023-07-01 04:07:48 +00:00
sitemap
ssh Refactor path & config system (#25330) 2023-06-21 13:50:26 +08:00
storage Fix all possible setting error related storages and added some tests (#23911) 2023-06-14 11:42:38 +08:00
structs Add API for changing Avatars (#25369) 2023-06-29 23:22:55 +00:00
svg Use inline SVG for built-in OAuth providers (#25171) 2023-06-13 10:51:02 +00:00
sync
system
templates Fix missing commit message body when the message has leading newlines (#25418) 2023-06-21 09:14:34 +00:00
test Refactor web package and context package (#25298) 2023-06-18 09:59:09 +02:00
testlogger Refactor path & config system (#25330) 2023-06-21 13:50:26 +08:00
timeutil Fix incorrect webhook time and use relative-time to display it (#24477) 2023-05-03 19:53:43 -04:00
translation Refactor INI package (first step) (#25024) 2023-06-02 17:27:30 +08:00
turnstile
typesniffer
updatechecker
upload
uri
user
util Store and use seconds for timeline time comments (#25392) 2023-06-23 12:12:39 +00:00
validation
web Refactor web package and context package (#25298) 2023-06-18 09:59:09 +02:00
webhook New webhook trigger for receiving Pull Request review requests (#24481) 2023-05-24 22:06:27 -04:00