Menu

#867 Saros/I session initiation fragile and slow

None
closed-migrated
nobody
IntelliJ (27)
5
2018-03-27
2016-08-29
No

Currently the session initiation of Saros for IntelliJ is slow and fragile.

A fix should improve the situation to meet the following criteria:

1. Session invitations can be reliably started through the GUI

We were not able to initiate a session between a Windows 10 and a Windows 7 machine.
So far it worked to establish a session between a Windows 10 virtual machine running on a Windows 10 host system and the host system itself. All the above listed issues have been discovered with this setup.
We also had success in creating a session between a Windows 10 machine and a Debian Jessie machine.

2. No timeouts occur, unless their origin lies outside of Saros' area of responsibility (e.g. networking issues)

We experienced problems in the Socks5 networking code:

DEBUG 12:28:16,896 [SOCKS5ConnectionResponse-0] (Socks5Transport.java:624) [SOCKS5Transport] Start to establish new response connection
WARN  12:28:24,903 [pool-4-thread-1] (Socks5Transport.java:411) [SOCKS5Transport] Couldn't accept request but still trying to establish a response connection: Could not establish socket with any provided host
ERROR 12:28:25,520 [pool-4-thread-1] (Socks5Transport.java:440) An error occurred while establishing a response connection
3. All project resources are completely transferred
Only Modules

When creating a session it is only possible to do so by sharing a module. It is not possible to share a whole project consisting of multiple modules.
It is also not possible to work around this by adding additional modules to the running session.

Only Modules the Host Created Himself

When creating a session it is only possible to work together on a module the initiator has created. The following scenario does not work:

  • User A creates Project1, shares it with user B.
  • End the session.
  • User B can start a session on Project1 with user A or even a third user C
File Inconsistencies

When a session is established on a freshly created module the client sees file inconsistency warnings because the content of some files of the host has been cleared. When resolving these inconsistencies the content gets cleared on the client side as well.
There is no real pattern deducible as of yet:

  • Happens to open files in the editor of the host as well as to closed ones
  • Happens to single files in multi-file projects
  • Happens to multiple files in multi-file projects
  • Happens to single files in a single-file project

What we know until now is:

  • The content is only cleared on the host side
  • The content is only cleared when a freshly created module is shared, modules that have been used in a Saros session before are not affected

Sometimes it is possible to recover the lost content with Edit > Undo Reload from Disk, but it is not always offered. When it is, the content is completely recovered, but the client still gets inconsistency warnings. After the client resolves them, the warnings are shown again a few seconds later.

Discussion

  • Stefan Rossbach

    Stefan Rossbach - 2016-08-29

    I only see issues but no details, e.g GUI freezes when XYZ is done, the average time between a one minute negotation in Eclipse is almost XYZ minutes in IntelliJ etc.

    It is hard to prioritize things without such details.

     
  • Bernd Sahre

    Bernd Sahre - 2016-08-30

    the Description and the challenges in this Bug ticket get slowly out of hand, shall we split this entry in several minor tickets (maybe in the four parts mentioned in the description)?

     
    • Franz Zieris

      Franz Zieris - 2016-08-30

      Sure, as soon as you have a rough understanding which parts of the system are responsible for which aspect of the invitation problems, feel free to create new tickets and move the corresponding parts of the problem description there.
      In the beginning it was reasonable (as least to some degree) to assume that the defect(s) that underlie the observable failures where co-located and maybe even fixable with a single patch. I think this is no longer the case.
      So if you know what to split and what to group: Go ahead.

       
  • Stefan Rossbach

    Stefan Rossbach - 2016-10-18

    This entry contains to many issues, please split them.

     
  • Stefan Rossbach

    Stefan Rossbach - 2016-10-18
    • status: open --> open-remind
     
  • tobous

    tobous - 2018-03-20

    Update:
    3.1 is a feature request, not a bug.
    3.2 and 3.3 are not reproducable for me. Seem to have been fixed in the meantime or got fixed as part of #868, #872 or #898.

     

    Last edit: tobous 2018-03-20
  • tobous

    tobous - 2018-03-27
    • Status: open-remind --> closed-migrated
     

Log in to post a comment.