** Final Release **

PuppetDB 2.1.0 final - July 8th, 2014.

PuppetDB 2.1.0 Downloads
------------------------

Available in native package format in the release repositories at:
http://yum.puppetlabs.com and http://apt.puppetlabs.com

For information on how to enable the Puppet Labs repos, see:
http://docs.puppetlabs.com/guides/puppetlabs_package_repositories.html#open-source-repositories

Blog: http://puppetlabs.com/blog/introducing-puppetdb-2.1.0

Binary tarball: http://downloads.puppetlabs.com/puppetdb/

Source: http://github.com/puppetlabs/puppetdb

Please report feedback via the Puppet Labs tickets site, using an
affected PuppetDB version of 2.1.0:
https://tickets.puppetlabs.com/browse/PDB

Documentation: http://docs.puppetlabs.com/puppetdb/2.1/


Puppet module:
http://forge.puppetlabs.com/puppetlabs/puppetdb

PuppetDB 2.1.0 Release Notes
--------------------------------

PuppetDB 2.1.0 is a feature release focusing on new query
capabilities, streaming JSON support on all endpoints and a new report
status field for determining if a Puppet run has failed. Note that
this release is backward compatible with 2.0.0, but users must upgrade
PuppetDB terminus to 2.1.0 when upgrading the PuppetDB instance to
2.1.0.

Things to take note of before upgrading:

* There is a known issue in Puppet 3.4.0, 3.4.1 and 3.4.2 with
duplicate failed events here:
https://tickets.puppetlabs.com/browse/PUP-1524. We recommend upgrading
to Puppet 3.4.3 or greater.

* If you receive the error “Could not open
/etc/puppet/log4j.properties”, this is because we have changed the
packaged config.ini to point at a new logging configuration file:
logback.xml. However during package installation some package managers
will cowardly refuse to just update config.ini, this in particular
affects RPM. After upgrading you should ensure any .rpmnew files are
reviewed and that changes to our vendored version are now merged with
your version of config.ini on disk. See this ticket for more
information: https://tickets.puppetlabs.com/browse/PDB-656

* Make sure all your PuppetDB instances are shut down and only upgrade
one at a time.

* As usual, don’t forget to upgrade your puppetdb-terminus package
also (on the host where your Puppet Master lives), and restart your
master service.

New Features:

* (PDB-660) Switch all query endpoints to stream JSON results

  The following endpoints have been switched over to streaming:

  - event-counts
  - reports
  - nodes
  - environments
  - events

  Using 'event-query-limit' is now deprecated, use the normal
  paging/streaming functionality to achieve the same results.

* (PDB-658, PDB-697) Implement new "query engine" for v4

  This rewrite of the v4 API query infrastructure unifies query
  operators across all endpoints. Each endpoint now supports all
  operators appropriate for the given field of that type. As an
  example, any string field can now be searched by regular expression.
  All dates can be search with inequality operators like < or > for
  searching via date ranges. There are also many new queryable fields.
  Below summarizes the new features of the switch to this query engine

  events endpoint
   - Added configuration-version as a queryable field
   - Added containment-path as a queryable field (queryable in a way
similar to tags)

  nodes endpoint
   - Added facts-timestamp, catalog-timestamp, report-timestamp  as a
queryable field

  reports endpoint
   - Added puppet-version, report-format, configuration-version, start-time,
     end-time, receive-time, transaction-uuid as queryable fields

  null? operator
   - new operator that checks for the presence or absence of a value

  Some endpoints previously returned NULL values when using a "not"
  query such as ["not", ["=", "line", 10]]. The query engine follows
  SQL semantics, so if you want NULL values, you should explicty ask
  for it like:

  ["or",
    ["not", ["=", "line", 10]]
    ["null?", "line" true]]

* (PDB-162) Add regexp support to resource parameter queries

  The query engine supported this, but the existing "rewrite" rule, to go
  from the shorthand parameter syntax to the nested resource query didn't
  recognize ~. That is fixed with this commit, so regexps will now
work on parameters.

* (PDB-601) Do not require query operator on reports endpoint

  With this pull request, hitting the reports endpoint without a query argument
  will return the full reports collection.  This behavior is consistent with
  that of the nodes, facts, and resources endpoints.

* (PDB-651) Allow the web app URL prefix to be configurable

  Previously PuppetDB always used the context root "/", meaning all
  queries etc would be something like
  "http://localhost:8080/v4/version";. This change allows users to
  specify a different context root, like
  "http://localhost:8080/my-context-root/v4/version";. See the
  url-prefix configuration documentation for more info

