aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lu <chris.lu@gmail.com>2020-11-30 03:11:52 -0800
committerChris Lu <chris.lu@gmail.com>2020-11-30 03:11:52 -0800
commita9c6be5fc3fffad6403ce63aa3951121491eb1d1 (patch)
tree24b02104e79d4b90aa288ee7f42bbb784c047c5b
parent141ce67c097565d085cf1ffaefd6aeb9e9e7db77 (diff)
downloadseaweedfs-a9c6be5fc3fffad6403ce63aa3951121491eb1d1.tar.xz
seaweedfs-a9c6be5fc3fffad6403ce63aa3951121491eb1d1.zip
set creation time
-rw-r--r--weed/filer/filer.go1
-rw-r--r--weed/server/filer_server_handlers_write_autochunk.go9
2 files changed, 2 insertions, 8 deletions
diff --git a/weed/filer/filer.go b/weed/filer/filer.go
index 2dec1afbf..8319212f1 100644
--- a/weed/filer/filer.go
+++ b/weed/filer/filer.go
@@ -238,6 +238,7 @@ func (f *Filer) CreateEntry(ctx context.Context, entry *Entry, o_excl bool, isFr
func (f *Filer) UpdateEntry(ctx context.Context, oldEntry, entry *Entry) (err error) {
if oldEntry != nil {
+ entry.Attr.Crtime = oldEntry.Attr.Crtime
if oldEntry.IsDirectory() && !entry.IsDirectory() {
glog.Errorf("existing %s is a directory", entry.FullPath)
return fmt.Errorf("existing %s is a directory", entry.FullPath)
diff --git a/weed/server/filer_server_handlers_write_autochunk.go b/weed/server/filer_server_handlers_write_autochunk.go
index fd2db884f..1348f1a91 100644
--- a/weed/server/filer_server_handlers_write_autochunk.go
+++ b/weed/server/filer_server_handlers_write_autochunk.go
@@ -147,19 +147,12 @@ func (fs *FilerServer) saveMetaData(ctx context.Context, r *http.Request, fileNa
}
}
- // fix the crTime
- existingEntry, err := fs.filer.FindEntry(ctx, util.FullPath(path))
- crTime := time.Now()
- if err == nil && existingEntry != nil {
- crTime = existingEntry.Crtime
- }
-
glog.V(4).Infoln("saving", path)
entry := &filer.Entry{
FullPath: util.FullPath(path),
Attr: filer.Attr{
Mtime: time.Now(),
- Crtime: crTime,
+ Crtime: time.Now(),
Mode: os.FileMode(mode),
Uid: OS_UID,
Gid: OS_GID,