lmdb/badger: stop sorting tags in-place when creating indexes. it is not necessary and was messing up things.
This commit is contained in:
@@ -86,7 +86,6 @@ func getIndexKeysForEvent(evt *nostr.Event, idx []byte) [][]byte {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// ~ by tagvalue+date
|
// ~ by tagvalue+date
|
||||||
slices.SortFunc(evt.Tags, eventstore.TagSorter)
|
|
||||||
for i, tag := range evt.Tags {
|
for i, tag := range evt.Tags {
|
||||||
if len(tag) < 2 || len(tag[0]) != 1 || len(tag[1]) == 0 || len(tag[1]) > 100 {
|
if len(tag) < 2 || len(tag[0]) != 1 || len(tag[1]) == 0 || len(tag[1]) > 100 {
|
||||||
// not indexable
|
// not indexable
|
||||||
|
|||||||
@@ -79,7 +79,6 @@ func (b *LMDBBackend) getIndexKeysForEvent(evt *nostr.Event) []key {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// ~ by tagvalue+date
|
// ~ by tagvalue+date
|
||||||
slices.SortFunc(evt.Tags, eventstore.TagSorter)
|
|
||||||
for i, tag := range evt.Tags {
|
for i, tag := range evt.Tags {
|
||||||
if len(tag) < 2 || len(tag[0]) != 1 || len(tag[1]) == 0 || len(tag[1]) > 100 {
|
if len(tag) < 2 || len(tag[0]) != 1 || len(tag[1]) == 0 || len(tag[1]) > 100 {
|
||||||
// not indexable
|
// not indexable
|
||||||
|
|||||||
15
utils.go
15
utils.go
@@ -4,8 +4,6 @@ import (
|
|||||||
"encoding/hex"
|
"encoding/hex"
|
||||||
"strconv"
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/nbd-wtf/go-nostr"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func GetAddrTagElements(tagValue string) (kind uint16, pkb []byte, d string) {
|
func GetAddrTagElements(tagValue string) (kind uint16, pkb []byte, d string) {
|
||||||
@@ -19,16 +17,3 @@ func GetAddrTagElements(tagValue string) (kind uint16, pkb []byte, d string) {
|
|||||||
}
|
}
|
||||||
return 0, nil, ""
|
return 0, nil, ""
|
||||||
}
|
}
|
||||||
|
|
||||||
func TagSorter(a, b nostr.Tag) int {
|
|
||||||
if len(a) < 2 {
|
|
||||||
if len(b) < 2 {
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
return -1
|
|
||||||
}
|
|
||||||
if len(b) < 2 {
|
|
||||||
return 1
|
|
||||||
}
|
|
||||||
return strings.Compare(a[1], b[1])
|
|
||||||
}
|
|
||||||
|
|||||||
Reference in New Issue
Block a user