Skip to content

[BUG] block()/blockFirst()/blockLast() are blocking, which is not supported in thread default-nioEventLoopGroup-1 for BlobClientBase.exists() #42268

Open
@loicmathieu

Description

@loicmathieu

Describe the bug

Exception when calling BlobClientBase.exists().

Exception or Stack Trace

java.lang.IllegalStateException: block()/blockFirst()/blockLast() are blocking, which is not supported in thread default-nioEventLoopGroup-1-5
	at reactor.core.publisher.BlockingSingleSubscriber.blockingGet(BlockingSingleSubscriber.java:87)
	at reactor.core.publisher.Mono.block(Mono.java:1779)
	at com.azure.storage.common.implementation.StorageImplUtils.blockWithOptionalTimeout(StorageImplUtils.java:146)
	at com.azure.storage.blob.specialized.BlobClientBase.existsWithResponse(BlobClientBase.java:501)
	at com.azure.storage.blob.specialized.BlobClientBase.exists(BlobClientBase.java:479)

To Reproduce
Using the following code in a Micronaut controller with file upload.
The error shows up only for files of a certain size (more than 1MB).

Code Snippet

    private boolean exists(String path) {
        try {
            BlobClient blobClient = this.blobContainerClient.getBlobClient(path);
            return blobClient.exists();
        } catch (BlobStorageException e) {
            return false;
        }
    }

Setup (please complete the following information):

  • OS: Linux 6.8.0-45-generic update version number for official 0.2.1 release #45-Ubuntu SMP PREEMPT_DYNAMIC Fri Aug 30 12:02:04 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
  • Library/Libraries: com.azure:azure-storage-blob:12.27.1
  • Java version: 21
  • Frameworks: Micronaut 4.6.3

Information Checklist
Kindly make sure that you have added all the following information above and checkoff the required fields otherwise we will treat the issuer as an incomplete report

  • Bug Description Added
  • Repro Steps Added
  • Setup information Added

Metadata

Metadata

Assignees

Labels

ClientThis issue points to a problem in the data-plane of the library.StorageStorage Service (Queues, Blobs, Files)customer-reportedIssues that are reported by GitHub users external to the Azure organization.needs-team-attentionWorkflow: This issue needs attention from Azure service team or SDK teamquestionThe issue doesn't require a change to the product in order to be resolved. Most issues start as that

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions