Update Red Hat Copyright Notices
[nbdkit.git] / docs / nbdkit-release-notes-1.14.pod
blob8cc1e2a862a6436ec3bbe6b75eba5c0f40940d75
1 =head1 NAME
3 nbdkit-release-notes-1.14 - release notes for nbdkit 1.14
5 =head1 DESCRIPTION
7 These are the release notes for nbdkit stable release 1.14.
8 This describes the major changes since 1.12.
10 nbdkit 1.14.0 was released on 28th August 2019.
12 =head2 New features
14 Server performance improvements: Nagle’s algorithm is disabled;
15 instead C<MSG_MORE> is used to control when outgoing packets are sent.
16 Ramdisk plugins now support more efficient zeroing.  (Eric Blake).
18 Plugins can now select their thread model at run time.  Thread model
19 selection is not finalized until after the config stage (Eric Blake).
21 The server supports C<NBD_CMD_CACHE> for prefetching.  Plugins and
22 filters have been updated to implement this where it makes sense (Eric
23 Blake).
25 Low level pthread lock failures now call L<abort(3)>.  This should
26 never happen in real situations (Eric Blake).
28 The server will not advertize multi-conn support if the internal
29 thread model is serialized, avoiding a possible deadlock in some
30 clients (Eric Blake).
32 New server option I<--no-sr> can be used to disable structured replies
33 (Eric Blake).
35 The server will now refuse to start if stdin/stdout/stderr are closed,
36 to avoid potential issues with file descriptor handling in plugins
37 (Eric Blake).
39 C<$uri> can be used to specify an NBD URI in I<--run> parameters (Eric
40 Blake).
42 New L<nbdkit-stats-filter(1)> displays elapsed statistics about NBD
43 operations, such as the number of bytes read and written.
45 New L<nbdkit-nocache-filter(1)> which disables cache requests, used to
46 determine how effective they are (Eric Blake).
48 New L<nbdkit-noparallel-filter(1)> which can be used to override the
49 plugin’s own choice of thread model.  Used to determine how the thread
50 model affects performance, or to serialize plugins if required (Eric
51 Blake).
53 New L<nbdkit-cacheextents-filter(1)> to cache extents requests,
54 especially useful with VDDK which has a slow implementation of extents
55 (Martin Kletzander).
57 In L<nbdkit-full-plugin(1)>, L<nbdkit-memory-plugin(1)>,
58 L<nbdkit-null-plugin(1)>, L<nbdkit-pattern-plugin(1)> and
59 L<nbdkit-random-plugin(1)>, the C<size=> prefix can be omitted, ie:
60 S<C<nbdkit memory 1G>> (instead of C<size=1G>).
62 L<nbdkit-nbd-plugin(1)> has multiple enhancements (all added by Eric
63 Blake):
65 =over 4
67 =item *
69 It may be built using libnbd instead of constructing raw NBD packets.
71 =item *
73 C<NBD_OPT_GO> is supported.
75 =item *
77 Add structured reads.
79 =item *
81 Implement C<NBD_CMD_BLOCK_STATUS>.
83 =item *
85 Supports TCP sockets.
87 =item *
89 Forwards C<NBD_CMD_CACHE>.
91 =item *
93 Retry connections.
95 =item *
97 Shared connections.
99 =item *
101 Magic C<uri> parameter.
103 =item *
105 TLS support.
107 =back
109 L<nbdkit-vddk-plugin(1)> now reports hole extents correctly when using
110 the C<single-link> flag (Martin Kletzander).
112 L<nbdkit-cache-filter(1)> and L<nbdkit-cow-filter(1)> now avoid
113 copying data through a bounce buffer when it is already sufficiently
114 aligned (Eric Blake).
116 Filters (such as L<nbdkit-delay-filter(1)> and
117 L<nbdkit-rate-filter(1)>) which sleep no longer cause long delays when
118 the server is shut down (Eric Blake).
120 Multiple fixes to L<nbdkit-rust-plugin(1)> (Martin Kletzander).
122 Multiple enhancements and clean ups to the test suite which should
123 make tests better and more reliable.
125 OCaml plugins can now use C<parse_size>, C<parse_bool>,
126 C<read_password> calls, and there is also a new example plugin.
128 On platforms which lack atomic C<O_CLOEXEC> support the most
129 serialized thread model is always selected to avoid leaking file
130 descriptors (Eric Blake).
132 =head1 SEE ALSO
134 L<nbdkit(1)>,
135 L<https://www.redhat.com/archives/libguestfs/2019-August/msg00375.html>.
137 =head1 AUTHORS
139 Eric Blake
141 Richard W.M. Jones
143 =head1 COPYRIGHT
145 Copyright Red Hat