Skip to content

Commit 3abc204

Browse files
committed
rename inmemory -> database
1 parent be31c4e commit 3abc204

18 files changed

+71
-71
lines changed

cmd/run.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import (
1616
"go.uber.org/zap"
1717

1818
// import database types so init is called
19-
"github.com/crimist/trakx/storage/inmemory"
19+
"github.com/crimist/trakx/storage/database"
2020
)
2121

2222
// Run initializes and runs the tracker with the requested configuration settings.
@@ -39,9 +39,9 @@ func Run(conf *config.Configuration) {
3939
// TODO: cache the prev IP collector map size :D
4040
collector := stats.NewCollectors(conf.Stats.General, conf.Stats.IP, 0)
4141

42-
db, err := inmemory.NewInMemory(inmemory.Config{
42+
db, err := database.NewDatabase(database.Config{
4343
InitalSize: 0, // TODO: cache this on exit and load on startup
44-
Persistance: &inmemory.FilePersistance{},
44+
Persistance: &database.FilePersistance{},
4545
PersistanceAddress: conf.DB.Backup.Path,
4646
EvictionFrequency: conf.DB.GC,
4747
ExpirationTime: conf.DB.Expiry,
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package inmemory
1+
package database
22

33
import (
44
"time"
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package inmemory
1+
package database
22

33
import (
44
"bufio"
@@ -13,7 +13,7 @@ import (
1313

1414
// binary coders are better than gob coders below ~1.5 million peers
1515

16-
func encodeBinary(db *InMemory) ([]byte, error) {
16+
func encodeBinary(db *Database) ([]byte, error) {
1717
var buff bytes.Buffer
1818
writer := bufio.NewWriter(&buff)
1919

@@ -73,7 +73,7 @@ func encodeBinary(db *InMemory) ([]byte, error) {
7373
return buff.Bytes(), nil
7474
}
7575

76-
func decodeBinary(db *InMemory, data []byte) (numPeers, numTorrents int, err error) {
76+
func decodeBinary(db *Database, data []byte) (numPeers, numTorrents int, err error) {
7777
reader := bufio.NewReader(bytes.NewBuffer(data))
7878

7979
for {
Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package inmemory
1+
package database
22

33
import (
44
"fmt"
@@ -12,7 +12,7 @@ import (
1212
)
1313

1414
func TestBinaryCoder(t *testing.T) {
15-
db, err := NewInMemory(Config{
15+
db, err := NewDatabase(Config{
1616
InitalSize: 1,
1717
Persistance: nil,
1818
PersistanceAddress: "",
@@ -35,7 +35,7 @@ func TestBinaryCoder(t *testing.T) {
3535
t.Fatal("encodeBinary threw error: ", err)
3636
}
3737
oldtorrents := db.torrents
38-
db, err = NewInMemory(Config{
38+
db, err = NewDatabase(Config{
3939
InitalSize: 1,
4040
Persistance: nil,
4141
PersistanceAddress: "",
@@ -72,7 +72,7 @@ func BenchmarkEncodeBinary(b *testing.B) {
7272
b.StopTimer()
7373
b.ResetTimer()
7474

75-
db, err := NewInMemory(Config{
75+
db, err := NewDatabase(Config{
7676
InitalSize: 1,
7777
Persistance: nil,
7878
PersistanceAddress: "",
@@ -109,7 +109,7 @@ func BenchmarkDecodeBinary(b *testing.B) {
109109
b.StopTimer()
110110
b.ResetTimer()
111111

112-
db, err := NewInMemory(Config{
112+
db, err := NewDatabase(Config{
113113
InitalSize: 1,
114114
Persistance: nil,
115115
PersistanceAddress: "",
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package inmemory
1+
package database
22

33
import (
44
"bufio"
@@ -8,7 +8,7 @@ import (
88

99
// gob coders scale better than binary coders, the break even point is around 1.5 million peers
1010

11-
func encodeGob(db *InMemory) ([]byte, error) {
11+
func encodeGob(db *Database) ([]byte, error) {
1212
var buff bytes.Buffer
1313
writer := bufio.NewWriter(&buff)
1414

@@ -26,7 +26,7 @@ func encodeGob(db *InMemory) ([]byte, error) {
2626
return buff.Bytes(), nil
2727
}
2828

29-
func decodeGob(db *InMemory, data []byte) (err error) {
29+
func decodeGob(db *Database, data []byte) (err error) {
3030
buff := bytes.NewBuffer(data)
3131
decoder := gob.NewDecoder(bufio.NewReader(buff))
3232

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package inmemory
1+
package database
22

33
import (
44
"fmt"
@@ -12,7 +12,7 @@ import (
1212
)
1313

1414
func TestGobCoder(t *testing.T) {
15-
db, err := NewInMemory(Config{
15+
db, err := NewDatabase(Config{
1616
InitalSize: 1,
1717
Persistance: nil,
1818
PersistanceAddress: "",
@@ -35,7 +35,7 @@ func TestGobCoder(t *testing.T) {
3535
t.Fatal("encodeGob threw error: ", err)
3636
}
3737
oldtorrents := db.torrents
38-
db, err = NewInMemory(Config{
38+
db, err = NewDatabase(Config{
3939
InitalSize: 1,
4040
Persistance: nil,
4141
PersistanceAddress: "",
@@ -72,7 +72,7 @@ func BenchmarkEncodeGob(b *testing.B) {
7272
b.StopTimer()
7373
b.ResetTimer()
7474

75-
db, err := NewInMemory(Config{
75+
db, err := NewDatabase(Config{
7676
InitalSize: 1,
7777
Persistance: nil,
7878
PersistanceAddress: "",
@@ -109,7 +109,7 @@ func BenchmarkDecodeGob(b *testing.B) {
109109
b.StopTimer()
110110
b.ResetTimer()
111111

112-
db, err := NewInMemory(Config{
112+
db, err := NewDatabase(Config{
113113
InitalSize: 1,
114114
Persistance: nil,
115115
PersistanceAddress: "",
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package inmemory
1+
package database
22

33
import (
44
"encoding/binary"
@@ -7,7 +7,7 @@ import (
77
"github.com/crimist/trakx/storage"
88
)
99

10-
func (db *InMemory) TorrentStats(hash storage.Hash) (seeds, leeches uint16) {
10+
func (db *Database) TorrentStats(hash storage.Hash) (seeds, leeches uint16) {
1111
db.mutex.RLock()
1212
torrent, ok := db.torrents[hash]
1313
db.mutex.RUnlock()
@@ -23,7 +23,7 @@ func (db *InMemory) TorrentStats(hash storage.Hash) (seeds, leeches uint16) {
2323
return
2424
}
2525

26-
func (db *InMemory) TorrentPeers(hash storage.Hash, numWant uint, includePeerID bool) (peers [][]byte) {
26+
func (db *Database) TorrentPeers(hash storage.Hash, numWant uint, includePeerID bool) (peers [][]byte) {
2727
db.mutex.RLock()
2828
torrent, ok := db.torrents[hash]
2929
db.mutex.RUnlock()
@@ -71,7 +71,7 @@ func (db *InMemory) TorrentPeers(hash storage.Hash, numWant uint, includePeerID
7171
return
7272
}
7373

74-
func (db *InMemory) TorrentPeersCompact(hash storage.Hash, numWant uint, wantedIPs storage.IPVersion) (peers4 []byte, peers6 []byte) {
74+
func (db *Database) TorrentPeersCompact(hash storage.Hash, numWant uint, wantedIPs storage.IPVersion) (peers4 []byte, peers6 []byte) {
7575
if wantedIPs&storage.IPv4 != 0 {
7676
peers4 = pools.Peerlists4.Get()
7777
}
Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package inmemory
1+
package database
22

33
// import (
44
// "math/rand"
@@ -8,8 +8,8 @@ package inmemory
88
// "github.com/crimist/trakx/tracker/storage"
99
// )
1010

11-
// func dbWithHashesAndPeers(hashes, peers int) *InMemory {
12-
// var db InMemory
11+
// func dbWithHashesAndPeers(hashes, peers int) *Database {
12+
// var db Database
1313
// db.make()
1414

1515
// peerid := storage.PeerID{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
@@ -35,8 +35,8 @@ package inmemory
3535
// return &db
3636
// }
3737

38-
// func dbWithHashes(count int) *InMemory {
39-
// var db InMemory
38+
// func dbWithHashes(count int) *Database {
39+
// var db Database
4040
// db.make()
4141

4242
// peerid := storage.PeerID{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
@@ -59,8 +59,8 @@ package inmemory
5959
// return &db
6060
// }
6161

62-
// func dbWithPeers(count int) (*InMemory, storage.Hash) {
63-
// var db InMemory
62+
// func dbWithPeers(count int) (*Database, storage.Hash) {
63+
// var db Database
6464
// db.make()
6565

6666
// bytes := [20]byte{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
Map implements a trakx database through go maps in local memory. It is heavily optimized for performance but cannot be shared accross multiple trackers as it resides in local memory.
33
*/
44

5-
package inmemory
5+
package database
66

77
import (
88
"os"
@@ -26,15 +26,15 @@ type Torrent struct {
2626
Peers map[storage.PeerID]*storage.Peer
2727
}
2828

29-
type InMemory struct {
29+
type Database struct {
3030
mutex sync.RWMutex
3131
torrents map[storage.Hash]*Torrent
3232
collector stats.Collector
3333
peerPool *pools.Pool[*storage.Peer]
3434
}
3535

36-
func NewInMemory(config Config) (*InMemory, error) {
37-
db := &InMemory{
36+
func NewDatabase(config Config) (*Database, error) {
37+
db := &Database{
3838
collector: config.Collector,
3939
peerPool: pools.NewPool[*storage.Peer](func() any {
4040
return new(storage.Peer)
@@ -108,14 +108,14 @@ func NewInMemory(config Config) (*InMemory, error) {
108108
}
109109

110110
// Torrents returns the number of torrents registered in the database
111-
func (db *InMemory) Torrents() int {
111+
func (db *Database) Torrents() int {
112112
db.mutex.RLock()
113113
torrents := len(db.torrents)
114114
db.mutex.RUnlock()
115115
return torrents
116116
}
117117

118-
func (db *InMemory) createTorrent(h storage.Hash) *Torrent {
118+
func (db *Database) createTorrent(h storage.Hash) *Torrent {
119119
torrent := new(Torrent)
120120
torrent.Peers = make(map[storage.PeerID]*storage.Peer, torrentPeerPrealloc)
121121

@@ -126,9 +126,9 @@ func (db *InMemory) createTorrent(h storage.Hash) *Torrent {
126126
return torrent
127127
}
128128

129-
func (db *InMemory) evictExpired(expirationTime int64) {
129+
func (db *Database) evictExpired(expirationTime int64) {
130130
now := time.Now()
131-
zap.L().Info("trimming inmemory database")
131+
zap.L().Info("trimming in-memory database")
132132

133133
trimmedPeers, trimmedTorrents := 0, 0
134134
nowUnix := now.Unix()
@@ -169,5 +169,5 @@ func (db *InMemory) evictExpired(expirationTime int64) {
169169
}
170170
db.mutex.RUnlock()
171171

172-
zap.L().Info("trimmed inmemory database", zap.Int("peers", trimmedPeers), zap.Int("torrents", trimmedTorrents), zap.Duration("elapsed", time.Since(now)))
172+
zap.L().Info("trimmed in-memory database", zap.Int("peers", trimmedPeers), zap.Int("torrents", trimmedTorrents), zap.Duration("elapsed", time.Since(now)))
173173
}
Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package inmemory
1+
package database
22

33
import (
44
"fmt"
@@ -10,8 +10,8 @@ import (
1010
"github.com/crimist/trakx/storage"
1111
)
1212

13-
func TestNewInMemory(t *testing.T) {
14-
_, err := NewInMemory(Config{
13+
func TestNewDatabase(t *testing.T) {
14+
_, err := NewDatabase(Config{
1515
InitalSize: 1,
1616
Persistance: nil,
1717
PersistanceAddress: "",
@@ -25,7 +25,7 @@ func TestNewInMemory(t *testing.T) {
2525
}
2626

2727
func TestTorrents(t *testing.T) {
28-
db, err := NewInMemory(Config{
28+
db, err := NewDatabase(Config{
2929
InitalSize: 1,
3030
Persistance: nil,
3131
PersistanceAddress: "",
@@ -56,7 +56,7 @@ func TestTorrents(t *testing.T) {
5656
}
5757

5858
func TestEviction(t *testing.T) {
59-
db, err := NewInMemory(Config{
59+
db, err := NewDatabase(Config{
6060
InitalSize: 1,
6161
Persistance: nil,
6262
PersistanceAddress: "",
@@ -96,7 +96,7 @@ func BenchmarkEvictionSingle(b *testing.B) {
9696
b.StopTimer()
9797
b.ResetTimer()
9898

99-
db, err := NewInMemory(Config{
99+
db, err := NewDatabase(Config{
100100
InitalSize: 1,
101101
Persistance: nil,
102102
PersistanceAddress: "",
@@ -131,7 +131,7 @@ func BenchmarkEvictionMulti(b *testing.B) {
131131
b.StopTimer()
132132
b.ResetTimer()
133133

134-
db, err := NewInMemory(Config{
134+
db, err := NewDatabase(Config{
135135
InitalSize: 1,
136136
Persistance: nil,
137137
PersistanceAddress: "",

0 commit comments

Comments
 (0)