Bug 30329 - Computer cannot be accessed sometimes although iTALC is running
Computer cannot be accessed sometimes although iTALC is running
Status: CLOSED FIXED
Product: UCS@school
Classification: Unclassified
Component: UMC - Computer room
UCS@school 3.0
Other Linux
: P3 normal (vote)
: UCS@school 3.1 R2
Assigned To: Sönke Schwardt-Krummrich
Jascha Geerds
: interim-1
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2013-02-06 19:31 CET by Alexander Kläser
Modified: 2013-06-07 21:40 CEST (History)
2 users (show)

See Also:
What kind of report is it?: ---
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional): Troubleshooting, Usability
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Kläser univentionstaff 2013-02-06 19:31:27 CET
During an iTALC session, it happens fairly often that a computer is shown as switched off although iTALC is up and running. It then suffices to log out and in again on the windows client.
Comment 1 Sönke Schwardt-Krummrich univentionstaff 2013-05-13 11:06:49 CEST
iTALC seems to block sometime on the Linux side and on the Windows side. 
netstat shows that there are a lot of pending bytes for a iTALC tcp connections but client(Windows) or server(Linux) do not try to read it from tcp socket.

After some time, the congestion vanishes and the iTALC connection seems to work normal.
Comment 2 Sönke Schwardt-Krummrich univentionstaff 2013-05-15 18:23:21 CEST
(In reply to comment #1)
> iTALC seems to block sometime on the Linux side and on the Windows side. 
> netstat shows that there are a lot of pending bytes for a iTALC tcp connections
> but client(Windows) or server(Linux) do not try to read it from tcp socket.

At least in one case iTALC was not the culprit. If a windows host with activated firewall crashes, it drops all incoming unknown packages after rebooting. Due to this behaviour the linux TCP stack is unable to determine if the host is offline, unreachable or firewalled (and tries it again and again and again.... with increasing timeouts). 

Since the computer room module requests every second the name of the logged in user, it now checks if the last response of the iTALC client was longer than 
10 seconds ago. If this is the case, the UMC modules tries to reestablish a new iTALC connection to the iTALC client.

The automatic reconnect also helps with other deadlocks that may occur with iTALC.

The timeout of 10 seconds may be adjusted by the UCR variable
ucsschool/umc/computerroom/core/timeout (no value == 10 seconds).

ucs-school-umc-computerroom (2.0.33-1) unstable; urgency=low

Changelog entry has been committed.
Comment 3 Sönke Schwardt-Krummrich univentionstaff 2013-05-21 16:07:39 CEST
From Ticket#: 2013011621000879: Tobias Doerffel wrote:
> BTW: ich habe gestern Abend noch einen kritischen Fix für eine Race
> Condition committet - iTALC sollte in der ItalcCore-Bibliothek nun
> deutlich seltener abstürzen. Daneben noch ein paar Kleinigkeiten. Wenn

3 commits have been merged into our packages "italc" and "italc-windows".

italc (2:2.0.14-1) unstable; urgency=low
italc-windows (1.0.1-1) unstable; urgency=low
Comment 4 Jascha Geerds univentionstaff 2013-05-29 12:02:08 CEST
I've already tested the stability for Bug #30827, #30828, …
Furthermore, I've tested the handling with the Windows firewall as it is described here.

Bug: OK
Changelog: OK

> I have tested the following cases:
> 
> - Installation
> - Video/Demo mode
> - Screen (un)lock
> - Input devices (un)lock
> - Shutdown
> - Reboot
> - Log off
> 
> Specific to the UMC module:
> - Switch room
> - Take over a room
> - Session timeout
> 
> Cases where it is possible to select multiple machines for the abovementioned
> actions have been tested too. Looks solid!
> 
> Systems:
> - Windows XP 32-Bit
> - Windows XP 64-Bit
> - Windows 7 32-Bit
> - Windows 7 64-Bit
> - Windows 8 32-Bit
> - Windows 8 64-Bit
Comment 5 Sönke Schwardt-Krummrich univentionstaff 2013-06-07 21:40:39 CEST
UCS@school 3.1 R2 has been released:
http://download.univention.de/doc/release-notes-ucsschool-3.1-rev2.pdf

If this error occurs again, please use "Clone This Bug".