<blockquote>
<p>By &quot;linear, no-fork&quot; blockchain does that mean throwing away orphan/stale blocks (blocks that were successfully mined but didn't make it into the blockchain due to competing mined blocks)?</p>
</blockquote>
<p>Yes.</p>
<blockquote>
<p>What use cases would make use of this linearize script?</p>
</blockquote>
<p>The script was used to construct the <code>bootstrap.dat</code> file that was previously used to quickly sync new nodes. This method of node initialization has been deprecated and remove as headers-first syncing is faster.</p>

CC BY-SA 4.0
2020-10-09T13:29:48.293Z
Thanks for this Andrew. Is there any reason for maintaining it then and not just deleting it from the Core repo? Do we know if anyone is using it for anything else? I wonder if we should at least add a comment on the README that this isn't used for anything (as far as we know).
Michael Folkson
CC BY-SA 4.0
2020-10-09T13:39:03.453Z
While the autoloading of the bootstrap.dat file has been removed, it is still possible to use such linearized files to initialize a node in this manner. So the script is still useful in constructing those files.
Ava Chow
CC BY-SA 4.0
2020-10-09T13:25:38.093Z
2020-10-09T13:25:38.093Z
Ava Chow
<p>What does the Bitcoin Core linearize script do? The Bitcoin Core <a href="https://github.com/bitcoin/bitcoin/tree/master/contrib/linearize" rel="nofollow noreferrer">docs</a> state it will:</p>
<blockquote>
<p>Construct a linear, no-fork, best version of the Bitcoin blockchain.</p>
</blockquote>
<p>By &quot;linear, no-fork&quot; blockchain does that mean throwing away orphan/stale blocks (blocks that were successfully mined but didn't make it into the blockchain due to competing mined blocks)?</p>
<p>What use cases would make use of this linearize script?</p>

<bitcoin-core-development>
What does the Bitcoin Core linearize script do? What use cases would make use of it?
Michael Folkson
# What does the Bitcoin Core linearize script do? What use cases would make use of it?

(Asked by: username_0 on 2020-10-09)

What does the Bitcoin Core linearize script do? The Bitcoin Core [docs](https://github.com/bitcoin/bitcoin/tree/master/contrib/linearize) state it will:

> Construct a linear, no-fork, best version of the Bitcoin blockchain.

By "linear, no-fork" blockchain does that mean throwing away orphan/stale blocks (blocks that were successfully mined but didn't make it into the blockchain due to competing mined blocks)?

What use cases would make use of this linearize script?

**Tags:** bitcoin-core-development


---

## 1 answers

### Answer by username_1 on 2020-10-09. Score: 1 | Accepted answer

> By "linear, no-fork" blockchain does that mean throwing away orphan/stale blocks (blocks that were successfully mined but didn't make it into the blockchain due to competing mined blocks)?

Yes.

> What use cases would make use of this linearize script?

The script was used to construct the `bootstrap.dat` file that was previously used to quickly sync new nodes. This method of node initialization has been deprecated and remove as headers-first syncing is faster.

> **Comments:**
> **username_0**: Thanks for this Andrew. Is there any reason for maintaining it then and not just deleting it from the Core repo? Do we know if anyone is using it for anything else? I wonder if we should at least add a comment on the README that this isn't used for anything (as far as we know).  
> **username_1**: While the autoloading of the bootstrap.dat file has been removed, it is still possible to use such linearized files to initialize a node in this manner. So the script is still useful in constructing those files.  

---

