Have you tried turning on SQLObject's debugging? It can help a lot to  
see what queries are being run. Try adding ?debug=1 to your dburi.

Kevin

On Aug 25, 2006, at 5:53 PM, Brandon Goldfedder wrote:

>
> One more piece of data...
>
> Changing to
> jobs=model.Job.select(orderBy=model.Job.q.submission_time )  
> (eliminating the
> where clause) fixes it if the job table had some entries at start up,
>
> BUT if the table is empty on startup then it will still fail to  
> pick up
> changes if populated later...
>
> Thinking the general problem may be that a select returning an  
> empty set is
> not rechecked by SQLObject
>
> --Brandon
>
> -----Original Message-----
> From: [email protected]  
> [mailto:[EMAIL PROTECTED] On
> Behalf Of Brandon Goldfedder
> Sent: Friday, August 25, 2006 8:57 AM
> To: [email protected]
> Subject: [TurboGears] SQLObject help - caching?
>
>
> Hi,
> Having a weird problem in SQLObject usage between 2 programs that I  
> just
> can't seem to crack.
>
>
> I have a turbogears program that is exporting its work to a Job table.
>
> I have a second program running sharing the model
> (turbogears.update_config(configfile="dev.cfg",
> modulename="myproject.config")) that simply reads the job queue:
>       
>     jobs=model.Job.select( model.Job.q.status == 'pending',
> orderBy=model.Job.q.submission_time )
>
>         for j in jobs:
>
> I defined the job to not cache thinking that might be an issue:
>
> class Job(SQLObject):
>     "Represents a submitted datageneration, technology execution or  
> scoring
> task"
>     class sqlmeta:
>         cacheValues = False
>     submission_time = DateTimeCol(default=datetime.now)
>     task = StringCol(length=15, notNone = True)
>     progress = StringCol(length=50, default = None)
>     parameters = StringCol(length=255, notNone = True, default='{}')
>     status = EnumCol(enumValues=['pending', 'running', 'success',
> 'failure'], default='pending')
>     executionStartTime = DateTimeCol(default=None)
>     executionStopTime = DateTimeCol(default=None)
>     results = StringCol(length=100, default=None)
>
> The problem:
> If the second program is started first, it does not appear to pick up
> changes to the job table (is it caching it)
>
> If I change my job query to not use the constraint on pending it  
> works a
> little better but is still not always picking up the changes that  
> may occur
> after it starts:
> jobs=model.Job.select(orderBy=model.Job.q.submission_time )
>
> So, what am I missing about sharing the use of a db in this manner  
> between
> programs (is SQLObject getting in way)?
>
> Thanks,
> Brandon
>
>
>
>
>
>
> >


--
Kevin Dangoor
TurboGears / Zesty News

email: [EMAIL PROTECTED]
company: http://www.BlazingThings.com
blog: http://www.BlueSkyOnMars.com




--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"TurboGears" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/turbogears
-~----------~----~----~----~------~----~------~--~---

Reply via email to