Frozen servers are now gzipped gobs.

This commit is contained in:
Mikkel Krautz 2011-04-08 15:19:30 +02:00
parent 3570847876
commit 73478072d0
3 changed files with 9 additions and 9 deletions

View file

@ -34,7 +34,7 @@ GOFILES = \
acl.go \ acl.go \
group.go \ group.go \
murmurdb.go \ murmurdb.go \
json.go freeze.go
.PHONY: grumble .PHONY: grumble
grumble: pkg grumble: pkg

View file

@ -1,9 +1,9 @@
package main package main
import ( import (
"json" "compress/gzip"
"gob"
"os" "os"
"compress/zlib"
) )
type frozenServer struct { type frozenServer struct {
@ -134,13 +134,13 @@ func NewServerFromFrozen(filename string) (s *Server, err os.Error) {
} }
defer descFile.Close() defer descFile.Close()
zr, err := zlib.NewReader(descFile) zr, err := gzip.NewReader(descFile)
if err != nil { if err != nil {
return nil, err return nil, err
} }
fs := new(frozenServer) fs := new(frozenServer)
decoder := json.NewDecoder(zr) decoder := gob.NewDecoder(zr)
decoder.Decode(&fs) decoder.Decode(&fs)
s, err = NewServer(int64(fs.Id), "", int(DefaultPort+fs.Id-1)) s, err = NewServer(int64(fs.Id), "", int(DefaultPort+fs.Id-1))

View file

@ -5,13 +5,13 @@
package main package main
import ( import (
"compress/gzip"
"flag" "flag"
"fmt" "fmt"
"gob"
"os" "os"
"log" "log"
"json"
"sqlite" "sqlite"
"compress/zlib"
"path/filepath" "path/filepath"
) )
@ -61,14 +61,14 @@ func MurmurImport(filename string) (err os.Error) {
return return
} }
zf, err := zlib.NewWriterLevel(f, zlib.BestCompression) zf, err := gzip.NewWriterLevel(f, gzip.BestCompression)
fz, err := m.Freeze() fz, err := m.Freeze()
if err != nil { if err != nil {
log.Fatalf("Unable to freeze server: %s", err.String()) log.Fatalf("Unable to freeze server: %s", err.String())
} }
enc := json.NewEncoder(zf) enc := gob.NewEncoder(zf)
err = enc.Encode(fz) err = enc.Encode(fz)
if err != nil { if err != nil {
log.Printf("%s", err.String()) log.Printf("%s", err.String())