default-series choice is inconsistent

Bug #1308966 reported by Roger Peppe
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
juju-core
Fix Released
Medium
Unassigned

Bug Description

When I bootstrap from trusty with --upload-tools, it uploads tools
for the latest LTS series as reported by distro-info --lts.

On the bootstrap machine, distro-info does not exist, so
it falls back to using precise, so new instances are started
with series precise, for which we don't have tools.

At least two possible fixes:
1) make sure that distro-info is installed on juju nodes.
2) make environs/config calculate the default-series only
once, on the client machine at bootstrap time.

On balance I'm in favour of 2), but that means that
resolveCharmURL in cmd/juju becomes awkward to do.

Tags: series
Revision history for this message
John A Meinel (jameinel) wrote :

I'm not sure where distro-info is coming into play when determining what machines should be deployed.

It is supposed to always deploy a machine based on the series of the charm.
So doing "juju deploy mysql" will do a lookup in the charm store (via the API Server) for what series "mysql" should use, and that should return precise/trusty based on what versions of charms are available.

At which point, the juju client finishes its request to deploy exactly either cs:trusty/mysql or cs:precise/mysql.

Now *that* may fail because tools aren't available, or it might be that we then do some other lookup as to whether we even know what that means.

Or perhaps this bug isn't about a charm, but instead only affects the "ensure-state-availability" code since that doesn't actually have a charm that it is deploying.

Revision history for this message
John A Meinel (jameinel) wrote :

I certainly *would* expect that juju ensure-state-availability would prefer to deploy more nodes with the same series as the current API servers.

Revision history for this message
Curtis Hovey (sinzui) wrote :

I hope the fix for this issue can be backported to 1.18 for release into trusty. Is this problem averted when default-series is set in the env?

Changed in juju-core:
status: New → Triaged
importance: Undecided → High
milestone: none → 1.19.1
Revision history for this message
John A Meinel (jameinel) wrote : Re: [Bug 1308966] Re: default-series choice is inconsistent

If this is about ensure-availability, it would only affect 1.19 (as that
functionality isn't exposed in 1.18).
Certainly if you had default-series set, it should override any detected
values.

On Thu, Apr 17, 2014 at 4:42 PM, Curtis Hovey <email address hidden> wrote:

> I hope the fix for this issue can be backported to 1.18 for release into
> trusty. Is this problem averted when default-series is set in the env?
>
> ** Changed in: juju-core
> Status: New => Triaged
>
> ** Changed in: juju-core
> Importance: Undecided => High
>
> ** Changed in: juju-core
> Milestone: None => 1.19.1
>
> --
> You received this bug notification because you are subscribed to juju-
> core.
> https://bugs.launchpad.net/bugs/1308966
>
> Title:
> default-series choice is inconsistent
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/juju-core/+bug/1308966/+subscriptions
>

Revision history for this message
Roger Peppe (rogpeppe) wrote :

On 17 April 2014 05:12, John A Meinel <email address hidden> wrote:
> I'm not sure where distro-info is coming into play when determining what
> machines should be deployed.
>
> It is supposed to always deploy a machine based on the series of the charm.
> So doing "juju deploy mysql" will do a lookup in the charm store (via the API Server) for what series "mysql" should use, and that should return precise/trusty based on what versions of charms are available.

distro-info is used when we are creating a machine without a charm.
This happens when bootstrapping, when using add-machine
and when using ensure-availability.

> Or perhaps this bug isn't about a charm, but instead only affects the
> "ensure-state-availability" code since that doesn't actually have a
> charm that it is deploying.

Yes. I should have made that clearer.

Revision history for this message
Roger Peppe (rogpeppe) wrote :

On 20 April 2014 00:40, John A Meinel <email address hidden> wrote:
> If this is about ensure-availability, it would only affect 1.19 (as that
> functionality isn't exposed in 1.18).
> Certainly if you had default-series set, it should override any detected
> values.

I believe it will affect add-machine too, although I haven't verified that
live.

John A Meinel (jameinel)
Changed in juju-core:
assignee: nobody → John A Meinel (jameinel)
status: Triaged → In Progress
Revision history for this message
John A Meinel (jameinel) wrote :

I split out the ensure-availability portion of this to bug #1308966

Revision history for this message
John A Meinel (jameinel) wrote :

bah, that's this bug, I actually meant: bug #1311089

Revision history for this message
John A Meinel (jameinel) wrote :

The part of this that was important for ensure-availability has been done. This question remains open.

Changed in juju-core:
status: In Progress → Triaged
milestone: 1.19.1 → 1.20.0
assignee: John A Meinel (jameinel) → nobody
assignee: nobody → John A Meinel (jameinel)
John A Meinel (jameinel)
Changed in juju-core:
assignee: John A Meinel (jameinel) → nobody
Changed in juju-core:
milestone: 1.20.0 → next-stable
Revision history for this message
Vladislav Klyachin (klyachin) wrote :

By my observations, presence of distro-info package is unrelated.

I do:
juju switch ec2vladk
juju bootstrap --upload-tools --constraints "instance-type=t1.micro" --debug
juju deploy ubuntu
juju run --all "sudo apt-get install -y distro-info"
juju add-machine
juju stat

environment: ec2vladk
machines:
  "0": series: trusty (from bootstrap)
  "1": series: trusty (from deploy)
  "2": series: precise (from add-machine)

juju version: 1.19.3-trusty-amd64

Curtis Hovey (sinzui)
tags: added: series
Curtis Hovey (sinzui)
Changed in juju-core:
importance: High → Medium
milestone: next-stable → none
Revision history for this message
Anastasia (anastasia-macmood) wrote :

There has been a lot of changes in the area, including with --upload-tools being deprecated.
We believe this issue now to be resolved in Juju2.

Changed in juju-core:
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.