Skip to content

Commit

Permalink
Generate changelog for 3.0.2
Browse files Browse the repository at this point in the history
Also, remove unreleased/ entries.

NO_DOC=changelog
NO_TEST=changelog
NO_CHANGELOG=changelog
  • Loading branch information
sergos committed Apr 16, 2024
1 parent 0caec38 commit f9e82c5
Show file tree
Hide file tree
Showing 36 changed files with 162 additions and 177 deletions.
162 changes: 162 additions & 0 deletions changelogs/3.0.2.md
@@ -0,0 +1,162 @@
# 3.0.2

Date: 2024-04-16
Tag: 3.0.2

## Overview

3.0.2 is the third [stable][release_policy] version of the 3.0 release
series. It resolves 31 bugs since 3.0.1.

The "stable" label means that we have all planned features implemented and we
see no high-impact issues. However, if you encounter an issue, feel free to
[report it][issues] on GitHub.

[release_policy]: https://www.tarantool.io/en/doc/latest/release/policy/
[issues]: https://github.com/tarantool/tarantool/issues

## Compatibility

Tarantool 3.x is backward compatible with Tarantool 2.11.x in the binary data
layout, client-server protocol, and replication protocol.

Please [upgrade][upgrade] using the `box.schema.upgrade()` procedure to unlock
all the new features of the 3.x series.

[upgrade]: https://www.tarantool.io/en/doc/latest/book/admin/upgrades/

## Bugs fixed

### Core

* Fixed a bug when Tarantool could hang due to `box.watch` (gh-9632).
* Fixed a crash on dropping a just accepted connection (gh-9717).
* The error messages are no longer stripped (gh-4975).
* Increased the maximum number of tuples in a hash index from 2147483648 (2^31)
to 4294967288 (2^32 - 8) (gh-9864).
* Now all triggers either have a direct impact on the execution flow (for
example, closing a connection or throwing an error) or print a message to
the error log when they throw an error (gh-9309).
* The `exclude_null` option is now supported by functional indexes (gh-9732).
* Fixed a memory leak when dropping fully-temporary spaces (gh-9296).
* Fixed a bug that resulted in a crash when both MVCC and index with the
`exclude_null` part were used (gh-9954).

### Replication

* Fixed a bug when replication broke with `ER_PROTOCOL` when transactions ended
with a local space operation (gh-9491).
* Fixed an issue when it was possible to use the
`box_collect_confirmed_vclock` stack after return (gh-9505).

### Raft

* Now the leader resigns on the first encounter with the `ER_WAL_IO`
write error (gh-9399).

### LuaJIT

Backported patches from the vanilla LuaJIT trunk (gh-9145, gh-9595). The
following issues were fixed as part of this activity:

* Limited exponent range in number parsing by `2^20`.
* Fixed build with internal unwinding.
* Fixed double-emitting of `IR_NEWREF` when restoring sunk values for side
trace (gh-7937).
* Fixed the `IR_HREFK` optimization for huge tables.
* Fixed recording of the `__concat` metamethod.
* Fixed the embedded bytecode loader.
* Improved error reporting on stack overflow.
* Fixed assertion on the Lua stack overflow for a stitched trace.
* Fixed snapshoting of functions for non-base frames.
* Fixed a crash in the allocator during sysprof profiling (gh-8140).
* No side traces are recorded now after disabling the JIT via `jit.off()`.
* Fixed handling of instable boolean types in TDUP load forwarding.
* Fixed a crash during the restoration of the sunk `TNEW` with a huge array
part.
* Fixed stack-buffer-overflow for `string.format()` with `%g` modifier and
length modifier.
* Fixed recording of `setmetatable()` with `nil` as the second argument.
* Fixed recording of `select()` in case with negative first argument.
* Fixed use-def analysis for child upvalues.
* Added the `cc` file type for saving bytecode.
* Fixed C file generation in `jit.bcsave`.
* Fixed trace error handling during trace stitching.
* Fixed recording of the `__concat` metamethod for vararg or protected frames.
* Fixed recording of a side trace returning to a lower frame with a maximum
possible frame size.
* Fixed `debug.setmetatable()` and `lua_setmetatable()` with enabled
`jit.dump()`.
* Fixed recording of side traces with a down-recursion.

### Lua

* Fixed a memory leak in `error_object:set_prev()` (gh-9694).
* Fixed alias detection in the YAML encoder (gh-8350, gh-8310, gh-8321).
* Fixed a regression that caused the `wait_connected = false` option of
`net_box.connect` to yield, despite being required to be fully asynchronous
(gh-9489).
* Fixed a bug in `net.box` when a connection with asynchronous requests could
get garbage collected (gh-9629).
* Fixed an inconsistency between the documented `on_disconnect` trigger behavior
of `net.box` connections when an error is thrown and the actual behavior
(gh-9717).
* Fixed a bug in the `on_disconnect` trigger of `net.box` connections that
caused Tarantool server to hang indefinitely when an error was thrown from the
trigger (gh-9797).
* The `on_schema_reload` trigger behavior of `net.box` connections when an
error is thrown is now consistent with the behavior of the `on_disconnect`
trigger (gh-9679).
* Fixed a bug when a `net.box` connection remained active after being closed
from the connection's `on_connect` trigger (gh-9827).

### Config

* Fixed a bug when only one alert of a particular type is reported in
`config:info().alerts` instead of several ones. Examples of such alerts are
privilege grant delay due to a lack of a space/function/sequence and skipping
of a non-dynamic `box.cfg()` option applies on the configuration reloading
(gh-9586).
* An alert regarding delayed privilege granting is now cleared when the
privilege is granted (gh-9574).
* Calling `require('config'):get()` in role code now returns the configuration
that is currently applied (gh-9649).
* The config status is now set after the `post_apply` phase (ghe-643).
* A non-existent role can now be assigned in the `credential` section of
the configuration (gh-9643).
* Privileges that were not granted by the config module are no longer
revoked by the config module (gh-9643).
* Fixed a non-verbose error on an empty configuration file.
Now Tarantool can successfully start up with an empty configuration
file using data from other configuration sources (gh-9845).
* Added additional validation to a cluster's configuration.
Now it is forbidden to create an empty group or
replicaset (gh-9895).
* Added a subject URI to the error that is thrown on configuration
verification (gh-9644).
* Added a warning with the skipped (unsuitable) URI to replicaset
and sharding configuration (gh-9644).

### Datetime

* Fixed a bug in `strptime` when the assertion was triggered (gh-8525).

### Build

* Fixed `package.cpath` for Debian based distros (gh-9580).

## Testing

* Bumped `metrics` submodule to commit `3370f85` to fix compatibility with
`luatest` commit `d985997`.

## Tools

* `tarantoolctl` has been removed. Systemd, sysvinit and logrotate scripts
based on it were also removed. All this functionality is covered by the `tt`
utility. `tarantoolctl` is no longer available in official deb and rpm
packages. This change will only affect the absence of tarantoolctl in future
releases of tarball archives. (gh-9443).
* Added the `--human-readable` option for the `misc.memprof` parser to print
sizes like 1KiB, 234MiB, 2GiB, etc.
Made the errors from the profilers more user-friendly (gh-9217).
4 changes: 0 additions & 4 deletions changelogs/unreleased/bump-metrics-to-3370f85.md

This file was deleted.

7 changes: 0 additions & 7 deletions changelogs/unreleased/config-missing-alerts.md

This file was deleted.

This file was deleted.

3 changes: 0 additions & 3 deletions changelogs/unreleased/fix-yaml-alias-serialization.md

This file was deleted.

This file was deleted.

6 changes: 0 additions & 6 deletions changelogs/unreleased/gh-5994-memprof-human-readable.md

This file was deleted.

3 changes: 0 additions & 3 deletions changelogs/unreleased/gh-8140-crash-in-allocator.md

This file was deleted.

3 changes: 0 additions & 3 deletions changelogs/unreleased/gh-8525-strptime-fix.md

This file was deleted.

15 changes: 0 additions & 15 deletions changelogs/unreleased/gh-9145-luajit-fixes.md

This file was deleted.

This file was deleted.

5 changes: 0 additions & 5 deletions changelogs/unreleased/gh-9309-errors-in-triggers.md

This file was deleted.

This file was deleted.

7 changes: 0 additions & 7 deletions changelogs/unreleased/gh-9443-remove-tarantoolctl.md

This file was deleted.

5 changes: 0 additions & 5 deletions changelogs/unreleased/gh-9489-netbox-wait-connected.md

This file was deleted.

4 changes: 0 additions & 4 deletions changelogs/unreleased/gh-9491-last-local-row-tx-boundary.md

This file was deleted.

4 changes: 0 additions & 4 deletions changelogs/unreleased/gh-9505-relay-stack-use-after-return.md

This file was deleted.

3 changes: 0 additions & 3 deletions changelogs/unreleased/gh-9580-fix-cpath-for-external-libs.md

This file was deleted.

23 changes: 0 additions & 23 deletions changelogs/unreleased/gh-9595-luajit-fixes.md

This file was deleted.

This file was deleted.

3 changes: 0 additions & 3 deletions changelogs/unreleased/gh-9632-fix-box-watch-hangs.md

This file was deleted.

6 changes: 0 additions & 6 deletions changelogs/unreleased/gh-9643-credentials-from-app-roles.md

This file was deleted.

6 changes: 0 additions & 6 deletions changelogs/unreleased/gh-9644-verbose-uri-error.md

This file was deleted.

4 changes: 0 additions & 4 deletions changelogs/unreleased/gh-9649-config-get-in-roles.md

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

3 changes: 0 additions & 3 deletions changelogs/unreleased/gh-9732-func-index-exclude-null.md

This file was deleted.

This file was deleted.

4 changes: 0 additions & 4 deletions changelogs/unreleased/gh-9827-netbox-on_connect-close.md

This file was deleted.

5 changes: 0 additions & 5 deletions changelogs/unreleased/gh-9845-nil-error-on-empty-config.md

This file was deleted.

This file was deleted.

This file was deleted.

3 changes: 0 additions & 3 deletions changelogs/unreleased/gh-9954-mvcc-crash-with-exclude-null.md

This file was deleted.

3 changes: 0 additions & 3 deletions changelogs/unreleased/ghe-643-set-status-after-post-apply.md

This file was deleted.

0 comments on commit f9e82c5

Please sign in to comment.