final String readUtf8(int length) {
    if (length == 0) return ""; // ex error tag with no value
    require(length);
    if (length > RecyclableBuffers.SHORT_STRING_LENGTH) return doReadUtf8(length);

    // Speculatively assume all 7-bit ASCII characters.. common in normal tags and names
    char[] buffer = RecyclableBuffers.shortStringBuffer();
    if (tryReadAscii(buffer, length)) {
      return new String(buffer, 0, length);
    }
    return doReadUtf8(length);
  }
only use when you've already ensured the length you need is available
zipkin/src/main/java/zipkin2/internal/ReadBuffer.java