Sean wrote at 2004-1-2 17:01 -0500:
I am working on an order entry system, and am getting a frequent error when multiple users are accessing the system.
The error occurs most frequently when one user posts data which updates one or more folderish objects, and another user wants to get data at the same time as (or shortly after) the update. In most (all?) cases this is not the data that has been changed, or even data within the object that has been changed, but is data that must be found by acquisition, passing up a tree through one or more of the folderish objects that are being updated.
The error message is "The object at XXX has an empty or missing docstring. Objects must have a docstring to be published", but has no obvious connection to a missing docstring - if the request is attempted again a few moments later, it works fine.
It is *very* unlikely that this error has anything to do with concurrent access... It is almost unbelievable that the problem disappears for the same request... I see only one (potential) explanation: * Python 2.1's "getattr" catches all exceptions (when called with an optional default argument) (while it should only catch "AttributeError"). This may transform "ConflictError" to "missing docstring". In this case, the affected object would define its docstring itself. This is very rare: usually, the docstring is defined by the class and not the object... -- Dieter