I fit longtable to textwidth following fit longtable to textwidth
\documentclass{report}
\usepackage{longtable}
\usepackage{multirow}
\begin{document}
\begin{center}
\begingroup
\setlength\tabcolsep{4pt}
\normalsize
\setlength\LTcapwidth{\textwidth} % default: 4in (rather less than \textwidth...)
\setlength\LTleft{0pt} % default: \fill
\setlength\LTright{0pt}
\begin{longtable}{@{\extracolsep{\fill}}p{4.0cm}|rcc|rcc|}
\multicolumn{1}{c|}{\multirow{2}{*}{\bf Sample}} & \multicolumn{3}{c|}{A}&\multicolumn{3}{c|}{B}\\
\cline{2-7} & a1 & b1 & c1 & a2 & b2 & c2 \\
\end{longtable}
\endgroup
\end{center}
\end{document}
In the output we see a white space inflicted on the cline:

The problem has been mentioned in the comments of fit longtable to textwidth However, I decided to open a new question for the sake of clarity.
Maybe we can also use some other solution to fit longtable to textwidth?

\extracolsepworks it adds space, you could use\multicolumn{1}to add the|to the left of column 2 rather than the right of column1. Also note\bfhas not been defined by default in LaTeX since the early 1990s. – David Carlisle Jun 09 '20 at 18:36