Timeout option can kill active connections that are still transferring data

Bug #389001 reported by Andreas Hasenack
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Landscape Client
Fix Released
Undecided
Free Ekanayaka
Smart Package Manager
Fix Released
Undecided
Gustavo Niemeyer
smart (Ubuntu)
Fix Released
Undecided
Unassigned
Intrepid
Fix Released
Undecided
Unassigned
Jaunty
Fix Released
Undecided
Unassigned
Karmic
Fix Released
Undecided
Unassigned

Bug Description

The timeout option being used in smart is about the whole lifetime of the connection, regardless if it's idle or not. If you are downloading a big package over a slow link, it can kill your download:

Failed to download packages:
    http://security.ubuntu.com/ubuntu/pool/main/o/openssl-blacklist/openssl-blacklist_0.3.3+0.4-0ubuntu0.8.04.3_all.deb: Operation timed out after 600000 milliseconds with 5884564 out of 6333180 bytes received

In the example above, the download was still active, i.e., bytes were being transferred.

The Landscape Team has proposed an SRU to fix this bug in intrepid and jaunty.

Statement explaining the impact
=========================

This bug affects anybody with a slow but yet working connection.

How the bug has been addressed
===========================

Passing a LOW_SPEED_LIMIT=1 parameter to the relevant libcurl call.

Detailed instructions how to reproduce the bug
=====================================

It can be reproduced artificially by inducing a timeout by means of traffic shaping. It has been done by the Landscape QA engineer and the fix is confirmed to work as expected.

Revision history for this message
Gustavo Niemeyer (niemeyer) wrote :

This has been fixed in revision 867 in Smart's trunk.

Changed in smart:
assignee: nobody → Gustavo Niemeyer (niemeyer)
milestone: none → 1.3
status: New → Fix Committed
Changed in landscape-client:
assignee: nobody → Free Ekanayaka (free.ekanayaka)
milestone: none → 1.3.2
status: New → Fix Committed
status: Fix Committed → In Progress
Revision history for this message
Free Ekanayaka (free.ekanayaka) wrote :

I've included the patch in the smart package and uploaded to my PPA.

Changed in landscape-client:
status: In Progress → Fix Committed
Jamu Kakar (jkakar)
tags: added: needs-testing
Revision history for this message
Free Ekanayaka (free.ekanayaka) wrote :

The patch Gustavo provided has been tested by Andreas and it is correctly included in the new revision of the python-smartpm package.

tags: removed: needs-testing
description: updated
Revision history for this message
Martin Pitt (pitti) wrote :

Is this fixed in karmic? If so, please close karmic task.

Changed in smart (Ubuntu Jaunty):
status: New → Fix Committed
tags: added: verification-needed
Revision history for this message
Martin Pitt (pitti) wrote :

Accepted smart into jaunty-proposed, the package will build now and be available in a few hours. Please test and give feedback here. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you in advance!

tags: added: ubuntu
Revision history for this message
Mathias Gug (mathiaz) wrote :

In karmic 1.2-4 - marking fixed released.

Changed in smart (Ubuntu Karmic):
status: New → Fix Released
Revision history for this message
Martin Pitt (pitti) wrote :

Accepted smart into intrepid-proposed, the package will build now and be available in a few hours. Please test and give feedback here. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you in advance!

Changed in smart (Ubuntu Intrepid):
status: New → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package smart - 1.2-0ubuntu1.9.04.1

---------------
smart (1.2-0ubuntu1.9.04.1) jaunty-proposed; urgency=low

  * Bug fixing update (LP: #347983)
    - 04_detect_plugins.dpatch crasher fix (LP: #388577)
    - 05_curl_timeout.dpatch fix failures when downloading big packages (LP: #389001)

 -- Free Ekanayaka <email address hidden> Mon, 22 Jun 2009 18:27:19 +0200

Changed in smart (Ubuntu Jaunty):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package smart - 1.1.1~bzr20081010-0ubuntu1.8.10.0

---------------
smart (1.1.1~bzr20081010-0ubuntu1.8.10.0) intrepid-proposed; urgency=low

  * Bug-fixing SRU (LP: #347983)
    - Added timeout for smart connections (LP: #268261)
    - New landscape plugin to set proxy for smart too,
      inheriting it from the landscape config (LP: #236884)
    - Added 04_detect_plugins crasher fix (LP: #388577)
    - Added 05_curl_timeout fix for failures when downloading big
      packages (LP: #389001)

 -- Free Ekanayaka <email address hidden> Wed, 07 Oct 2009 09:16:59 +0200

Changed in smart (Ubuntu Intrepid):
status: Fix Committed → Fix Released
Changed in smart:
milestone: 1.3 → 1.2.1
Changed in landscape-client:
status: Fix Committed → Fix Released
Changed in smart:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.