aboutsummaryrefslogtreecommitdiff
path: root/weed/server/filer_server.go
diff options
context:
space:
mode:
authorChris Lu <chrislusf@users.noreply.github.com>2016-12-07 17:31:28 -0800
committerGitHub <noreply@github.com>2016-12-07 17:31:28 -0800
commitcc34ac0bd5de14bc6eb33f456fd0f4b3032cdf88 (patch)
tree4c30b221068dfa7b4f4375beac222b1d8b7c296c /weed/server/filer_server.go
parent64509dd6caa472b3ce590df0c8e6757907697088 (diff)
parente88795be133d384813b6b0dd2d556565856cb663 (diff)
downloadseaweedfs-cc34ac0bd5de14bc6eb33f456fd0f4b3032cdf88.tar.xz
seaweedfs-cc34ac0bd5de14bc6eb33f456fd0f4b3032cdf88.zip
Merge pull request #411 from mtolman/master
Adding PostgreSQL Filer Support
Diffstat (limited to 'weed/server/filer_server.go')
-rw-r--r--weed/server/filer_server.go5
1 files changed, 5 insertions, 0 deletions
diff --git a/weed/server/filer_server.go b/weed/server/filer_server.go
index 959bb92cb..fc7799efc 100644
--- a/weed/server/filer_server.go
+++ b/weed/server/filer_server.go
@@ -14,6 +14,7 @@ import (
"github.com/chrislusf/seaweedfs/weed/filer/embedded_filer"
"github.com/chrislusf/seaweedfs/weed/filer/flat_namespace"
"github.com/chrislusf/seaweedfs/weed/filer/mysql_store"
+ "github.com/chrislusf/seaweedfs/weed/filer/postgres_store"
"github.com/chrislusf/seaweedfs/weed/filer/redis_store"
"github.com/chrislusf/seaweedfs/weed/glog"
"github.com/chrislusf/seaweedfs/weed/security"
@@ -24,6 +25,7 @@ import (
type filerConf struct {
MysqlConf []mysql_store.MySqlConf `json:"mysql"`
mysql_store.ShardingConf
+ PostgresConf []postgres_store.PostgresConf `json:"postgres"`
}
func parseConfFile(confPath string) (*filerConf, error) {
@@ -86,6 +88,9 @@ func NewFilerServer(r *http.ServeMux, ip string, port int, master string, dir st
if setting.MysqlConf != nil && len(setting.MysqlConf) != 0 {
mysql_store := mysql_store.NewMysqlStore(setting.MysqlConf, setting.IsSharding, setting.ShardCount)
fs.filer = flat_namespace.NewFlatNamespaceFiler(master, mysql_store)
+ } else if setting.PostgresConf != nil && len(setting.PostgresConf) != 0 {
+ postgres_store := postgres_store.NewPostgresStore(setting.PostgresConf, setting.IsSharding, setting.ShardCount)
+ fs.filer = flat_namespace.NewFlatNamespaceFiler(master, postgres_store)
} else if cassandra_server != "" {
cassandra_store, err := cassandra_store.NewCassandraStore(cassandra_keyspace, cassandra_server)
if err != nil {