Let $f: X \to Y$ a morphism between schemes, $\mathcal{F}$ a quasicoherent $\mathcal{O}_X$ module, $\mathcal{G}$ a quasicoherent $\mathcal{O}_Y$ module.
My question is what are the weakest possible conditions for $f$, $\mathcal{F}$ and $\mathcal{G}$
such that $f_* f^* \mathcal{G}= \mathcal{G}$ and $f^* f_* \mathcal{F}= \mathcal{F}$ hold? (*)
Considerations: $f^*$ and $f_*$ are connected via adjunction
$$Hom_{\mathcal{O}_X}(f^*\mathcal{G},\mathcal{F})= Hom_{\mathcal{O}_Y}(\mathcal{G}, f_*\mathcal{G})$$
and this gives arise for natural unit and counit trafos $\mathcal{G} \to f_* f^* \mathcal{G}$ and $\mathcal{F} \to f^* f_* \mathcal{F}$. But it seems that in generally the adjunction don't provider more informations.
Does there exist a suitable theorem providing sufficent conditions for the above property (*)?
Background of my question: I want to find under which conditions the induced map $f^*: Pic(Y) \to Pic(X)$ is injective? Indeed, if I know that $f_* f^* \mathcal{G}= \mathcal{G}$ holds I get the desired injectivity.