From 062bbb97aac59ee908148918c9d5db77f5dd5168 Mon Sep 17 00:00:00 2001 From: Sergey Yakubov <sergey.yakubov@desy.de> Date: Fri, 30 Apr 2021 18:59:19 +0200 Subject: [PATCH] fts returns NotFound instead of BadRequest --- .../src/asapo_broker/database/streams_test.go | 21 +++++++++++++++++++ common/cpp/src/database/mongodb_client.cpp | 2 +- .../asapo_file_transfer/server/transfer.go | 4 ++-- .../server/transfer_test.go | 2 +- 4 files changed, 25 insertions(+), 4 deletions(-) diff --git a/broker/src/asapo_broker/database/streams_test.go b/broker/src/asapo_broker/database/streams_test.go index c972ba789..fef6ff3af 100644 --- a/broker/src/asapo_broker/database/streams_test.go +++ b/broker/src/asapo_broker/database/streams_test.go @@ -54,6 +54,27 @@ func (suite *StreamsTestSuite) TestStreamsUsesCache() { suite.Equal(int64(1), rec.Streams[0].TimestampLast) } +func (suite *StreamsTestSuite) TestStreamsCacheexpires() { + db.settings.UpdateStreamCachePeriodMs = 100 + var res1 StreamsRecord + go func() { + db.insertRecord(dbname, collection, &rec1) + streams.getStreams(&db, Request{DbName: dbname, ExtraParam: ""}) + db.insertRecord(dbname, collection, &rec_finished) + res1,_ = streams.getStreams(&db, Request{DbName: dbname, ExtraParam: ""}) + }() + db.insertRecord(dbname, collection+"1", &rec1_later) + res2,_ := streams.getStreams(&db, Request{DbName: dbname, ExtraParam: ""}) + db.insertRecord(dbname, collection+"1", &rec_finished) + time.Sleep(time.Second) + res3, err := streams.getStreams(&db, Request{DbName: dbname, ExtraParam: ""}) + suite.Nil(err) + suite.Equal(true, res3.Streams[0].Finished) + fmt.Println(res1,res2) +// suite.Equal(true, rec.Streams[1].Finished) +} + + func (suite *StreamsTestSuite) TestStreamsGetFinishedInfo() { db.settings.UpdateStreamCachePeriodMs = 1000 db.insertRecord(dbname, collection, &rec1) diff --git a/common/cpp/src/database/mongodb_client.cpp b/common/cpp/src/database/mongodb_client.cpp index 7cab88b4e..8a35d66cf 100644 --- a/common/cpp/src/database/mongodb_client.cpp +++ b/common/cpp/src/database/mongodb_client.cpp @@ -417,7 +417,7 @@ Error StreamInfoFromDbResponse(const std::string &last_record_str, return err; } - return UpdateStreamInfoFromEarliestRecord(last_record_str,info); + return UpdateStreamInfoFromEarliestRecord(earliest_record_str,info); } diff --git a/file_transfer/src/asapo_file_transfer/server/transfer.go b/file_transfer/src/asapo_file_transfer/server/transfer.go index 8e6817007..e6528ff34 100644 --- a/file_transfer/src/asapo_file_transfer/server/transfer.go +++ b/file_transfer/src/asapo_file_transfer/server/transfer.go @@ -21,7 +21,7 @@ type fileTransferRequest struct { func Exists(name string) bool { fi, err := os.Stat(name) - return !os.IsNotExist(err) && !fi.IsDir() + return err==nil && !fi.IsDir() } @@ -42,7 +42,7 @@ func checkFileExists(r *http.Request,name string) (int,error) { if !Exists(name) { err_txt := "file "+name+" does not exist" log.Error("cannot transfer file: "+err_txt) - return http.StatusBadRequest,errors.New(err_txt) + return http.StatusNotFound,errors.New(err_txt) } return http.StatusOK,nil diff --git a/file_transfer/src/asapo_file_transfer/server/transfer_test.go b/file_transfer/src/asapo_file_transfer/server/transfer_test.go index 378426407..d4117dcfd 100644 --- a/file_transfer/src/asapo_file_transfer/server/transfer_test.go +++ b/file_transfer/src/asapo_file_transfer/server/transfer_test.go @@ -60,7 +60,7 @@ var transferFileTests = [] struct { message string }{ {"folder","exists", prepareToken("folder"),http.StatusOK,"file transferred"}, - {"folder","not_exists", prepareToken("folder"),http.StatusBadRequest,"file not exists"}, + {"folder","not_exists", prepareToken("folder"),http.StatusNotFound,"file not exists"}, {"wrong_folder","p07", prepareToken("folder"),http.StatusUnauthorized,"wrong folder"}, {"folder","p07", "wrong token",http.StatusUnauthorized,"wrong token"}, } -- GitLab