for the performance, it's fast as it's just a local lookup, but it can hurt if you are just filtering a result of this lookup, because it would mean that all rows would have to be matched and tested and probability discarded
You can control if the historical node becomes available for querying only after the lookup's is already in sync, but there's no automatic way to observe this, you can use the coordinator endpoint to get an overview of the cluster, but so far, there's no way to tell druid to not use a node if a datasource is not fully loaded yet