Make squid package in 14.04 multithread supported

Bug #1416009 reported by lezbak
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
squid3 (Ubuntu)
Fix Released
High
Unassigned
Nominated for Trusty by Jorge Niedbalski
Nominated for Vivid by Jorge Niedbalski

Bug Description

Hi,

Since squid 3.2 there is multithread support,

But in the canonical case this is not working because the /var/run/squid3 dir is not created, the upstart script is not supporting this because of it does not expect forks and it have hardcoded -N argument that overwrites the worker config statement

The problem with upstart can be found here, https://bugs.launchpad.net/upstart/+bug/406397

Revision history for this message
lezbak (lezgin-bakircioglu) wrote :

The affected ubuntu version is 14.04.1

Revision history for this message
Robie Basak (racb) wrote :

Thank you for taking the time to report this bug and helping to make Ubuntu better.

I understand that you have a single use case here, and that you expect this to just work on 14.04. From the point of view of fixing it though, there are a few different changes required, which need to be treated differently.
These are:

1) Create /var/run/squid3 automatically.
2) Drop -N from being specified to squid.
3) Apply change 1) as an update to 14.04.
4) Apply change 2) as an update to 14.04.

1) and 2) would apply to the development release and thus the next LTS. 3) and 4) would apply the change to existing 14.04 users. Our policies require us to do 1) before 3), and 2) before 4), to avoid users experiencing a regression when upgrading to a new release in the future.

It also seems to me that you can do all of this on a system by editing /etc/init/squid3. This is a "conffile" and changing it manually is permitted - the packaging system will endeavour to leave any customisation to this file intact. So an available workaround to all of this is to manually correct /etc/init/squid3.

So considering each necessary step individually:

For 1) and 2), note that we're hoping to switch to systemd this cycle, so the upstart script will no longer be relevant. I don't see a systemd unit defined, so it will fall back to the init.d script. This makes 1) and 2) quite different to 3) and 4): the former needs to be fixed in /etc/init.d, and the latter in /etc/init.

1) I don't see /var/run/squid3 being created in the init.d script, so it looks like we'll need to fix this in Vivid.

2) It doesn't look like -N is being used, so this shouldn't be a problem in Vivid.

3) If this is required, it is a bug that the upstart script doesn't do this before starting squid. It would be reasonable to fix this in an update to 14.04, but is it worth it? It's for a non-default use case, and you'll need to apply a workaround for 4) anyway (see below). On the other hand, if it turns out that many people are affected by this, it would be valid to issue an update to 14.04 for this.

4) I don't think we can change this in an update to 14.04. It would change behaviour of squid to every existing 14.04 user, and unless further analysis suggests otherwise, I think this would present too big a regression risk to existing users. So I think you will need to apply the workaround as above.

So in conclusion:

I think we should fix 1) in Vivid. 2) doesn't appear to be required. 3) is reasonable to fix in an update to 14.04, but I'm not sure it's worth it given that users will need to apply a workaround anyway, so unless an objection is made, I propose not to do it. For 4), the only reasonable option is for 14.04 users to apply the workaround.

I'll leave this bug open to track 1).

Changed in squid (Ubuntu):
status: New → Triaged
Changed in squid (Ubuntu):
assignee: nobody → Jorge Niedbalski (niedbalski)
importance: Undecided → High
status: Triaged → In Progress
Changed in squid (Ubuntu):
assignee: Jorge Niedbalski (niedbalski) → nobody
status: In Progress → Triaged
Revision history for this message
Amos Jeffries (yadi) wrote :

This is a squid3 (v3.2+) package feature. "squid" package in the affected Ubuntu versions is v2.7.

affects: squid (Ubuntu) → squid3 (Ubuntu)
Revision history for this message
Amos Jeffries (yadi) wrote :

Squid-4 packages in Cosmic resolve this issue.

Changed in squid3 (Ubuntu):
status: Triaged → 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.