|
8 | 8 | msgstr "" |
9 | 9 | "Project-Id-Version: Tarantool 3.0\n" |
10 | 10 | "Report-Msgid-Bugs-To: \n" |
11 | | -"POT-Creation-Date: 2023-11-17 14:22+0000\n" |
| 11 | +"POT-Creation-Date: 2023-11-21 08:10+0000\n" |
12 | 12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" |
13 | 13 | "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" |
14 | 14 | "Language-Team: LANGUAGE <LL@li.org>\n" |
@@ -53,7 +53,7 @@ msgid "The header is an MP_MAP. It may contain, in any order:" |
53 | 53 | msgstr "" |
54 | 54 |
|
55 | 55 | #: ../../doc/dev_guide/internals/iproto/format.rst:38 |
56 | | -msgid "Both the request and response make use of the :ref:`IPROTO_REQUEST_TYPE <internals-iproto-keys-request_type>` key. It denotes the type of the packet." |
| 56 | +msgid "Both the request and response use the :ref:`IPROTO_REQUEST_TYPE <internals-iproto-keys-request_type>` key. It denotes the type of the packet." |
57 | 57 | msgstr "" |
58 | 58 |
|
59 | 59 | #: ../../doc/dev_guide/internals/iproto/format.rst:41 |
@@ -85,73 +85,73 @@ msgid "To see how Tarantool decodes the header, have a look at file `net_box.c < |
85 | 85 | msgstr "" |
86 | 86 |
|
87 | 87 | #: ../../doc/dev_guide/internals/iproto/format.rst:63 |
88 | | -msgid "For example, in a successful response to ``box.space:select()``, the IPROTO_REQUEST_TYPE value will be 0 = ``IPROTO_OK`` and the array will have all the tuples of the result." |
| 88 | +msgid "For example, in a successful response to ``box.space:select()``, the IPROTO_REQUEST_TYPE value is 0 = ``IPROTO_OK`` and the array has all the tuples of the result." |
89 | 89 | msgstr "" |
90 | 90 |
|
91 | 91 | #: ../../doc/dev_guide/internals/iproto/format.rst:67 |
92 | 92 | msgid "Read the source code file `net_box.c <https://github.com/tarantool/tarantool/blob/master/src/box/lua/net_box.c>`__ where the function ``decode_metadata_optional`` is an example of how Tarantool itself decodes extra items." |
93 | 93 | msgstr "" |
94 | 94 |
|
95 | | -#: ../../doc/dev_guide/internals/iproto/format.rst:72 |
| 95 | +#: ../../doc/dev_guide/internals/iproto/format.rst:74 |
96 | 96 | msgid "Body" |
97 | 97 | msgstr "" |
98 | 98 |
|
99 | | -#: ../../doc/dev_guide/internals/iproto/format.rst:74 |
| 99 | +#: ../../doc/dev_guide/internals/iproto/format.rst:76 |
100 | 100 | msgid "The body is an MP_MAP. Maximal iproto package body length is 2 GiB." |
101 | 101 | msgstr "" |
102 | 102 |
|
103 | | -#: ../../doc/dev_guide/internals/iproto/format.rst:76 |
104 | | -msgid "The body has the details of the request or response. In a request, it can also be absent or be an empty map. Both these states will be interpreted equally. Responses will contain the body anyway even for an :ref:`IPROTO_PING <box_protocol-ping>` request, where it will be an empty MP_MAP." |
| 103 | +#: ../../doc/dev_guide/internals/iproto/format.rst:78 |
| 104 | +msgid "The body has the details of the request or response. In a request, it can also be absent or be an empty map. Both these states are interpreted equally. Responses contain the body anyway even for an :ref:`IPROTO_PING <box_protocol-ping>` request, where it is an empty MP_MAP." |
105 | 105 | msgstr "" |
106 | 106 |
|
107 | | -#: ../../doc/dev_guide/internals/iproto/format.rst:81 |
| 107 | +#: ../../doc/dev_guide/internals/iproto/format.rst:83 |
108 | 108 | msgid "A lot of responses contain the IPROTO_DATA map:" |
109 | 109 | msgstr "" |
110 | 110 |
|
111 | | -#: ../../doc/dev_guide/internals/iproto/format.rst:86 |
| 111 | +#: ../../doc/dev_guide/internals/iproto/format.rst:88 |
112 | 112 | msgid "For most data-access requests (:ref:`IPROTO_SELECT <box_protocol-select>`, :ref:`IPROTO_INSERT <box_protocol-insert>`, :ref:`IPROTO_DELETE <box_protocol-delete>`, etc.) the body is an IPROTO_DATA map with an array of tuples that contain an array of fields." |
113 | 113 | msgstr "" |
114 | 114 |
|
115 | | -#: ../../doc/dev_guide/internals/iproto/format.rst:90 |
| 115 | +#: ../../doc/dev_guide/internals/iproto/format.rst:92 |
116 | 116 | msgid "IPROTO_DATA is what we get with net_box and :ref:`Module buffer <buffer-module>` so if we were using net_box we could decode with :ref:`msgpack.decode_unchecked() <msgpack-decode_unchecked_string>`, or we could convert to a string with :samp:`ffi.string({pointer},{length})`. The :ref:`pickle.unpack() <pickle-unpack>` function might also be helpful." |
117 | 117 | msgstr "" |
118 | 118 |
|
119 | | -#: ../../doc/dev_guide/internals/iproto/format.rst:98 |
| 119 | +#: ../../doc/dev_guide/internals/iproto/format.rst:100 |
120 | 120 | msgid "For SQL-specific requests and responses, the body is a bit different. :ref:`Learn more <internals-iproto-sql>` about this type of packets." |
121 | 121 | msgstr "" |
122 | 122 |
|
123 | | -#: ../../doc/dev_guide/internals/iproto/format.rst:104 |
| 123 | +#: ../../doc/dev_guide/internals/iproto/format.rst:106 |
124 | 124 | msgid "Error responses" |
125 | 125 | msgstr "" |
126 | 126 |
|
127 | | -#: ../../doc/dev_guide/internals/iproto/format.rst:106 |
| 127 | +#: ../../doc/dev_guide/internals/iproto/format.rst:108 |
128 | 128 | msgid "Instead of :ref:`IPROTO_OK <internals-iproto-ok>`, an error response header has IPROTO_REQUEST_TYPE = :ref:`IPROTO_TYPE_ERROR <internals-iproto-type_error>`. Its code is ``0x8XXX``, where ``XXX`` is the error code -- a value in `src/box/errcode.h <https://github.com/tarantool/tarantool/blob/master/src/box/errcode.h>`_. ``src/box/errcode.h`` also has some convenience macros which define hexadecimal constants for return codes." |
129 | 129 | msgstr "" |
130 | 130 |
|
131 | | -#: ../../doc/dev_guide/internals/iproto/format.rst:113 |
| 131 | +#: ../../doc/dev_guide/internals/iproto/format.rst:115 |
132 | 132 | msgid "The error response body is a map that contains two keys: :ref:`IPROTO_ERROR <internals-iproto-keys-error>` and :ref:`IPROTO_ERROR_24 <internals-iproto-keys-error>`. While IPROTO_ERROR contains an MP_MAP value, IPROTO_ERROR_24 contains a string. The two keys are provided to accommodate clients with older and newer Tarantool versions." |
133 | 133 | msgstr "" |
134 | 134 |
|
135 | | -#: ../../doc/dev_guide/internals/iproto/format.rst:122 |
| 135 | +#: ../../doc/dev_guide/internals/iproto/format.rst:124 |
136 | 136 | msgid "Error responses before 2.4.1" |
137 | 137 | msgstr "" |
138 | 138 |
|
139 | | -#: ../../doc/dev_guide/internals/iproto/format.rst:124 |
| 139 | +#: ../../doc/dev_guide/internals/iproto/format.rst:126 |
140 | 140 | msgid "Before Tarantool v. :doc:`2.4.1 </release/2.4.1>`, the key IPROTO_ERROR contained a string and was identical to the current IPROTO_ERROR_24 key." |
141 | 141 | msgstr "" |
142 | 142 |
|
143 | | -#: ../../doc/dev_guide/internals/iproto/format.rst:127 |
| 143 | +#: ../../doc/dev_guide/internals/iproto/format.rst:129 |
144 | 144 | msgid "Let's consider an example. This is the fifth message, and the request was to create a duplicate space with ``conn:eval([[box.schema.space.create('_space');]])``. The unsuccessful response looks like this:" |
145 | 145 | msgstr "" |
146 | 146 |
|
147 | | -#: ../../doc/dev_guide/internals/iproto/format.rst:134 |
| 147 | +#: ../../doc/dev_guide/internals/iproto/format.rst:136 |
148 | 148 | msgid "The tutorial :ref:`Understanding the binary protocol <box_protocol-illustration>` shows actual byte codes of the response to the IPROTO_EVAL message." |
149 | 149 | msgstr "" |
150 | 150 |
|
151 | | -#: ../../doc/dev_guide/internals/iproto/format.rst:137 |
| 151 | +#: ../../doc/dev_guide/internals/iproto/format.rst:139 |
152 | 152 | msgid "Looking in `errcode.h <https://github.com/tarantool/tarantool/blob/master/src/box/errcode.h>`__, we find that the error code ``0x0a`` (decimal 10) is ER_SPACE_EXISTS, and the string associated with ER_SPACE_EXISTS is \"Space '%s' already exists\"." |
153 | 153 | msgstr "" |
154 | 154 |
|
155 | | -#: ../../doc/dev_guide/internals/iproto/format.rst:142 |
| 155 | +#: ../../doc/dev_guide/internals/iproto/format.rst:144 |
156 | 156 | msgid "Since version :doc:`2.4.1 </release/2.4.1>`, responses for errors have extra information following what was described above. This extra information is given via the MP_ERROR extension type. See details in the :ref:`MessagePack extensions <msgpack_ext-error>` section." |
157 | 157 | msgstr "" |
0 commit comments