I've run my own instance of Tezos node and it seems that the node doesn't respond with blocks below the current checkpoint.
GET /chains/main/checkpoint
response:
{
"block": {
"level": 212993,
"proto": 3,
"predecessor": "BLMXXvPj4rfPinsTcwgQkws5iqcqZKLnxCrSHXYErRk8Yt8s4ui",
"timestamp": "2018-12-04T01:25:03Z",
"validation_pass": 4,
"operations_hash": "LLob1oFfM5pLnSH8vi9kM57JH9toqS9jR6XGkZt9gHeqzKiusBpge",
"fitness": [
"00",
"000000000061a690"
],
"context": "CoUu7Z1PCS3FoQqN96UAczb25S9c5HCtPsNbuQXdeT2CNqsssbaG",
"protocol_data": "000100000003ddfe5afc00ed6f3c49c78ed62ff003b09b5af7db2b0479b79367cb60c2a1a85caeae20fca4da576f19ce9116a2cd6eafc1d737d032aa9ed1e3b292b57d378bd0ff90acf505"
},
"save_point": 212993,
"caboose": 0,
"history_mode": "full"
}
So, as we can see history_mode is "full". According to this article https://blog.nomadic-labs.com/introducing-snapshots-and-history-modes-for-the-tezos-node.html node with this mode stores all blocks.
But,
GET /chains/main/blocks/212992
response is 404 Not Found,
however,
GET /chains/main/blocks/212992/header
response is a block header.
GET /chains/main/blocks/212993
works properly and responses a block as it expected.
I used docker image to deploy the node.
UPD: GET /chains/main/blocks/212992/operations
also doesn't work