join and rebuild improvements