Second-placed Northampton held off a spirited London Irish side to maintain their Premiership momentum.
Stephen Myler and Ian Humphreys exchanged penalties before James Wilson touched down to put Northampton ahead.
Australian James O'Connor marked his debut by cleverly setting up Sailosi Tagicakibau to score for the Exiles as they went in at half-time 16-11 behind.
Humphreys struck another penalty to reduce the arrears but a further Myler kick secured victory for Saints.
Northampton were without five men on England duty, while Irish were missing winger Marland Yarde for the same reason, and much of the pre-match hype had centred around the arrival of O'Connor, who has lost his contract with the Australian Rugby Union for disciplinary reasons and is looking to rebuild his career with the Exiles.
He showed glimpses of the ability that has earned him 44 Australia caps at the age of just 23, but once Northampton edged ahead early on the Exiles were always playing catch-up.
Myler twice produced confident penalties inside the opening 15 minutes, while Humphreys managed one of his own to keep Saints within touching distance.
But it was the visitors who scored the opening try of the match, neatly working a line-out and then switching the ball from left to right to allow Wilson to step back inside and burst through from close range. Myler duly slotted the conversion.
Humphreys kicked a second penalty of the afternoon to provide a positive London Irish response, before Myler did likewise for Northampton.
But O'Connor's biggest contribution was soon to arrive, in the final moments of the first half.
A well-worked line-out drive was followed by a flowing passing move that saw the Exiles move the ball all the way across the pitch before new boy O'Connor produced a smart delayed pass to send Tagicakibau over in the left-hand corner.
Myler missed another kicking chance from long distance following a bitty opening to the second period, before Humphreys successfully slotted from similar range to reduce the deficit to just two points as the match moved into the final quarter.
But a further Myler penalty meant Irish needed to score a second try to force a result and, despite some late pressure, Northampton completed victory to hold onto second place in the Premiership table.
Views from the dressing rooms
London Irish director of rugby Brian Smith on James O'Connor:
"James was outstanding. He's 23 and is still just a kid who gets up in the morning and puts his trousers on one leg at a time like everyone else.
"A lot has happened quickly to him but he's settled in straight away and showed his class today. The boys enjoyed playing with him today.
"We see him as 15, even though many see him as a jack of all trades who has played right along the back line. And he wants to establish himself as a full-back."
Northampton director of rugby Jim Mallinder:
"We made heavy work of it, but a win is a win. Irish are a tough challenge here, so I have to be pleased.
"We have lost a lot of our players to England but we are managing to get by fine. It's important we maintain our momentum and this will help."
London Irish: O'Connor; Ojo, Mulchrone, Sheridan, Tagicakibau; Humphreys, O'Leary, Yapp, Paice, Halavatau, Gough, Evans, Cowan, Treviranus, Hala'ufia.
Replacements: Lewington for Tagicakibau (77), Allinson for O'Leary (77), Hagan for Yapp (50), Parr for Halavatau (50), Danaher for Treviranus (78), Low for Hala'ufia (55).
Not Used: Mayhew, Geraghty.
Northampton: Wilson; K Pisi, G Pisi, Burrell, Collins; Myler, Fotuali'i; A Waller, Haywood, Ma'afu, Manoa, Day, Clark, Dowson, Dickinson.
Replacements: Waldouck for G Pisi (61), E Waller for A. Waller (69), McMillian for Haywood (77), Mercey for Ma'afu (55), Nutley for Manoa (59), Van Velze for Dickinson (27).
Not Used: Glynn, G Dickson.
Ref: Andrew Small (RFU).