-
Notifications
You must be signed in to change notification settings - Fork 8
Description
Describe the bug
I am having a draft enabled entity Books that has a key bookId (i.e. not ID) that contains a composition of Attachments. When creating a draft of Books and then try to delete this draft I am getting and error:
Error: "up__ID" not found in the elements of "AdminService.Books.attachments.drafts"
at stepNotFoundInCombinedElements (/home/user/projects/00_test/00_test/node_modules/@cap-js/db-service/lib/infer/index.js:794:13)
at /home/user/projects/00_test/00_test/node_modules/@cap-js/db-service/lib/infer/index.js:501:11
at Array.forEach ()
at inferArg (/home/user/projects/00_test/00_test/node_modules/@cap-js/db-service/lib/infer/index.js:441:13)
at processToken (/home/user/projects/00_test/00_test/node_modules/@cap-js/db-service/lib/infer/index.js:307:11)
at Array.forEach ()
at walkTokenStream (/home/user/projects/00_test/00_test/node_modules/@cap-js/db-service/lib/infer/index.js:311:19)
at inferQueryElements (/home/user/projects/00_test/00_test/node_modules/@cap-js/db-service/lib/infer/index.js:280:16)
at infer (/home/user/projects/00_test/00_test/node_modules/@cap-js/db-service/lib/infer/index.js:71:22)
at cqn4sql (/home/user/projects/00_test/00_test/node_modules/@cap-js/db-service/lib/cqn4sql.js:80:14)
The behavior only occurs if I am binding the service to a real instance of the objectstore and thus do
cds watch --profile hybrid
I can delete the draft of Books:
- when I am doing a fully local testing (i.e. cds watch) even if the key is called "bookId"
or - if I do define the key of Books as "ID" rather than "bookId" (even in cds watch --profile hybrid)
To Reproduce
You can check out this mini example: https://github.com/franksgit/issue_capjs_attachments
and follow the docu of README.md with the attached test/http examples
Note, that you must bind the service to a real objectstore instance to see the error. (i.e. do cds watch --profile hybrid)
Expected behavior
I am expecting that the deletion of draft instances also works for entities that have a key called something else than "ID".
[ ] is it a regression issue?
Screenshots


Customer Info
Company: Capgemini