Hi, Thanks for your help, everyone. Some of my replies seemed to go off-list, so just updating this in case anyone else has the same issue.
I managed to solve the problem by exporting the full folder tree as a .zexp, and re-importing it. This fixed up the _p_mtime values to the date it was imported. This worked for us because the data was not that huge. Before this, I had a temporary workaround that caught the exception in App.PersistentExtra when trying to read _p_mtime, and replaced it with today's date. It also set _p_changed to write the data back. However this just caused performance problems, and the data never seemed to get written back. fsrefs still returned errors on the new data, as it did on the old. In particular, it reported it could not find objects that I could load from the "zopectl debug" prompt. The data works fine and does not cause errors, so it looks like an issue in fsrefs. I have not investigated this further. Thanks again, Miles Miles wrote: > Hi, > > I've moved a FileStorage from one (old) machine to another (new) > machine, but when I mount it on the new machine I get a lot of time errrors: > > Traceback (innermost last): > Module ZPublisher.Publish, line 115, in publish > Module ZPublisher.mapply, line 88, in mapply > Module ZPublisher.Publish, line 41, in call_object > Module Shared.DC.Scripts.Bindings, line 311, in __call__ > Module Shared.DC.Scripts.Bindings, line 348, in _bindAndExec > Module App.special_dtml, line 176, in _exec > Module DocumentTemplate.DT_Let, line 76, in render > Module DocumentTemplate.DT_In, line 703, in renderwob > Module DocumentTemplate.DT_With, line 76, in render > Module DocumentTemplate.DT_Var, line 214, in render > Module App.PersistentExtra, line 43, in bobobase_modification_time > Module DateTime.DateTime, line 509, in __init__ > Module DateTime.DateTime, line 760, in _parse_args > Module DateTime.DateTime, line 437, in safelocaltime > TimeError: The time 98040302366.810165 is beyond the range of this > Python implementation. > > I googled around on this problem and didn't find much, but I did find > that as a temporary fix, I've put a try/except in App.PersistentExtra, > so if it generates an exception, it returns the current date and time. > This keeps things working. > > Out of interst, can anyone tell me why there is a difference? On both > machines, python was compiled from source with the same options, so I'm > not sure what this is down to. > > More importantly, what's the most straightforward way to set all the > dates to usable values? From my POV, it's fine to set them all to the > current date, but I don't know how to go about doing this exhaustively. > > Thanks for your help, > > Miles > > > _______________________________________________ > For more information about ZODB, see the ZODB Wiki: > http://www.zope.org/Wikis/ZODB/ > > ZODB-Dev mailing list - ZODB-Dev@zope.org > http://mail.zope.org/mailman/listinfo/zodb-dev > _______________________________________________ For more information about ZODB, see the ZODB Wiki: http://www.zope.org/Wikis/ZODB/ ZODB-Dev mailing list - ZODB-Dev@zope.org http://mail.zope.org/mailman/listinfo/zodb-dev