Gerard Pique netted a late equaliser as Barcelona salvaged a 1-1 derby draw at Espanyol which extended their unbeaten start to the Primera Liga season to a club-record 22 games.
Espanyol had looked set to follow up last month's shock Copa del Rey triumph over their neighbours with another upset when Gerard Moreno put them ahead in the 66th minute at a rain-drenched RCDE Stadium.
But Barca, whose Copa del Rey quarter-final first-leg defeat here brought an end to their 29-match unbeaten run in all competitions this season, battled back and Pique ensured the spoils were shared.
Espanyol had lost all three of their matches since beating Barca - including a 2-0 second-leg defeat at Camp Nou to crash out of the cup - while Ernesto Valverde's treble-chasers were looking to consolidate an 11-point lead at the La Liga summit.
However, form counts for little in derbies and the testing conditions added an extra element to the encounter.
Despite that, Barca kept faith with their trademark passing game in the opening exchanges and were almost rewarded with a fine opening goal in the 22nd minute.
- Real Madrid will fight 'until the end', insists Zidane as title hopes fade after draw with Levante
- Watch: Under pressure Zidane 'not thinking' about job security
- Luis Suarez gives Barcelona 'small advantage' in Copa del Rey semi-final against Valencia
Sergio Busquets sprayed a cross-field pass into the area where Lucas Digne cushioned a pass back to Philippe Coutinho on the edge of the box, from where the former Liverpool man saw a superb curling effort come crashing back off the crossbar.
Nobody would come closer to scoring in the fist half, although Leo Baptistao twice threatened for an Espanyol side who had lost all three matches since beating Barca in the cup.
Baptistao's first effort was a 25-yard shot that was saved by Marc-Andre ter Stegen, albeit after a fumble, while his second saw him head over from six yards out when he should have done better.
Espanyol thought they had scored seconds after the restart but Moreno's effort was ruled out because the ball had gone out of play moments before.
With clear-cut chances still in short supply at either end, Valverde opted to make a double change on the hour, with Messi and Sergi Roberto the men to come on.
Espanyol manager Quique Sanchez Flores followed suit soon after, and his substitution paid almost immediate dividends as the newly-introduced Sergio Garcia set up Moreno to break the deadlock.
The hosts quickly won the ball back from a Ter Stegen clearance before working possession out to the right wing, where Garcia swung an inch-perfect cross in for Moreno to head home.
With standing water becoming an increasing feature of the RCDE pitch, Barca were struggling to fashion opportunities and began resorting to a more direct style.
But they found their reward in the 82nd minute when Pique rose highest in the box to power home Messi's free kick from the left.
Both sides pushed for a winner in the closing stages as tempers began to fray but aside from Espanyol appealing for a late penalty, neither goal was seriously threatened.
In the day's early kick off Getafe extended their unbeaten home run but were unable to claim victory over Leganes as the two local rivals played out a goalless draw on the outskirts of Madrid.
The hosts hit the woodwork twice in four minutes at the start of the second half, Vitorino Antunes striking the post with a free kick and Jorge Molina heading against the crossbar, but they could find no way through.
The result means Getafe are now unbeaten in their last eight matches at the Coliseum Alfonso Perez, winning five.