Printer Agents load with 812 error. All PAs in SHUTDOWN state.

  • 3054425
  • 02-Apr-2008
  • 27-Apr-2012

Environment

Novell Distributed Print Services (NDPS) Novell NetWare 6.5
Novell iPrint for NetWare

Situation

The following symptoms are observed:
a. When loading the Print Manager, every printer agent will report an 812 error.
Error Report
NDPSM-3.02-190
Error (-812) occurred while initializing Printer Agent "pa_name".
(NDPS Manager internal Printer Agent ID 471E11A4
Program exeuction may not continue normally.

Hitting the ESC key will enable the Print Manager to attempt to load the next Printer Agent in the list. Each Printer Agent will require the ESC key to be pressed.

b. After the Print Manager has loaded, every printer agent will be in a SHUTDOWN state. An attempt to Start Up the Printer Agent will fail.
c. Every printer agent will have a spooling location of: DummyString
d. When generating a report through the NDPS Manager Health, the query will return an empty list of Printer Agents.
e. Restoring a previous copy of the Print Manager Database (psmdb.dat) will not resolve the problem.

Resolution

NDPSM.NLM dated 09JUN2008 and later auto populates the "Datapool Locations" values, which will resolve this error.  To obtain this file:

1. Go to download.novell.com
2. Choose iPrint in the "Product or Technology" drop down list.
3. Click the Search link
4. Click the Patches link (tab)
5. Choose the latest iprntnw65sp7 patch set.

Additional Information

Cause:
This condition exists when the volume object hosting the Print Manager is deleted. eDirectory will search the tree for every attribute with that volume object as its value and delete the attribute. The Print Manager object has an attribute named"Datapool Locations". Every printer agent assigned to that Print Manager has a value under that attribute. In part, that value consists of the volume object name. eDirectory removes each of those those attributes. Those Printer Agent objects become invalid, and therefore results in the error documented above.

Workaround 1: Manually create and populate the Datapool Locations attribute.
a. Launch ConsoleOne -> browse to the Print Manager object -> click the Other tab
b. Click the "Add..." button
c. Create the "Datapool Locations attribute.
d. Expand the values.
e. Create the values for a Printer Agent.
i. Browse to the volume object.
ii. Enter the decimal value for a printer agent.* (see steps below)
- To find the decimal value for a Printer Agent:
- Expand the "Printer to PA ID Mappings" attribute.
- Expand the value for a printer agent.
- The 10 digit number is the decimal value for that printer agent.
iii. Enter the bottom (third) value of 0.
f. Repeat step "e" for every printer agent.

This process can be time consuming. The other workarounds listed below may be faster, but also have disadvantages.

Workaround 2: Delete and recreate the Printer Agent DS objects.
This workaround can be effective if the following conditions are met:
- Workstation install printers using the iPrint client (install from the /ipp) and do not use the NDPS client)
- Secure iPrint (SSL) is not being used, and therefore ACLs assigned to printers are not important.
- Printer Agents can be found using the Public Access broadcast method. See KB 10093581 to understand what that means.

a. Verify that Printer Agents can be found as Public Access printers through NWAdmin
- Launch NWAdmin
- Delete one Printer Agent object serviced by that NDPS Print Manager.
- Unload and Reload NDPS Manager.
Every printer agent will return the 812 error, except for the one printer that was
deleted. Users will be able to print to the printer that you deleted from eDirectory,
but you will not be able to manage that printer using NWAdmin or iManager.
- Within NWAdmin, click on Tools | NDPS Public Access Printer.
- From the listed Public Access Printer, select the Printer Agent that was deleted
and choose "Convert to NDPS Printer Object"
There is a chance that the deleted printer agent will not show in the Public
Access Printer list. If that is the case, then this workaround is not an option in your
environment. You will need to delete that printer from the NDPS Manager server
console PA list and recreate it using iManager. If the printer is found in the
Public Access list, then continue with the steps below.
- Follow the steps prompted within NWAdmin to convert the printer.
b. If that process is successful, do it to another printer agent. If these steps continue to
be successful for many printer agents, then you may consider deleting all the DS
objects and follow the steps to convert them to Controlled Access Printers. After
performing all of the conversions, restart the Print Manager.

Workaround 3: Use PAGen to recreate the Print Manager database in the Associate mode.
This workaround can be effective if the following conditions aremet:
- Print Driver Profiles are not used by this Print Manager or having the Printer Driver
Profiles erased is not a concern.
- You have a working knowledge of how PAGen works and how it interacts with the padbtxt.csv.

If the above conditions are met, follow the steps to "Use the Printer Agent Generator Tool (PAGen) to create a fresh database" within KB 3591389.

If Broker was hosted by the same volume object that was deleted, then it will fail to load. However, recovering the Broker object is not difficult. The Broker's Service Registry Service must be running and enabled for the PAGen workaround to be successful. Follow these steps to resolve the Broker error:
a. Launch ConsoleOne
b. View the Properties of the Broker object
c. Choose the Other tab
d. Click the Add button. Add the "Resource Mgr Database Volume" attribute. Use
the browse button to populate the attribute with the volume object that is hosting
the Broker.
e. The Broker service should be able to load without errors.