Bump stable/havana next version to 2013.2.2

Change-Id: I3a7170180717bd62fce4cbc2c3a9107187f89fb1
Avoid false negatives on message signature comparison

Fixes bug 1262255

Previously, samples for the 'instance.scheduled' meter were always
rejected with a false negative on the message signature verification.

The problem occured because certain resource metadata (such as the
block_device_mapping) in the 'scheduler.run_instance.scheduled'
notification are realized as a list of dict, and are thus similarly
encoded in the corresponding sample payload.

However the message signature computation then became indeterminate,
as the unicode representation of equivalent dicts is not guaranteed
equal (e.g. depends on insertion order in the case of hash collisions).

Now, we avoid false negatives by explicitly re-ordering insertion
into such dicts.

Change-Id: I77f7d89229518cf040608d7eb3307e2257bce07a
(cherry picked from commit e9cde137b0c24ac755bbb3629b9a831391574f6c)
1st & last sample timestamps in Resource representation

Fixes bug 1262335

Previously, the first and last sample timestamps associated
with a resource were calculated by the storage driver, but
then discarded.

Now, we include these values in the API resource representation.

Change-Id: I3cf6081e1ac1294083f6326f85dabebab0d02203
(cherry picked from commit 6a9dc97f962c288f5037d59d05a771823eb4bcdd)
Merge "Avoid false negatives on message signature comparison" into stable/havana
Remove redundant meter (name,type,unit) tuples from Resource model

Fixes bug 1267162

Previously, a list of meter (name,type,unit) tuples with per-sample
cardinality was added to the Resource model by the storage driver
get_resource method.

However this potentially huge and highly repetitive list was then
promptly discarded by the API layer, as the meter links in the API
Resource representation are populated via subsequent calls into
the storage driver get_meters method.

Now, we avoid the scaling issue by suppressing the creation of
this unused meter list.

Change-Id: I18dee7552836c724798ea1340e2e933c09d8a294
(cherry picked from commit 7c4c0e8fc098fbadec2e30ea2bdf1068b5b4288a)
Update ceilometer.conf.sample

Due to python-keystoneclient update.

Change-Id: Ie683d3fbf8086d2be6a2fbe19374b8d31abaf976
Closes-bug: #1268614
(cherry picked from commit 76c06e03eaef0c66689c62aece24baee0b372644)
Replace mongo aggregation with plain ol' map-reduce

Fixes bug 1262571

Previously, the mongodb storage driver an aggregation pipeline
over the meter collection in order to construct a list of resources
adorned with first & last sample timestamps etc.

However mongodb aggregation framework performs sorting in-memory,
in this case operating over a potentially very large collection.
It is also hardcoded to abort any sorts in an aggregation pipeline
that will consume more than 10% of physical memory, which is
observed in this case.

Now, we avoid the aggregation framework altogether and instead
use an equivalent map-reduce.

Change-Id: Ibef4a95acada411af385ff75ccb36c5724068b59
(cherry picked from commit ba6641afacfc52e7391d2095751ee96d62a64c25)
Fix the Alarm documentation of Web API V2

Correct the Alarm example on the API documentation to contain a
valid Alarm sample and complete the Note section with information
about the connection between the type and rules fields of the
Alarm.

Fixes bug #1245362

Change-Id: I5fccf51b820330595a627fd0001beec2d5f7c6e3
Fix to tackle instances without an image assigned

fixes bug #1233103

Change-Id: I4d4d7bdff09b6748e14ebac8293050513fb18ed2
(cherry picked from commit e36f9f32fea2e128e1f03bf2b94ad0584337b2c4)
Merge "Replace mongo aggregation with plain ol' map-reduce" into stable/havana
Merge "Fix the Alarm documentation of Web API V2" into stable/havana
Add keystone_authtoken.enforce_token_bind boilerplate

Add boilerplate for the following config option:

  [keystone_authtoken]
  enforce_token_bind

in the ceilometer.conf.sample.

Change-Id: I4860ec3774385cc98c2600eb1449d356bc63b408
Add documentation for pipeline configuration

Extend the configuration section of the development documentation
of Ceilometer to contain the configuration options of pipelines.

Change-Id: Ie9d01b89f7af96ba4a80a9b2f2e9141443cf3ecf
Closes-Bug: #1272988
Merge remote-tracking branch 'upstream/stable/havana' into havana