LogoAnchor Docs

Footguns

Common footguns in Anchor that can lead to issues.

Zeroed Discriminators

Anchor supports overriding discriminators with custom values (for accounts, events and instructions).

All-zero discriminators are only supported in events and instructions. In the case of accounts, e.g:

#[account(discriminator = [0, 0, 0])]
#[account(discriminator = 0)]
#[account(discriminator = ZERO_CONSTANT)]

they are explicitly not supported, as all-zero discriminators are indistinguishable from newly allocated accounts and can expose your code to security and usability issues.

On this page

Edit on GitHub