aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lu <chris.lu@gmail.com>2020-03-11 01:13:40 -0700
committerChris Lu <chris.lu@gmail.com>2020-03-11 01:13:54 -0700
commitebc739afb5b312557ab9e349ea18cae591aaab9f (patch)
treed470c8302b07f9233cadb62725441993a16bef75
parentf59fcba265ff6f24ab525e37e32eaebf88286ad7 (diff)
downloadseaweedfs-ebc739afb5b312557ab9e349ea18cae591aaab9f.tar.xz
seaweedfs-ebc739afb5b312557ab9e349ea18cae591aaab9f.zip
filer store postgres: skip empty parameters
better fix https://github.com/chrislusf/seaweedfs/issues/1227
-rw-r--r--weed/filer2/postgres/postgres_store.go10
1 files changed, 8 insertions, 2 deletions
diff --git a/weed/filer2/postgres/postgres_store.go b/weed/filer2/postgres/postgres_store.go
index 27a0c2513..2e5f892f1 100644
--- a/weed/filer2/postgres/postgres_store.go
+++ b/weed/filer2/postgres/postgres_store.go
@@ -11,7 +11,7 @@ import (
)
const (
- CONNECTION_URL_PATTERN = "host=%s port=%d user=%s password=%s dbname=%s sslmode=%s connect_timeout=30"
+ CONNECTION_URL_PATTERN = "host=%s port=%d user=%s sslmode=%s connect_timeout=30"
)
func init() {
@@ -49,7 +49,13 @@ func (store *PostgresStore) initialize(user, password, hostname string, port int
store.SqlListExclusive = "SELECT NAME, meta FROM filemeta WHERE dirhash=$1 AND name>$2 AND directory=$3 ORDER BY NAME ASC LIMIT $4"
store.SqlListInclusive = "SELECT NAME, meta FROM filemeta WHERE dirhash=$1 AND name>=$2 AND directory=$3 ORDER BY NAME ASC LIMIT $4"
- sqlUrl := fmt.Sprintf(CONNECTION_URL_PATTERN, hostname, port, user, password, database, sslmode)
+ sqlUrl := fmt.Sprintf(CONNECTION_URL_PATTERN, hostname, port, user, sslmode)
+ if password != "" {
+ sqlUrl += " password="+password
+ }
+ if database != "" {
+ sqlUrl += " dbname="+database
+ }
var dbErr error
store.DB, dbErr = sql.Open("postgres", sqlUrl)
if dbErr != nil {