When you start a cold computer controlled engine, the computer runs in Open Loop and Choke mode.
Computer gets coolant temp from the ECT sensor, this is a 2 wire sensor near thermostat.
There is also a 1 wire Sender near by, this is for the dash temp gauge.
When ECT sensor shows cold coolant computer runs engine rich with high idle and advanced spark timing, just like Choke did on carb engines

Choke mode
O2 sensors don't work when they are under 600degF, so computer ignores them until they warm up, this is called Open Loop(or no loop, lol) since computer has no feedback that engine is running Rich or Lean.
Once O2 sensors are working computer switches to Closed Loop.
Closed Loop is when computer adds fuel then sees what O2 sensors says, if Lean computer adds more fuel, if Rich less fuel, so computer is in a Loop, a closed loop because it is getting instant feedback on fuel being burned.
Diesel engines ping, so I assume you mean your engine is pinging.
Pinging can be caused by Lean fuel mix, overheating or incorrect spark timing.
And if it only happen in Closed Loop then O2 sensor could be at fault.
You didn't report overheating so that should be off the table.
Lean fuel mix could be low fuel pressure but I would think you would notice lack of power the faster you went at highway speeds, i.e. fuel pressure drops off more as demand increases.
Lean mix can also be a vacuum leak, or IAC Valve issue, I would clean IAC valve, not hard to do.
IAC(idle air control) valve is used by computer to set idle RPMs, computer sets idle above 1,100 when coolant is cold, and then slowly closes IAC valve as engine warms up dropping warm engine idle down to 600-650 for manual trans.
If you unplug IAC Valve on warm engine idle should drop to 500 or engine may stall, either is good it means IAC is working and no vacuum leaks.
You have a TFI spark system, which at this age should have been serviced a few times, maybe it is time again
Good read here on TFI system:
http://www.therangerstation.com/tech_library/TFI_Diagnostic.shtml
To set base timing you need a timing light and you need to disconnect SPOUT connector.
1989 2.9l may only have 1 O2 sensor, and they last about 100k miles.
But even if it has 2 O2 sensors one could be causing the pinging in Closed loop if it is giving Computer wrong info on Lean/Rich.