Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ChoiceSet being processed in DeleteInteractionChoceSet #1883

Closed
6 of 9 tasks
LitvinenkoIra opened this issue Nov 23, 2017 · 10 comments
Closed
6 of 9 tasks

ChoiceSet being processed in DeleteInteractionChoceSet #1883

LitvinenkoIra opened this issue Nov 23, 2017 · 10 comments
Assignees

Comments

@LitvinenkoIra
Copy link
Contributor

LitvinenkoIra commented Nov 23, 2017

Occurrence: Always

Description

ChoiceSet being processed in DeleteInteractionChoceSet

Preconditions

  • SDL and HMI are started.
  • App is registered and activated.

Steps to reproduce

  1. HMI processes VR.DeleteCommands_request related to choiceSetID_1 AND app sends PerformInteractionChoiceSet with choiceSetID_1

Actual result

SDL responds INVALID_ID (success:false) to this PerfromInteraction

Expected result

SDL must respond REJECTED (success:false) to this PerfromInteraction

Environment

Attachments

Expected delivery

  • Source code updates
  • Code comments
  • UTs add/update (not required)
  • ATF tests add/update
  • Manual tests (not required)
  • Add/update CI plans/jobs (not required)
  • SDD updates (not required)
  • Guidelines update (sdl_core_guides) (not required)
  • Guidelines update (sdl_hmi_integration_guidelines) (not required)
@aderiabin
Copy link

Contributor priority is set Medium with reason: The issue is related to Perform interaction RPC functionality. Supposed that SDL responds with wrong result code.

@dboltovskyi
Copy link
Contributor

@theresalech
Copy link
Contributor

@dboltovskyi, can you please advise when merge conflicts for PR #2613 have been resolved and the PR is ready for Livio's review?

@dboltovskyi
Copy link
Contributor

@theresalech Please notice initial fix for this issue in #2613 is pretty old. We're updating and re-testing it now. Our plan is to re-submit new version in a couple of days.

@iCollin
Copy link
Collaborator

iCollin commented Jan 5, 2022

Hello @dboltovskyi, could you please help me understand what this change would be used for? What would Mobile do differently if it receives a REJECTED responses versus the current INVALID_ID? From a quick look, I don't see the value of differentiating these pending delete choice sets.

@dboltovskyi
Copy link
Contributor

@VjKlepikov Could you please support with the question from @iCollin. Thank you.

@VjKlepikov
Copy link

@iCollin According to requirements APPLINK-14954

In case HMI processes VR.DeleteCommands_request related to choiceSetID_1 AND app sends PerformInteractionChoiceSet with choiceSetID_1 -> SDL must respond REJECTED (success:false) to this PerfromInteraction

Also, I believe the mobile does not send another PerformInteractionChoiceSet with the same ID in case it receives "INVALID_ID"
If the "REJECTED" would be the response in which tells the mobile app it should maybe try the request again with the same ID because DeleteInteractionChoceSet could be rejected

@iCollin
Copy link
Collaborator

iCollin commented Jan 6, 2022

@VjKlepikov thank you for your explanation.

I understand there is a requirement but I am not sure it is still applicable considering Core has unconditionally replied success for DeleteInteractionChoiceSet until recently. It looks like the libraries do not currently consider the response code to retry a PerformInteraction.

I agree it is possible mobile could retry if it gets REJECTED response, but when would the second PerformInteraction request succeed? The SDL HMI sends success unless the choice set is in use, but an in use check already exists in Core. I can't really imagine a use case where a second PerformInteraction request would succeed.

I am still struggling to understand the value of tracking if a choice set is pending delete. Do my concerns make sense to you?

@VjKlepikov
Copy link

@iCollin
I believe that the second PerformInteraction request would succeed in case HMI does not respond to VR.DeleteCommand triggered by DeleteInteractionChoiceSet during first request. I agree that the libraries do not currently consider the response code to retry a PerformInteraction but it can be changed by mobile developers
DeleteInteractionChoceSet

@iCollin
Copy link
Collaborator

iCollin commented Jan 25, 2022

Closed via #3826

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

9 participants