code: func fetchSnapshot(c context.Context, info *SnapshotInfo) error {
  	srv := getAuthService(c, info.AuthServiceURL)
  	snap, err := srv.GetSnapshot(c, info.Rev)
  	if err != nil {
  		return err
  	}
  	blob, err := service.DeflateAuthDB(snap.AuthDB)
  	if err != nil {
  		return err
  	}
  	ent := Snapshot{
  		ID:             info.GetSnapshotID(),
  		AuthDBDeflated: blob,
  		CreatedAt:      snap.Created.UTC(),
  		FetchedAt:      clock.Now(c).UTC(),
  	}
  	logging.Infof(c, "Lag: %s", ent.FetchedAt.Sub(ent.CreatedAt))
  	return transient.Tag.Apply(ds.Put(ds.WithoutTransaction(c), &ent))
  }
docs: // fetchSnapshot fetches AuthDB snapshot specified by `info` and puts it into
  // the datastore.
  //
  // Idempotent. Doesn't touch SnapshotInfo entity itself, and thus always safe
  // to call.