Skip to content

F multi retrieve

Timm Fitschen requested to merge f-multi-retrieve into dev

Summary

Implements multi-entity retrieval caosdb/customers/lfpb/management#393

See tests in caosdb-cppinttest!4 (merged)

Focus

  • Most relevant changes are in include/caosdb/transaction.h and src/caosdb/transaction.cpp.
  • New class MultiResultSet represents a result set with multiple entities. Is this a good name?
  • New enum TransactionType restricts the kind of sub-transactions (Insert, Delete, Retrieve) which can be added to a transaction.
  • Macros are used to check whether InsertEntity, DeleteById or RetrieveById can be called on a transaction (given the TransactionStatus and 'TransactionType`).

Test Environment

Test with server in branch f-grpc-f-multi-retrieve

Check List for the Author

Please, prepare your MR for a review. Be sure to write a summary and a focus and create gitlab comments for the reviewer. They should guide the reviewer through the changes, explain your changes and also point out open questions. For further good practices have a look at our review guidelines

  • All automated tests pass
  • Reference related Issues
  • Up-to-date CHANGELOG.md
  • Annotations in code (Gitlab comments)
    • Intent of new code
    • Problems with old code
    • Why this implementation?

Check List for the Reviewer

  • I understand the intent of this MR
  • All automated tests pass
  • Up-to-date CHANGELOG.md
  • The test environment setup works and the intended behavior is reproducible in the test environment
  • In-code documentation and comments are up-to-date.
  • Check: Are there specifications? Are they satisfied?

For further good practices have a look at our review guidelines.

Edited by Florian Spreckelsen

Merge request reports