.. _version_3.1.1:

=============
Version 3.1.1
=============

Released on 2018/09/25.

.. NOTE::

    If you are upgrading a cluster, you must be running CrateDB 2.0.4 or higher
    before you upgrade to 3.1.1.

    We recommend that you upgrade to the latest 3.0 release before moving to
    3.1.1.

    You cannot perform a `rolling upgrade`_ to this version. Any upgrade to this
    version will require a `full restart upgrade`_.

    When restarting, CrateDB will migrate indexes to a newer format. Depending
    on the amount of data, this may delay node start-up time.

.. WARNING::

    Tables that were created prior to upgrading to CrateDB 2.x will not
    function with 3.1 and must be recreated before moving to 3.1.x.

    You can recreate tables using ``COPY TO`` and ``COPY FROM`` while running a
    2.x release into a new table, or by `inserting the data into a new table`_.

    Before upgrading, you should `back up your data`_.

.. _rolling upgrade: http://crate.io/docs/crate/guide/best_practices/rolling_upgrade.html
.. _full restart upgrade: http://crate.io/docs/crate/guide/best_practices/full_restart_upgrade.html
.. _back up your data: https://crate.io/a/backing-up-and-restoring-crate/
.. _inserting the data into a new table: https://crate.io/docs/crate/reference/en/latest/admin/system-information.html#tables-need-to-be-recreated


.. rubric:: Table of Contents

.. contents::
   :local:

Changelog
=========

Changes
-------

- Added support for using generated columns inside object columns.

Fixes
-----

- Calling an unknown user defined function now results in an appropriate error
  message instead of a ``NullPointerException``.

- Fixed processing of the ``endpoint``, ``protocol`` and ``max_retries`` S3
  repository parameters.
