[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Ganymede Help] Date Comparision
|
| Hey Jon,
| Thanks for the help, i am more attracted towards the solution to do
| queries on the database during builderPhase1()
| of GanymedeBuilderTask to find objects that have changed more
| recently than the GanymedeBuilderTask's oldLastRunTime. You said that
Can you explain why this is? From what I understand of your schema,
trying to do it this way would be more difficult.
Keep in mind, the Ganymede server has no way of knowing in principle
whether the last build succeeded or not. What happens if the Ganymede
server just writes out what it thinks changed since the last build,
but it turns out that the last build was not successful due to some
network or script failure, and sending only the changes since the last
Ganymede server build leaves the external environment without the
changes that happened in the next-to-last build?
Ganymede was designed from day one to do full builds each time in
builderPhase1(). There are actually a whole lot of reasons for this,
and they are 'baked in' to the design. I'd really like to hear a lot
more detail of how you think the build process is going to work for
you, I'm still thinking you're going to run into some pitfalls you
might not have thought of yet, even above and beyond the question of
the external build's reliability.
| every object has a ModificationDateField...i cant find any
| documentation about this ......Can yu tell me where can i find it?? I
ModificationDateField is a symbolic name for field number 6, which
is present in all top-level objects (i.e., all non embedded objects).
See the LISA 1998 paper on Ganymede for details on this.. you have read
the paper, I assume?
SchemaConstants.java has the list of fixed field numbers.
So you'd have
Date lastModified = (Date) object.getFieldValueLocal(SchemaConstants.ModificationDateField);
| am using it like this
|
| if (baseChanged((short) 270)){
| DBObject object_name;
| Enumeration object_group=enumerateObjects((short) 270);
| while (object_group.hasMoreElements())
| {
| object_name=(DBObject) object_group.nextElement();
| if
| (object_name.ModificationDateField.afteroldLastRunTime))
| System.out.println(object_name.toString());
| }
| System.out.println("The base has changed");
|
| Here it gives me error regarding ModificationDateField...
| Please let me know if my approach makes some sense -;).
| Thanks
| Gaurav
-------------------------------------------------------------------------------
Jonathan Abbey jonabbey@arlut.utexas.edu
Applied Research Laboratories The University of Texas at Austin
Ganymede, a GPL'ed metadirectory for UNIX http://www.arlut.utexas.edu/gash2
----------------------------------------------------------------------------
To make changes to your subscription to the Ganymede Help list, send
mail to majordomo@arlut.utexas.edu.
To unsubcribe, include the line
unsubscribe ganymede-help
in the body of your mail message
Visit the Ganymede web page at http://www.arlut.utexas.edu/gash2
----------------------------------------------------------------------------
Re: [Ganymede Help] Date Comparision
- From: Jonathan Abbey <jonabbey@arlut.utexas.edu>