It seems like a font bug.
If you use \bar{{}\mscrw} the output is as expected.
\documentclass{article}
\usepackage{amsmath,unicode-math}
\unimathsetup{math-style=ISO,bold-style=ISO,sans-style=italic}
\setmathfont{texgyrepagella-math.otf}
\begin{document}
\begin{gather}
\bar{\mathscr{a}} \overbar{\mathscr{a}} \wideoverbar{\mathscr{a}} \\
\bar{\mathscr{b}} \overbar{\mathscr{b}} \wideoverbar{\mathscr{b}} \\
\bar{\mathscr{d}} \overbar{\mathscr{d}} \wideoverbar{\mathscr{d}} \\
\bar{\mathscr{g}} \overbar{\mathscr{g}} \wideoverbar{\mathscr{g}} \\
\bar{\mathscr{u}} \overbar{\mathscr{u}} \wideoverbar{\mathscr{u}} \\
\bar{\mathscr{w}} \overbar{\mathscr{w}} \wideoverbar{\mathscr{w}} \\
\bar{{}\mscrw} \overbar{{}\mscrw} \wideoverbar{{}\mscrw}
\end{gather}
\end{document}

It's possible to fix \bar (and other accents in the same way):
\documentclass{article}
\usepackage{amsmath,unicode-math}
\unimathsetup{math-style=ISO,bold-style=ISO,sans-style=italic}
\setmathfont{texgyrepagella-math.otf}
\ExplSyntaxOn
\cs_set_protected:Nn \bonanza_bar_new:n
{
\str_case:nnTF { #1 }
{
{\mathscr{w}}{}
{\mscrw}{}
}
{ \bonanza_bar_original:n { {}#1 } }
{ \bonanza_bar_original:n { #1 } }
}
\AtBeginDocument
{
\cs_set_eq:NN \bonanza_bar_original:n \bar
\cs_set_eq:NN \bar \bonanza_bar_new:n
}
\ExplSyntaxOff
\begin{document}
\[
\bar{\mathscr{a}}+
\bar{\mathscr{b}}+
\bar{\mathscr{d}}+
\bar{\mathscr{g}}+
\bar{\mathscr{u}}+
\bar{\mathscr{w}}+
\bar{\mscrw}
\]
\end{document}

\overlinefor some reasons. I would have naively expected that a font used via unicode-math with it's own accents should be fine. Is that a bug in unicode math and/or the font ? – bonanza Jan 30 '19 at 10:05