Browse Source

Fix Filer Sync Issue: 5455 (#5663)

pull/5675/head
MeenakshiSachdeva 7 months ago
committed by GitHub
parent
commit
1caa012a76
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 3
      weed/command/filer.go
  2. 4
      weed/server/filer_server.go

3
weed/command/filer.go

@ -63,6 +63,7 @@ type FilerOptions struct {
diskType *string diskType *string
allowedOrigins *string allowedOrigins *string
exposeDirectoryData *bool exposeDirectoryData *bool
joinExistingFiler *bool
} }
func init() { func init() {
@ -95,6 +96,7 @@ func init() {
f.diskType = cmdFiler.Flag.String("disk", "", "[hdd|ssd|<tag>] hard drive or solid state drive or any tag") f.diskType = cmdFiler.Flag.String("disk", "", "[hdd|ssd|<tag>] hard drive or solid state drive or any tag")
f.allowedOrigins = cmdFiler.Flag.String("allowedOrigins", "*", "comma separated list of allowed origins") f.allowedOrigins = cmdFiler.Flag.String("allowedOrigins", "*", "comma separated list of allowed origins")
f.exposeDirectoryData = cmdFiler.Flag.Bool("exposeDirectoryData", true, "whether to return directory metadata and content in Filer UI") f.exposeDirectoryData = cmdFiler.Flag.Bool("exposeDirectoryData", true, "whether to return directory metadata and content in Filer UI")
f.joinExistingFiler = cmdFiler.Flag.Bool("joinExistingFiler", false, "enable if new filer wants to join existing cluster")
// start s3 on filer // start s3 on filer
filerStartS3 = cmdFiler.Flag.Bool("s3", false, "whether to start S3 gateway") filerStartS3 = cmdFiler.Flag.Bool("s3", false, "whether to start S3 gateway")
@ -262,6 +264,7 @@ func (fo *FilerOptions) startFiler() {
DownloadMaxBytesPs: int64(*fo.downloadMaxMBps) * 1024 * 1024, DownloadMaxBytesPs: int64(*fo.downloadMaxMBps) * 1024 * 1024,
DiskType: *fo.diskType, DiskType: *fo.diskType,
AllowedOrigins: strings.Split(*fo.allowedOrigins, ","), AllowedOrigins: strings.Split(*fo.allowedOrigins, ","),
JoinExistingFiler: *fo.joinExistingFiler,
}) })
if nfs_err != nil { if nfs_err != nil {
glog.Fatalf("Filer startup error: %v", nfs_err) glog.Fatalf("Filer startup error: %v", nfs_err)

4
weed/server/filer_server.go

@ -74,6 +74,7 @@ type FilerOption struct {
DiskType string DiskType string
AllowedOrigins []string AllowedOrigins []string
ExposeDirectoryData bool ExposeDirectoryData bool
JoinExistingFiler bool
} }
type FilerServer struct { type FilerServer struct {
@ -197,6 +198,9 @@ func NewFilerServer(defaultMux, readonlyMux *http.ServeMux, option *FilerOption)
existingNodes := fs.filer.ListExistingPeerUpdates() existingNodes := fs.filer.ListExistingPeerUpdates()
startFromTime := time.Now().Add(-filer.LogFlushInterval) startFromTime := time.Now().Add(-filer.LogFlushInterval)
if option.JoinExistingFiler {
startFromTime = time.Time{}
}
if isFresh { if isFresh {
glog.V(0).Infof("%s bootstrap from peers %+v", option.Host, existingNodes) glog.V(0).Infof("%s bootstrap from peers %+v", option.Host, existingNodes)
if err := fs.filer.MaybeBootstrapFromPeers(option.Host, existingNodes, startFromTime); err != nil { if err := fs.filer.MaybeBootstrapFromPeers(option.Host, existingNodes, startFromTime); err != nil {

Loading…
Cancel
Save