mirror of
https://github.com/status-im/status-go.git
synced 2025-01-09 06:12:55 +00:00
4ab08629f6
This commits adds support for postgres database. Currently two fields are stored: the bloom filter and the topic. Only the bloom filter is actually used to query, but potentially we will use also the topic in the future, so easier to separate it now in order to avoid a migration.
24 lines
555 B
Go
24 lines
555 B
Go
package pq
|
|
|
|
import (
|
|
"encoding/hex"
|
|
"fmt"
|
|
)
|
|
|
|
// decodeUUIDBinary interprets the binary format of a uuid, returning it in text format.
|
|
func decodeUUIDBinary(src []byte) ([]byte, error) {
|
|
if len(src) != 16 {
|
|
return nil, fmt.Errorf("pq: unable to decode uuid; bad length: %d", len(src))
|
|
}
|
|
|
|
dst := make([]byte, 36)
|
|
dst[8], dst[13], dst[18], dst[23] = '-', '-', '-', '-'
|
|
hex.Encode(dst[0:], src[0:4])
|
|
hex.Encode(dst[9:], src[4:6])
|
|
hex.Encode(dst[14:], src[6:8])
|
|
hex.Encode(dst[19:], src[8:10])
|
|
hex.Encode(dst[24:], src[10:16])
|
|
|
|
return dst, nil
|
|
}
|