Persistent TM Store #320
Labels
No Label
OPS TODO
api change
breaking api change
bug
documentation
duplicate
feature
help wanted
invalid
question
wontfix
No Milestone
No Assignees
2 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: eive/eive-obsw#320
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "mueller/pus-15-tm-storage"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
FSFW PR/Branch: eive/fsfw#116
TM Store/Backendto WIP: TM Store/BackendWIP: TM Store/Backendto WIP: Persistent TM StoreWIP: Persistent TM Storeto Persistent TM StoreSome things but I don't get some parts of it and its too large to think through everything.
@ -0,0 +14,4 @@
using namespace returnvalue;
PersistentTmStore::PersistentTmStore(object_id_t objectId, const char* baseDir,
I don't get why the stores need a reference to a central time. They can look that up by their own I think. Is it necessary to have all stores working on the exact same time?
No. I'll probably update the code so each persistent store calls `Clock::getClock_timeval
@ -0,0 +155,4 @@
}
}
if (currentTv.tv_sec < activeFileTv.tv_sec or
Might be old
@ -0,0 +157,4 @@
if (currentTv.tv_sec < activeFileTv.tv_sec or
currentTv.tv_sec - activeFileTv.tv_sec > static_cast<int>(rolloverDiffSeconds)) {
if (file_size(activeFile.value()) + reader.getFullPacketLen() > fileBuf.size()) {
Check position of inner if
@ -0,0 +168,4 @@
appendedCounter++;
}
rename(activeFile.value(), rolloverName);
std::ofstream of(activeFile.value(), std::ios::binary);
check close and open of new file
@ -0,0 +36,4 @@
SerializeAdapter::deSerialize(objectId, &tcData, &tcDataLen, SerializeIF::Endianness::NETWORK);
auto *frontendIF = ObjectManager::instance()->get<TmStoreFrontendSimpleIF>(*objectId);
if (frontendIF == nullptr) {
return FAILED;
I think there is an Error code for unknown object. (CommandingServiceBase::INVALID_OBJECT)