提交 216aeb6b 编写于 作者: X Xu Peng

feat(db): add updated_time in group_file meta


Former-commit-id: 0a2c3549b8b82267db3facc9606d8f8f90b02de2
上级 b3772669
......@@ -28,6 +28,7 @@ inline auto StoragePrototype(const std::string& path) {
make_column("file_id", &GroupFileSchema::file_id),
make_column("file_type", &GroupFileSchema::file_type),
make_column("rows", &GroupFileSchema::rows, default_value(0)),
make_column("updated_time", &GroupFileSchema::updated_time),
make_column("date", &GroupFileSchema::date))
);
......@@ -166,6 +167,7 @@ Status DBMetaImpl::add_group_file(GroupFileSchema& group_file) {
group_file.file_id = ss.str();
group_file.dimension = group_info.dimension;
group_file.rows = 0;
group_file.updated_time = ConnectorPtr->select(datetime("now", "localtime")).front();
GetGroupFilePath(group_file);
{
......@@ -329,7 +331,8 @@ Status DBMetaImpl::get_group_files(const std::string& group_id_,
return Status::OK();
}
Status DBMetaImpl::update_group_file(const GroupFileSchema& group_file) {
Status DBMetaImpl::update_group_file(GroupFileSchema& group_file) {
group_file.updated_time = ConnectorPtr->select(datetime("now", "localtime")).front();
auto commited = ConnectorPtr->transaction([&] () mutable {
ConnectorPtr->update(group_file);
return true;
......@@ -340,9 +343,10 @@ Status DBMetaImpl::update_group_file(const GroupFileSchema& group_file) {
return Status::OK();
}
Status DBMetaImpl::update_files(const GroupFilesSchema& files) {
Status DBMetaImpl::update_files(GroupFilesSchema& files) {
auto commited = ConnectorPtr->transaction([&] () mutable {
for (auto& file : files) {
file.updated_time = ConnectorPtr->select(datetime("now", "localtime")).front();
ConnectorPtr->update(file);
}
return true;
......
......@@ -27,13 +27,13 @@ public:
virtual Status get_group_file(const std::string& group_id_,
const std::string& file_id_,
GroupFileSchema& group_file_info_) override;
virtual Status update_group_file(const GroupFileSchema& group_file_) override;
virtual Status update_group_file(GroupFileSchema& group_file_) override;
virtual Status get_group_files(const std::string& group_id_,
const int date_delta_,
GroupFilesSchema& group_files_info_) override;
virtual Status update_files(const GroupFilesSchema& files) override;
virtual Status update_files(GroupFilesSchema& files) override;
virtual Status files_to_merge(const std::string& group_id,
DatePartionedGroupFilesSchema& files) override;
......
......@@ -226,12 +226,12 @@ Status LocalMetaImpl::get_group_files(const std::string& group_id_,
return Status::OK();
}
Status LocalMetaImpl::update_group_file(const GroupFileSchema& group_file_) {
Status LocalMetaImpl::update_group_file(GroupFileSchema& group_file_) {
//PXU TODO
return Status::OK();
}
Status LocalMetaImpl::update_files(const GroupFilesSchema& files) {
Status LocalMetaImpl::update_files(GroupFilesSchema& files) {
//PXU TODO
return Status::OK();
}
......
......@@ -26,13 +26,13 @@ public:
virtual Status get_group_file(const std::string& group_id_,
const std::string& file_id_,
GroupFileSchema& group_file_info_) override;
virtual Status update_group_file(const GroupFileSchema& group_file_) override;
virtual Status update_group_file(GroupFileSchema& group_file_) override;
virtual Status get_group_files(const std::string& group_id_,
const int date_delta_,
GroupFilesSchema& group_files_info_) override;
virtual Status update_files(const GroupFilesSchema& files) override;
virtual Status update_files(GroupFilesSchema& files) override;
virtual Status cleanup() override;
......
......@@ -42,6 +42,7 @@ struct GroupFileSchema {
DateT date = EmptyDate;
uint16_t dimension;
std::string location = "";
std::string updated_time = "";
}; // GroupFileSchema
typedef std::vector<GroupFileSchema> GroupFilesSchema;
......@@ -62,13 +63,13 @@ public:
virtual Status get_group_file(const std::string& group_id_,
const std::string& file_id_,
GroupFileSchema& group_file_info_) = 0;
virtual Status update_group_file(const GroupFileSchema& group_file_) = 0;
virtual Status update_group_file(GroupFileSchema& group_file_) = 0;
virtual Status get_group_files(const std::string& group_id_,
const int date_delta_,
GroupFilesSchema& group_files_info_) = 0;
virtual Status update_files(const GroupFilesSchema& files) = 0;
virtual Status update_files(GroupFilesSchema& files) = 0;
virtual Status files_to_search(const std::string& group_id,
std::vector<DateT> partition,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册