Back to Home

CanaryV6

Utility
Part of The Piper Merriam Collection
0xfc8a24079097...1d2b3112b5e1
FrontierContract #5,908Exact Bytecode MatchEdit this contract
Deployed January 3, 2016 (10 years ago)Block 788,629

A liveness canary for the Ethereum Alarm Clock, deployed 3 January 2016.

Frontier EraVerified Source

Historical Significance

Nothing on Ethereum runs unless an account sends a transaction, so a contract cannot wake itself at a future block. A canary answers the question that follows from paying strangers to do that work: is anyone still doing it. Because each heartbeat pays for the next one, the contract keeps itself alive only while the service around it functions, and the block number of its last beat is a public record of when that stopped. It is monitoring built out of the thing being monitored, with no server and nobody to ask.

Context

Deployed while the Alarm Clock was the main attempt at scheduled transactions on Ethereum, which the protocol itself does not provide.

Key Facts
Deployer
Piper Merriam(0xd3cda9...293601)
Deployment Block
788,629
Deployment Date
Jan 3, 2016, 12:45 AM
Code Size
1.1 KB
Gas at Deploy
339,726
Transactions by Year
20162

Description

A canary for the Ethereum Alarm Clock. It exists to prove the scheduling service is still executing calls: heartbeat records the block it was called in, increments a counter and immediately schedules the next heartbeat through the scheduler contract, so the chain of calls continues on its own for as long as the service works. isAlive reports whether the canary is still going by asking the pending call for its target block and checking it against the current block number, which means a stalled scheduler shows up as a dead canary rather than as silence. The owner can cancel it. Deployed by Piper Merriam from 0xd3cda913deb6f67967b99d67acdfa1712c293601.

Source Verified

Exact bytecode match(1,127 bytes)
Compiler: v0.1.6+

Historian Categories

Utility
Heuristic Analysis

The following characteristics were detected through bytecode analysis and may not be accurate.

Detected Type: Utility

Bytecode Overview

Opcodes1,127
Unique Opcodes134
Jump Instructions55
Storage Operations28

External Links

Related contracts