* (PDB-16) Add status to stored reports

  Previously there was no way to distinguish between failed puppet runs
  and successful puppet runs as we didn't store report status. This commit
  adds support for report status to the "store report" command, v4 query
  API and model.

* (PDB-700) Allow changes to maxFrameSize in activemq

  maxFrameSize previously defaulted to 100 MB.  Now default is 200 MB with user
  configurability.

Bug Fixes and Maintenance:

* (PDB-675) Fix Debian/Ubuntu PID missing issue

  In the past in Debian and Ubuntu releases we had issues where the
  PuppetDB system V init scripts were not stopping the PuppetDB
  process whenever a PID file was missing. This patch now introduces a
  fallback that will kill any java process running as the puppetdb
  user, if the PID file is missing.

* (PDB-551) Created a versioning policy document

  This document let's consumers of the PuppetDB API know what to
  expect from an API perspective when new versions of PuppetDB are
  release. This document is a separate page called "Versioning Policy"
  and is included in our API docs

* (PDB-164) Add documentation for select-nodes subquery operator

  This pull request supplies V4 API documentation for the select-nodes subquery
  operator, which was previously supported but undocumented.

* (PDB-720) Fix services test with hard coded Jetty port

  Fixed this issue by moving code that dynamically picks a free port out
  of import-export-roundtrip and into a separate ns. I just switched the
  services test to use that code and there should no longer be conflicts.

* (RE-1497) Remove quantal from build_defaults

  This commit removes quantal from all build defaults because it is end of
  life. It removes the defaults from the build_defaults yaml.

* (PDB-240) Replace anonymize.clj read-string with clojure.edn/read-string

  This patch replaces a call to read-string in anonymize.clj with a call to
  clojure.edn/read-string. Unlike clojure.core/read-string,
  clojure.edn/read-string is safe to use with untrusted data and guaranteed to
  be free of side-effects.

* (PDB-220) Coerce numerical function output in manifests to string

  Previously, when a user defined a numeric-valued function in a puppet manifest
  and submitted it to notify, the resource-title would remain numeric and
  PuppetDB would throw exceptions while storing reports. Per the docs,
  resource-title must be a string. This pull request avoids the problem by
  coercing resource-title to string.

* (PDB-337) Remove extraneous _timestamp fact

  Previously a _timestamp fact was submitted to puppetDB even though _timestamp
  was originally intended for internal use.  This commit strips internal data
  (all preceded by "_") from the factset before submission to PuppetDB.

* (PDB-130) Fixes a nasty traceback exposed when users run import from
command line with an invalid filename. A friendly message is now
printed instead.

* (PDB-577) Lower KahaDB MessageDatabase logging threshold.

  Previously, premature termination of PuppetDB import under specific ownership
  conditions led to a residual KahaDB lock file that could prevent
subsequent imports
  from running with no obvious reason why.  This patch lowers the log threshold
  for KahaDB MessageDataBase so affected users are informed.

* (PDB-686) Add warning about PDB-686 to release notes

  This adds a warning about PDB-686 to the release notes so users know how to
  work-around it.

  This also cleans up the linking in our current release notes, and removes the
  warning about Puppet 3.4.x, because we pin against 3.5.1 and greater anyway.

* Add sbin_dir logic to Rakefile for Arch linux

* (PDB-467) Merge versioning tests for http testing into non-versioned files

  This patch removes all remaining versioned http test files into shared
  unversioned files, so that we may start iterating across versions in the
  same file.

* Fix comparison in dup resources acceptance test

  Due to changes in Puppet 3.6.0, the comparison done in our resource
duplication
  tests no longer matches the actual output. This patch ammends the
comparison to
  match Puppet 3.6.0 output now.

* (PDB-597) Add trusty build default

  This includes trusty (Ubuntu 14.04) in our builds.

* Unpin the version of beaker

  We had pinned beaker previously because we were waiting for some of
our new EC2
  customisations to be merged in and released. This has been done now.

* Fix a race condition in the import/export round-trip clojure tests

  This scenario occurred if command processing for facts is slow. A result
  with the hard coded certname would be returned with no fact values or
  environment. This commit fixes the code to only return results when
  facts are found.

* (PDB-309) Update config conversion code for Schema 0.2.1

  Much of the code for converting user provided config to the internal
types (i.e.
  "10" to Joda time 10 Seconds etc) is no longer necessary with the new
  coerce features of Schema. This commit switches to the new version and
  makes the necessary changes to use the coerce feature.

PuppetDB 2.1.0 Contributors
---------------------------
Chris Price, Eric Timmerman, Ken Barber, Melissa Stone, Niels Abspoel,
Ryan Senior, Wyatt Alt

PuppetDB 2.1.0 Changlog
-----------------------

