Copilot commented on code in PR #7366:
URL: https://github.com/apache/arrow-rs/pull/7366#discussion_r2022852929


##########
arrow-array/src/array/struct_array.rs:
##########
@@ -294,10 +294,34 @@ impl StructArray {
 
 impl From<ArrayData> for StructArray {
     fn from(data: ArrayData) -> Self {
+        let parent_offset = data.offset();
+        let parent_len = data.len();
+
         let fields = data
             .child_data()
             .iter()
-            .map(|cd| make_array(cd.clone()))
+            .map(|cd| {
+                let child_offset = cd.offset();
+                let child_len = cd.len();
+                assert!(
+                    child_len >= parent_len + parent_offset,
+                    "struct array has offset {} and len {} but child array 
only has {} items",

Review Comment:
   The assertion does not account for the child's existing offset. To correctly 
validate the available child array length, consider changing the condition to 
verify that child_len is at least child_offset + parent_offset + parent_len.
   ```suggestion
                       child_len >= child_offset + parent_offset + parent_len,
                       "struct array has offset {} and len {} but child array 
only has {} items",
                       child_offset,
   ```



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscr...@arrow.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to