devuelvo la función onAuthStateChanged unsubscribe() para limpiar el useEffect pero no cancela la suscripción. ¿Qué puede estar causando este error?
useEffect(() => { const unsubscribe = onAuthStateChanged(auth, (user) => { if(user){ setInterval(()=>{ setUser(user) history.push('/home') }, 1500) } else if(!user){ setInterval(()=>{ history.push('/login') }, 1500) } }) return ()=> unsubscribe() }, [])Puede haber algunos problemas con el código anterior, primero creo que setInterval es necesario, segundo, está devolviendo un cierre en lugar de la función en sí, onAuthStateChange devuelve una función cuando cambia el estado, así que puede intentar esto.
useEffect(() => { const unsubscribe = onAuthStateChanged(auth, (user) => { if(user){ setUser(user) history.push('/home') } else { history.push('/login') } }); return unsubscribe(); }, [])