Chris Price (7):
      c7628d2 Allow web app URL prefix to be configured
      0b38aac Support for configurable URL in terminus
      f584224 (PDB-651) Fix dashboard to be compatible with url prefix
      23e0e26 Add deprecation warning to docs for `explicit` metric type strings
      a69bf71 (PDB-651) Add docs for url-prefix setting
      a60b843 Update `with-http-app` fixture to include default for url-prefix
      94ebe0a (PDB-651) Fix spec failure on ruby 1.8.7

Eric Timmerman (2):
      c619cec (RE-1497) Remove quantal from build_defaults
      17af083 (RE-1497) Remove quantal from build_defaults

Ken Barber (24):
      f81ac21 Update release notes with more upgrade warnings
      93817db (PDB-16) Fix terminus to always submit reports and
include the status
      650bc7e (PDB-16) Include warning when environment doesn't exist in report
      4ed1e81 Fix reference to PuppetDB 1.6.x in index.markdown
      871086b (PDB-551) Include a versioning policy
      3bde8ac (PDB-551) Some minor cleanups to the versioning policy
      530ac79 (PDB-551) Reduce wording based on feedback
      98e8315 Unpin the version of beaker
      0f44e0c (PDB-597) Add trusty build default
      3623e45 Fix comparison in dup resources acceptance test
      3f9b81c (PDB-467) Collapse versioned files for http tests
      adb4fcd (PDB-467) Create deftestseq and implement it everywhere
      61764ae (PDB-686) Add warning about PDB-686 to release notes
      388d0c6 Typo in v4/reports.markdown
      edbef54 (PDB-467) Convert endpoints to vecs of vecs
      0957425 (PDB-660) Enable event streaming and provide other
streaming cleanups
      ee011c5 (PDB-660) Throw deprecation warning for
'event-query-limit' and fix a docstring
      5e2449b (PDB-660) Turn on streaming for nodes end-point
      c9df21c (PDB-660) Environments end-point streaming
      ab02b8e (PDB-660) Provide better validation for query params on
environments & singleton end-points
      271dc51 (PDB-660) Report end-point streaming
      fcd629e (PDB-660) Remove extraneous parens
      9f5967b (PDB-660) Event-counts streaming
      03767ad (PDB-660) Final refactor for streaming

Melissa Stone (3):
      466e4cd (PDB-675) Stop pdb process even if pidfile missing
      a6e5a21 (maint) Restrict which process will be stopped
      c90e765 (maint) Add log entry for when process stopped without PIDfile

Niels Abspoel (1):
      1e021db sbin_dir logic to Rakefile

Ryan Senior (17):
      5d8d204 (PDB-309) Update config conversion code for Schema 0.2.1
      128934c Fix a race condition in the import/export round-trip clojure tests
      890f31e (PDB-16) Added status to "store report" and report query results
      0af169f (PDB-657) Query logic refactor
      910e48c (PDB-658) Move reports endpoint over to the new query engine
      df7eb02 (PDB-658) Move facts endpoint to new query engine
      85d50b9 (PDB-658) Moving events querying to the new query engine
      ee55859 (PDB-658) Moved event-counts endpoints to the query engine
      b4667cf (PDB-658) Move environments endpoint to the query engine
      a7a3ac2 (PDB-697) Test and document new reports features
      0feb553 (PDB-697) Added docs/tests for new queryable nodes
fields and operators
      6455bec (PDB-660) Fix testing for not(regexp) match case
      96d5af9 (PDB-697) Document and test new events and resources features
      a235006 (PDB-162) Add regexp support to resource parameter queries
      66ccddd7 (PDB-720) Fix services test with hard coded Jetty port
      48e1eb5 (PDB-728) Update release notes for 2.1.0
      b82f58f (PDB-729) Updated documentation indexes for PuppetDB 2.1

wkalt (8):
      b9e3459 (PDB-700) Allow changes to maxFrameSize in activemq
      598444f (PDB-577) Lower KahaDB MessageDatabase logging threshold.
      c964d91 (PDB-130) Fixes a nasty traceback exposed when users run
import from command line with an invalid filename. A friendly message
is now printed instead.
      7fb9418 (PDB-337) Remove extraneous _timestamp fact
      0454e09 (PDB-220) Coerce numerical function output in manifests to string
      aefc579 (PDB-240) Replace anonymize.clj read-string with
clojure.edn/read-string
      ab71ba2 (PDB-164) Add documentation for select-nodes subquery operator
      1a90ff7 (PDB-601) Do not require query operator on reports endpoint

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to puppet-dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-dev/CAE4bNTmrF6au3T0yDtQjq%2B%3DiH5ogUBmu%2BxXKXoZTw1cmqfzkjA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to