[ 
https://issues.apache.org/jira/browse/IGNITE-28736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18101339#comment-18101339
 ] 

Ignite TC Bot commented on IGNITE-28736:
----------------------------------------

{panel:title=Branch: [pull/13411/head] Base: [master] : No blockers 
found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel}
{panel:title=Branch: [pull/13411/head] Base: [master] : New Tests 
(9)|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}
{color:#00008b}Thin Client: Java{color} [[tests 
1|https://ci2.ignite.apache.org/viewLog.html?buildId=9243067]]
* {color:#013220}ClientTestSuite: IgniteBinaryTest.testBinaryTypeFieldOrder - 
PASSED{color}

{color:#00008b}Binary Objects{color} [[tests 
8|https://ci2.ignite.apache.org/viewLog.html?buildId=9242983]]
* {color:#013220}IgniteBinaryObjectsTestSuite: 
BinaryMarshallerSelfTest.testMetadataFieldOrderAfterSerialization[useBinaryArrays
 = true] - PASSED{color}
* {color:#013220}IgniteBinaryObjectsTestSuite: 
BinaryMarshallerNonCompactSelfTest.testMetadataFieldOrderAfterSerialization[useBinaryArrays
 = true] - PASSED{color}
* {color:#013220}IgniteBinaryObjectsTestSuite: 
BinaryMarshallerNonCompactSelfTest.testFieldOrderByBinarylizable[useBinaryArrays
 = true] - PASSED{color}
* {color:#013220}IgniteBinaryObjectsTestSuite: 
BinaryMarshallerNonCompactSelfTest.testMetadataFieldOrderAfterSerialization[useBinaryArrays
 = false] - PASSED{color}
* {color:#013220}IgniteBinaryObjectsTestSuite: 
BinaryMarshallerNonCompactSelfTest.testFieldOrderByBinarylizable[useBinaryArrays
 = false] - PASSED{color}
* {color:#013220}IgniteBinaryObjectsTestSuite: 
BinaryMarshallerSelfTest.testFieldOrderByBinarylizable[useBinaryArrays = true] 
- PASSED{color}
* {color:#013220}IgniteBinaryObjectsTestSuite: 
BinaryMarshallerSelfTest.testMetadataFieldOrderAfterSerialization[useBinaryArrays
 = false] - PASSED{color}
* {color:#013220}IgniteBinaryObjectsTestSuite: 
BinaryMarshallerSelfTest.testFieldOrderByBinarylizable[useBinaryArrays = false] 
- PASSED{color}

{panel}
[TeamCity *--> Run :: All* 
Results|https://ci2.ignite.apache.org/viewLog.html?buildId=9243124&buildTypeId=IgniteTests24Java8_RunAll]
{color:#ffffff}tcbot-analysis-comment chainBuildId=9243124 
rerunBuildIds=none{color}

> Preserve initial order of fields in BinaryType#fieldNames()
> -----------------------------------------------------------
>
>                 Key: IGNITE-28736
>                 URL: https://issues.apache.org/jira/browse/IGNITE-28736
>             Project: Ignite
>          Issue Type: Improvement
>          Components: binary
>            Reporter: Ravil Zakirov
>            Assignee: Nikita Amelchev
>            Priority: Minor
>              Labels: ise
>             Fix For: 2.19
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> h3. Description
>  
> Currently, the method `BinaryType#fieldNames()` returns a 
> `Collection<String>` without any guarantee of field order preservation. In 
> practice, the order of fields as defined in the original class or schema is 
> often lost, as the underlying implementation may use unordered collections 
> (e.g., `HashSet`).
> However, in various use cases — such as data export, schema introspection, 
> debugging, or integration with external systems — it is important to retain 
> the **original declaration order** of fields. This helps maintain 
> predictability and consistency, especially when field order has semantic 
> meaning (e.g., in CSV/JSON serialization, UI rendering, or compatibility with 
> other binary formats).
> h3. Suggested Implementation
>  
> Ensure that during metadata registration in `BinaryTypeImpl` (or equivalent), 
> field names are stored in a `LinkedHashSet` to preserve insertion order, and 
> return them in that same order.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to