implemented superfast seeding and web lookup but also superslow updating of canonical field via before_save callback