You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@arrow.apache.org by "jiaqizho (via GitHub)" <gi...@apache.org> on 2026/01/13 07:20:39 UTC
[PR] [C++][FS] Remove invalid DCHECK when allow_delayed_open is true [arrow]
jiaqizho opened a new pull request, #48836:
URL: https://github.com/apache/arrow/pull/48836
Thanks for opening a pull request!
If this is your first pull request you can find detailed information on how to contribute here:
* [New Contributor's Guide](https://arrow.apache.org/docs/dev/developers/guide/step_by_step/pr_lifecycle.html#reviews-and-merge-of-the-pull-request)
* [Contributing Overview](https://arrow.apache.org/docs/dev/developers/overview.html)
Please remove this line and the above text before creating your pull request.
### Rationale for this change
C++ build with DEBUG mode.
``` C++
std::string test_data(11 * 1024 * 1024, 'A'); // 11MB which bigger than kMultiPartUploadThresholdSize(10 MB)
ARROW_ASSIGN_OR_RAISE(auto arrowfs, S3FileSystem::Make(...)); // with allow_delayed_open=true
auto write_status = output_stream->Write(test_data.data()); // <--- got core here
```
Core
...
frame #7: 0x0000000119029565 arrow::util::ArrowLog::~ArrowLog(this=0x00007ff7bfefb410) at logging.cc:253:23
frame #8: 0x0000000112fd0591 arrow::fs::ObjectOutputStream::CreateMultipartUpload(this=0x000061300000f018) at s3fs.cc:1652:5
frame #9: 0x000000011301ceb7 arrow::fs::ObjectOutputStream::UploadPart(this=0x000061300000f018, data=0x0000000108001800, nbytes=10485760, owned_buffer=nullptr) at s3fs.cc:2057:7
frame #10: 0x000000011301bff4 arrow::fs::ObjectOutputStream::DoWrite(this=0x000061300000f018, data=0x0000000108001800, nbytes=11534336, owned_buffer=nullptr) at s3fs.cc:1864:7
frame #11: 0x00000001130194aa arrow::fs::ObjectOutputStream::Write(this=0x000061300000f018, data=0x0000000108001800, nbytes=11534336) at s3fs.cc:1828:75
frame #12: 0x0000000118e862c6 arrow::io::Writable::Write(this=0x000061300000f018, data="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"...) at interfaces.cc:199:10
...
In `ShouldBeMultipartUpload()`. The `pos_` is 0, because nothing written, `allow_delayed_open_` is true, DCHECK won't be success in this case.
### What changes are included in this PR?
Remove invalid DCHECK when allow_delayed_open is true
### Are these changes tested?
Yes
### Are there any user-facing changes?
Nope
**This PR includes breaking changes to public APIs.** (If there are any breaking changes to public APIs, please explain which changes are breaking. If not, you can remove this.)
**This PR contains a "Critical Fix".** (If the changes fix either (a) a security vulnerability, (b) a bug that caused incorrect or invalid data to be produced, or (c) a bug that causes a crash (even when the API contract is upheld), please provide explanation. If not, you can remove this.)
--
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-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] GH-48837: [C++] Remove invalid DCHECK when allow_delayed_open is true [arrow]
Posted by "jiaqizho (via GitHub)" <gi...@apache.org>.
jiaqizho commented on PR #48836:
URL: https://github.com/apache/arrow/pull/48836#issuecomment-3757802761
@lidavidm @westonpace @wgtmac PTAL
--
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-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] GH-48837: [C++] Remove invalid DCHECK when allow_delayed_open is true [arrow]
Posted by "hrishikeshh-shinde (via GitHub)" <gi...@apache.org>.
hrishikeshh-shinde commented on PR #48836:
URL: https://github.com/apache/arrow/pull/48836#issuecomment-4288676473
> > The DCHECK assumes pos_ has already been updated before CreateMultipartUpload() is called, but with allow_delayed_open the first write can trigger a multipart upload while pos_ is still 0. Removing the DCHECK fixes the crash. The MATLAB CI failure looks unrelated to this one-line change.
>
>
>
> @hrishikeshh-shinde would u like help to retrigger the CI? thanks
>
>
I think only members can trigger the CI
--
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-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] [C++][FS] Remove invalid DCHECK when allow_delayed_open is true [arrow]
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #48836:
URL: https://github.com/apache/arrow/pull/48836#issuecomment-3742457686
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
Thanks for opening a pull request!
If this is not a [minor PR](https://github.com/apache/arrow/blob/main/CONTRIBUTING.md#Minor-Fixes). Could you open an issue for this pull request on GitHub? https://github.com/apache/arrow/issues/new/choose
Opening GitHub issues ahead of time contributes to the [Openness](http://theapacheway.com/open/#:~:text=Openness%20allows%20new%20users%20the,must%20happen%20in%20the%20open.) of the Apache Arrow project.
Then could you also rename the pull request title in the following format?
GH-${GITHUB_ISSUE_ID}: [${COMPONENT}] ${SUMMARY}
or
MINOR: [${COMPONENT}] ${SUMMARY}
See also:
* [Other pull requests](https://github.com/apache/arrow/pulls/)
* [Contribution Guidelines - Contributing Overview](https://arrow.apache.org/docs/developers/overview.html)
--
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-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] GH-48837: [C++] Remove invalid DCHECK when allow_delayed_open is true [arrow]
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #48836:
URL: https://github.com/apache/arrow/pull/48836#issuecomment-3742554433
:warning: GitHub issue #48837 **has been automatically assigned in GitHub** to PR creator.
--
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-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] GH-48837: [C++] Remove invalid DCHECK when allow_delayed_open is true [arrow]
Posted by "jiaqizho (via GitHub)" <gi...@apache.org>.
jiaqizho commented on PR #48836:
URL: https://github.com/apache/arrow/pull/48836#issuecomment-4285773322
> The DCHECK assumes pos_ has already been updated before CreateMultipartUpload() is called, but with allow_delayed_open the first write can trigger a multipart upload while pos_ is still 0. Removing the DCHECK fixes the crash. The MATLAB CI failure looks unrelated to this one-line change.
@hrishikeshh-shinde would u like help to retrigger the CI? thanks
--
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-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org