Skip to content

Commit 1591705

Browse files
authored
Merge pull request #116 from Wondertan/cip-19-john-review
cip-19: adressing review from @adlerjohn
2 parents 0b8371b + 14f513c commit 1591705

File tree

1 file changed

+11
-10
lines changed

1 file changed

+11
-10
lines changed

cips/cip-19.md

+11-10
Original file line numberDiff line numberDiff line change
@@ -111,14 +111,15 @@ container MAY define multiple serialization formats.
111111
#### Share Identifiers
112112

113113
Share identifiers identify [share containers](#share-containers). Identifiers are not collision-resistant and there MAY
114-
be different identifiers referencing the same container.
114+
be different identifiers referencing the same container. There SHOULD NOT be multiple containers identified by the same
115+
identifier.
115116

116117
Identifiers MAY embed each other to narrow down the scope of needed shares. For example, [SampleID](#sampleid) embeds
117118
[RowID](#rowid) as every sample lay on a particular row.
118119

119120
##### Serialization for Share Identifiers
120121

121-
Share identifiers SHOULD be serialized by concatenating big-endian representations of fields in the order defined by
122+
Share identifiers MUST be serialized by concatenating big-endian representations of fields in the order defined by
122123
their respective formatting section. Serialized identifiers SHOULD have constant and predetermined lengths in bytes.
123124

124125
#### Versioning
@@ -145,14 +146,14 @@ EdsID {
145146

146147
The fields with validity rules that form EdsID are:
147148

148-
**Height**: A uint64 representing the chain height with the data square. It MUST be bigger than zero.
149+
**Height**: A uint64 representing the chain height with the data square. It MUST be greater than zero.
149150

150151
[Serialized](#serialization-for-share-identifiers) EdsID MUST have a length of 8 bytes.
151152

152153
#### Eds Container
153154

154-
Eds containers encapsulate the [DataSquare][square]. Internally, they only keep the original data(1st quadrant) of the
155-
EDS with redundant data(2nd, 3rd and 4th quadrants) computable from the original data.
155+
Eds containers encapsulate the [DataSquare][square]. Internally, they only keep the original data (1st quadrant) of the
156+
EDS with redundant data (2nd, 3rd and 4th quadrants) computable from the original data.
156157

157158
Eds containers MUST be formatted by serializing ODS left-to-right share-by-share in the row-major order.
158159

@@ -177,14 +178,14 @@ The fields with validity rules that form RowID are:
177178
[**EdsID**](#edsid): A EdsID of the Row Container. It MUST follow [EdsID](#edsid) formatting and field validity rules.
178179

179180
**RowIndex**: An uint16 representing row index points to a particular row. The 16 bit limit fits data squares up to 2TB.
180-
It MUST not exceed the number of Row roots in [DAH][dah].
181+
It MUST not exceed the number of [DAH][dah] Row roots reduced by one.
181182

182183
[Serialized](#serialization-for-share-identifiers) RowID MUST have a length of 10 bytes.
183184

184185
#### Row Container
185186

186-
Row containers encapsulate the rows of the [DataSquare][square]. Internally, they only keep the left(original) half of
187-
the row with right(redundant) half recomputable from the left half.
187+
Row containers encapsulate the rows of the [DataSquare][square]. Internally, they only keep the left (original) half of
188+
the row with right (redundant) half recomputable from the left half.
188189

189190
Row containers are protobuf formatted using the following proto3 schema:
190191

@@ -224,7 +225,7 @@ The fields with validity rules that form SampleID are:
224225
[**RowID**](#rowid): A RowID of the sample. It MUST follow [RowID](#rowid) formatting and field validity rules.
225226

226227
**ColumnIndex**: A uint16 representing the column index of the sampled share; in other words, the share index in the row.
227-
The 16 bit limit fits data squares up to 2TB. It MUST stay within the number of Column roots in [DAH][dah].
228+
The 16 bit limit fits data squares up to 2TB. It MUST stay within the number of [DAH][dah] Column roots reduced by one.
228229

229230
[Serialized](#serialization-for-share-identifiers) SampleID MUST have a length of 12 bytes.
230231

@@ -371,7 +372,7 @@ should be extended whenever any new share identifier or new version of an existi
371372
| DataID | 0x7821 | 0x7820 |
372373

373374
*EdsID and container are excluded from Bitswap composition. Bitswap is limited to messages of size 256kb, while EDSes are
374-
expected to be bigger. Also, its more efficient to parallelize EDS requesting by rows.
375+
expected to be bigger. Also, it is more efficient to parallelize EDS requesting by rows.
375376

376377
## Backwards Compatibility
377378

0 commit comments

Comments
 (0)