If you're building a string in Java (like in a loop), stop using the + operator! The String class is immutable (it can't be changed), so every time you use +, Java creates a brand new string object.
We are migrating blob component from old SDK azure-storage-5.5.0 to new SDK azure-storage-blob-12.10.0. As per Java docs - InputStream.available() can provide estimate size only which is not reliable.