This issue happens on production of one user that enabled Sentry:

![Screenshot_20210303_002028](https://user-images.githubusercontent.com/18581488/109716945-7f9a1200-7bb6-11eb-8cf4-1080ad535d18.png)

Build id: 49938CCB63EE2A4E16CF0528307EE15F08469219.
guard->releaseTableLock();
        return typeid_cast<DatabaseReplicated *>(database.get())->tryEnqueueReplicatedDDL(query_ptr, context);
    }
    if (database->isDictionaryExist(dictionary_name))
    {
        
        if (create.if_not_exists)
            return {};
        else
            throw Exception(
                "Dictionary " + database_name + "." + dictionary_name + " already exists.", ErrorCodes::DICTIONARY_ALREADY_EXISTS);
    }
    if (create.attach)
    {
        auto query = DatabaseCatalog::instance().getDatabase(database_name)->getCreateDictionaryQuery(dictionary_name);
        create = query->as<ASTCreateQuery &>();
        create.attach = true;
    }
    assertOrSetUUID(create, database);
    if (create.attach)
    {
        auto config = getDictionaryConfigurationFromAST(create, context);
        auto modification_time = database->getObjectMetadataModificationTime(dictionary_name);
        database->attachDictionary(dictionary_name, DictionaryAttachInfo{query_ptr, config, modification_time});
    }
    else
        database->createDictionary(context, dictionary_name, query_ptr);
    return {};
}
void InterpreterCreateQuery::prepareOnClusterQuery(ASTCreateQuery & create, const Context & context, const String & cluster_name)