PORTLAND, Ore. — Dozens of protesters chanting “Black Lives Matter” and other slogans marched for several miles through Portland neighborhoods, briefly stopping traffic before finally ending outside the mayor’s house and setting up tents.

The protesters, who set up more than a half-dozen tents Friday evening, were angry that Mayor Charlie Hales worked with the City Council this week to approve a new police contract that includes more pay for officers.

Some motorists who were blocked during the evening’s commute were upset – a cacophony of horns sounded at one intersection the protest march blocked.

On Wednesday police used pepper spray and arrested 10 people as demonstrators stormed City Hall to object to the action on the police contract. Protesters said they were disappointed Hales was bringing the matter to a vote now instead of letting his successor, Mayor-Elect Ted Wheeler, take up the issue in January so there would be more time for public input.

Police watchdog groups grew concerned earlier this month when an initial version of the contract guaranteed officers the right to view body camera footage before writing up any non-fatal encounters with civilians.

That language led to several smaller protests and sit-ins in the weeks leading up to Wednesday’s vote.

Commissioner Nick Fish has said the contract did not include any language on body camera policy and the issue will be addressed later.

In a blog post Tuesday, Police Chief Mike Marshman said the contract was urgently needed to help the city recruit new officers. By the end of the month, the 880-member Portland Police Bureau will have nearly 90 vacancies due to retirements and another 385 officers are projected to retire in the next five years.

Better pay will help the city entice new hires and could deter current officers from leaving to work elsewhere, he said.

This story has been updated to correct the spelling of Charlie Hales’ first name.