You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tinkerpop.apache.org by "Stephen Mallette (Jira)" <ji...@apache.org> on 2022/12/01 12:04:00 UTC

[jira] [Updated] (TINKERPOP-2832) Nature of sessions and driver reconnect allow bytecode transactions to appear to remain open

     [ https://issues.apache.org/jira/browse/TINKERPOP-2832?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Stephen Mallette updated TINKERPOP-2832:
----------------------------------------
    Description: 
The driver is design to reconnect if it loses its connection to the server. For sessions a close can happen if there is a timeout on the session itself. On the server the session is invalidated, but on the client side, it tries to reconnect using the same session id. Unfortunately this reconnect creates a scenario for bytecode transactions where it can appear as though you're working the same transaction when you are not. 

Test to demonstrate shown [here|https://github.com/apache/tinkerpop/commit/4528ec33ab56e3c0526ad8b38494674c64754e54] 

  was:The driver is design to reconnect if it loses its connection to the server. For sessions a close can happen if there is a timeout on the session itself. On the server the session is invalidated, but on the client side, it tries to reconnect using the same session id. Unfortunately this reconnect creates a scenario for bytecode transactions where it can appear as though you're working the same transaction when you are not. 


> Nature of sessions and driver reconnect allow bytecode transactions to appear to remain open
> --------------------------------------------------------------------------------------------
>
>                 Key: TINKERPOP-2832
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-2832
>             Project: TinkerPop
>          Issue Type: Bug
>          Components: driver, server
>    Affects Versions: 3.5.4
>            Reporter: Stephen Mallette
>            Priority: Critical
>
> The driver is design to reconnect if it loses its connection to the server. For sessions a close can happen if there is a timeout on the session itself. On the server the session is invalidated, but on the client side, it tries to reconnect using the same session id. Unfortunately this reconnect creates a scenario for bytecode transactions where it can appear as though you're working the same transaction when you are not. 
> Test to demonstrate shown [here|https://github.com/apache/tinkerpop/commit/4528ec33ab56e3c0526ad8b38494674c64754e54] 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)