Real Sociedad condemned Barcelona to their first La Liga defeat this season when they came from two goals down to claim a last-gasp 3-2 win on Saturday with the leaders having Gerard Pique sent off early in the second half.
Imanol Agirretxe slid in to grab the winner in added time for the mid-table hosts after Lionel Messi and Pedro had given Barca an early lead.
Messi's goal, his 10th in 10 consecutive league games, matched the La Liga record set by fellow Barca players Mariano Martin in the 1942/43 campaign and Brazil's Ronaldo in 1996/97.
Gonzalo Castro pulled one back for the hosts four minutes before halftime and he levelled the scores, soon after Pique had picked up a second yellow card in the 56th minute, with a shot that deflected off Javier Mascherano.
Barca, who had previously only dropped points in a 2-2 draw at home to champions Real Madrid, stayed on 55 points from 20 games, 11 ahead of second-placed Atletico Madrid.
Atletico are at home to Levante on Sunday when Real Madrid, 18 points off the pace in third, visit Valencia.
Earlier, Rayo Vallecano's impressive surge up the table was halted when they lost 2-0 at Granada and missed a chance to consolidate their position in the European qualification places.
Granada took the lead when Rayo defender Jordi Amat turned the ball into his own net under pressure from Odion Ighalo in the 24th, and Recio completed only their second home win of the campaign with a low shot 10 minutes from time.
Rayo stayed sixth with 31 points, while Sociedad's famous victory over Barca put them ninth with 29.
Follow Emirates 24|7 on Google News.