mapleFU commented on code in PR #47185:
URL: https://github.com/apache/arrow/pull/47185#discussion_r2300791249


##########
cpp/src/arrow/array/builder_binary.cc:
##########
@@ -162,7 +164,13 @@ void FixedSizeBinaryBuilder::Reset() {
 
 Status FixedSizeBinaryBuilder::Resize(int64_t capacity) {
   RETURN_NOT_OK(CheckCapacity(capacity));
-  RETURN_NOT_OK(byte_builder_.Resize(capacity * byte_width_));
+  int64_t dest_capacity_bytes;

Review Comment:
   I suggest we need this change, I add cout and run fuzzing and found there're 
so many error message now:
   
   ```
   Status FixedSizeBinaryBuilder::Resize(int64_t capacity) {
     RETURN_NOT_OK(CheckCapacity(capacity));
     int64_t dest_capacity_bytes;
     if (ARROW_PREDICT_FALSE(
             MultiplyWithOverflow(capacity, byte_width_, 
&dest_capacity_bytes))) {
       std::cout << "Resize: capacity overflows (requested: " << capacity <<
                                    ", byte_width: " << byte_width_ << 
std::endl;
       return Status::CapacityError("Resize: capacity overflows (requested: ", 
capacity,
                                    ", byte_width: ", byte_width_, ")");
     }
     RETURN_NOT_OK(byte_builder_.Resize(dest_capacity_bytes));
     return ArrayBuilder::Resize(capacity);
   }
   ```



-- 
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