Bug #1324995 reported by Tim Simpson on 2014-05-30
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack DBaaS (Trove)

Bug Description

Currently Trove maintains a package to install for each datastore. This gets passed down to the guest in the prepare call.

It would be highly preferable to pass this into the guest's config file when Trove calls Nova with the initialization file to create. This is the same file which contains the guest's id.

If the package lived there as well as the datastore, the guest, on initialization, could check to see if the package was installed before it tried to query to see if the datastore was alive. Currently it will do this, and if the package was never installed report the status of SHUTDOWN, which represents an error and isn't true. The real status should be NEW. If the guest could know the datastore wasn't installed, it wouldn't erroneously try to do that.

This isn't currently a problem in Trove because of a race condition we've embraced in Trove's architecture. Basically, on start up we wait for some time before getting the guest status. Typically, the Trove guest agent will receive the "prepare" call before that, at which point it stops the periodic task from updating the guest status. Really, it's a hack- if the prepare call comes late, the guest agent will report the datastore is in shutdown state.

Denis M. (dmakogon) wrote :

There are two way to solve this problem.
For nova - i agree, packages should exist in guest_info.
For heat - we should use software configuration.

This two ways should be taken into account when fixing it.

Tim Simpson (tim-simpson) wrote :

I don't really care about changing the method with which Trove supplies the guest agent information it can use the *moment* it starts up.

Switching it to use Heat Cloud formation is a different problem. No matter how we solve it, the guest will still need some info the second it starts running.

All I'm saying is the package name should be added to that collection of info.

Denis M. (dmakogon) on 2014-06-04
Changed in trove:
assignee: nobody → Denis M. (dmakogon)
status: New → In Progress
Denis M. (dmakogon) on 2014-06-04
Changed in trove:
assignee: Denis M. (dmakogon) → nobody
status: In Progress → New
Changed in trove:
importance: Undecided → Medium
milestone: none → juno-2
Changed in trove:
status: New → Triaged
Changed in trove:
milestone: juno-2 → ongoing
Amrith Kumar (amrith) wrote :

Updating importance to "Wishlist" (bugscrub, 2014-10-23)

Changed in trove:
importance: Medium → Wishlist
Parv Jain (parv-wutizup) on 2015-11-10
Changed in trove:
status: Triaged → Opinion
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers