I am running into a bug where a form submission hangs when a non-authenticated user attempts to submit. I have tracked this down and the hanging is occurring at a “Send RT Channel Command” block. The block hangs indefinitely, with no error thrown.
I thought this might be a permissions issue, so I temporarily set nonauthenticated user permissions globally to be grant all, but that did not resolve.
Can you let me know where I might need to adjust permissions, or if there is another potential bug at play?
I don’t think it is related to permissions. Try creating a separate page with no logic but sending an rt command with static data. See how it works there.
I can definitely test that, but I failed to mention that the block works fine for authenticated users. The only time it hangs is when a non-authenticated user attempts to submit.
For what it’s worth, that block above is actually inside a custom function that is called with the following:
Is there a chance the Get Operation Result or Get Operation Reference could be causing the issue? The operation itself completes fine as long as the non-authenticated user has the appropriate permissions.
Ok, I tested with the static content. Simple page that had a button that then sent the RT command and makes a print to console before and after the command.
As a logged-in user it works fine, and I get the following:
As a non-authenticated user though, the second print statement never comes…
In the network tab of the console, the only difference I can make out is that the authenticated user successfully makes 7 calls of the following, while the non-authenticated user only has 6:
In the Payload of these, the authenticated user’s payload includes a userToken, while the non-authenticated user attempts to pass null. The authenticated user gets an “ok” string back in the response, while the non-authenticated user receives “1:6” back.
The fourth request has the response:
197:42/552EA923-D13D-8DAB-FFF1-BBC86963EF00,[“SUB_RES”,{“id”:“o8WblukE1719440721102”,“error”:{“message”:“Access Denied: You have no access to subscribe to channel: "default"”,“code”:0,“details”:{}}}]
This is despite global permissions being granted all for NotAuthenticatedUser
Hi @James_Hereford ,
I checked and was able to reproduce this problem. I tried creating a new channel (not default) and it works, could you please check?
I will create an internal ticket to investigate this issue.
Regards,
Sergey
Thanks Sergey. I was able to confirm your finding as well - a non-authenticated user is able to call the command to a different channel other than Default.
@vladimir-upirov, right now all of the Data Grid 2 listeners are in the default channel. Any rapid way that we can allow a non-authenticated user to call the RT command? Should we change the channel away from default for all of them, or are there permissions controls somewhere for the default channel that can be changed?
Hi @James_Hereford
I just checked the issue and it seems like it works now, could you please confirm that?
It’s quite strange because we didn’t fix anything.
I will keep the ticket open for a case if the problem come back
Regards,
Vlad
Hey Vlad,
Thank you for checking. That is super odd. It is working for me now as well. The only explanation I might have is that changing the permissions check from gray default to green affirmative approval, coupled with a lag time, resolved the issue.
If you do investigate further you might take a look at that. If you want we can go ahead and close this one for now and I’ll return here and reopen if it comes back up.
Yes, if you do not mind I will revert it to gray and try one more time
it still works, so it should be something else
please let us know if the problem appears again
Ok sounds good. Thanks Vlad!
Hey @vladimir-upirov and @Sergey_Androsov, this bug has returned. I went back to the testSendRTChannelCommand page and it’s occurring there too just as before.
Unfortunately this bug causes a fairly serious issue for my client’s customers (indefinite hanging on form submit without confirmation). Since it doesn’t actually cause an error either I can’t resolve it with a try/catch block.
Can you help me get to the bottom of it?
Hi @James_Hereford ,
I just tested it on your test page, it seems to be working again, I will reopen the ticket to investigate this issue.
Please tell me, have you changed your messaging channels permissions recently?
Thanks Sergey, that is odd that it is working again. We did not attempt to change any permissions this time. I can confirm though that it’s working for me again too.
I implemented a work around on the form where non-authenticated users tried to call the RT command but I did not change the test page.
I know it can be difficult to track an intermittent bug like this but it does cause a fairly embarrassing / disruptive issue for my client’s customers. I restructured that page to hopefully avoid issues in the future but it would be nice to know it’s fully resolved.
Anything we can do to investigate further?
Hello, @James_Hereford
Thank you, we will let you know if we need your assistance.
Regards,
Serhiy