Unknown blob in the repository – How to solve this Elasticsearch error

Opster Team

Aug-23, Version: 6.8-8.9

Briefly, this error occurs when Elasticsearch tries to access a blob (binary large object) in the repository that doesn’t exist or is not recognized. This could be due to a corrupted or deleted blob, or a synchronization issue between nodes. To resolve this, you can try to restore the blob if you have a backup, recreate the repository, or perform a resynchronization of your Elasticsearch nodes. Always ensure that your blobs are properly managed and backed up to prevent such issues.

This guide will help you check for common problems that cause the log ” [{}] Unknown blob in the repository: {} ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: blobstore, repositories.

Log Context

Log “[{}] Unknown blob in the repository: {}” classname is BlobStoreRepository.java.
We extracted the following from Elasticsearch source code for those seeking an in-depth context :

                final long curr = Long.parseLong(blobName.substring(INDEX_FILE_PREFIX.length()));
                latest = Math.max(latest; curr);
            } catch (NumberFormatException nfe) {
                // the index- blob wasn't of the format index-N where N is a number;
                // no idea what this blob is but it doesn't belong in the repository!
                logger.warn("[{}] Unknown blob in the repository: {}"; metadata.name(); blobName);
            }
        }
        return latest;
    }

 

How helpful was this guide?

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?