**Describe the bug**
Using `ALTER LIVE VIEW view REFRESH` results in an exception.

**How to reproduce**
* Connected to ClickHouse server version 20.8.1 revision 54438
* `CREATE TABLE` statements for all tables involved
```
clicktest :) SHOW CREATE table0

SHOW CREATE TABLE table0

┌─statement─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│ CREATE TABLE default.table0
(
    `d` Date,
    `a` String,
    `b` UInt8,
    `x` String,
    `y` Int8
)
ENGINE = MergeTree()
ORDER BY d
SETTINGS index_granularity = 8192 │
└───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘

1 rows in set. Elapsed: 0.006 sec.
```
* Queries to run that lead to unexpected result
```
ClickHouse client version 20.8.1.4447 (official build).
Connecting to localhost:9000 as user default.
Connected to ClickHouse server version 20.8.1 revision 54438.

clicktest :) SET allow_experimental_live_view=1

SET allow_experimental_live_view = 1

Ok.

0 rows in set. Elapsed: 0.003 sec.

clicktest :) CREATE LIVE VIEW live1 AS SELECT * FROM table0

CREATE LIVE VIEW live1 AS
SELECT *
FROM table0

Ok.

0 rows in set. Elapsed: 0.008 sec.

clicktest :) ALTER LIVE VIEW live1 REFRESH

ALTER LIVE VIEW live1
    REFRESH

Received exception from server (version 20.8.1):
Code: 49. DB::Exception: Received from localhost:9000. DB::Exception: RWLockImpl::getLock(): RWLock is already locked in exclusive mode.

0 rows in set. Elapsed: 0.005 sec.
```
**Expected behavior**
A clear and concise description of what you expected to happen.


/* Copyright (c) 2018 BlackBerry Limited
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License. */
#pragma once
#include <ext/shared_ptr_helper.h>
#include <Storages/IStorage.h>
#include <mutex>
#include <condition_variable>
namespace DB
{
struct BlocksMetadata
{
    String hash;
    UInt64 version;
};
struct MergeableBlocks
{
    BlocksPtrs blocks;
    Block sample_block;
};
class IAST;