Fiddling with this now, but have a few concerns, so I'd like Massimo
to chime is as the exec expert. The main reason for going POpen is to
have a clean, thread safe environment, and with exec I'm not sure we
won't hit race conditions or deadlock possibilities, especially if we
touch on models. Some help how to exec stuff with the proper
environment would be welcome :)

Another thing to note is that when execing, we no longer have control
over what we execute - i.e. while we can kill/clean zombie POpened
processes, if we get stuck in just another thread (=with exec) it's
stuck there until the whole web2py/webserver is restarted.


On Jan 31, 7:27 am, John Heenan <johnmhee...@gmail.com> wrote:
> I have not get my point across.
>
> By 'Python exec' I mean using the 'exec' internal Python command. I
> don't mean 'Python exec' as a shorthand for 'execute a new Unix,
> Windows or Mac OS process under the ownership of the cron code written
> in Python'.
>
> I have just examined the most recent trunk version of cron.py 
> inhttp://code.google.com/p/web2py/source/browse/gluon/contrib/cron.py
>
> For .py files the Popen command is still executed using the
> cronlauncher class that uses Popen
>
> For those of us trying ot keep RAM usage down, who don't want to use a
> regular crontab and who only want to run Python files, using Popen is
> not necessasry.
>
> My point is can we have an option to:
>
> 1) Just do an Python exec on an opened file contents (with ot without
> the models envrionment), instead of doing a Popen
> 2) Have an option to do an Python exec on a string, such as on "import
> a; a.mycronaction()"
>
> Thanks
>
> John Heenan
>
> On Jan 31, 2:17 pm, mdipierro <mdipie...@cs.depaul.edu> wrote:
>
> > Unless we misunderstand we have that already. The file just needs to
> > end in .py as in
>
> > * * * * * root myscript.py
>
> > You can also call actions
>
> > * * * * * root *myscript.py
>
> > so that models are imported.
>
> > On Jan 30, 8:36 pm, John Heenan <johnmhee...@gmail.com> wrote:
>
> > > Hi AchipA
>
> > > Another feature request, if the cron file is a python file, how about
> > > a cron option to open the file and do an exec on the file contents?
>
> > > Thanks
>
> > > John Heenan
>
> > > On Jan 31, 12:33 pm, John Heenan <johnmhee...@gmail.com> wrote:
>
> > > > Hi AchipA
>
> > > > Your cron is nice work and neatly deals with the messy side of
> > > > launching an independent OS process and waiting for it to finish.
>
> > > > For those of us who do not wish to launch an independent process (to
> > > > keep down memory use) and are happy to stick with Python for cron
> > > > jobs, following is a request to add in the following feature to your
> > > > cron fpr web2py.
>
> > > > Provide a mechanism to just perform a Python exec on a string
> > > > statment.
>
> > > > For example a string statement might be
> > > > "import a; a.mycronaction()"
>
> > > > Thanks
>
> > > > John Heenan
>
> > > > On Jan 31, 6:52 am, AchipA <attila.cs...@gmail.com> wrote:
>
> > > > > Just to chime in, I'm still alive and preparing an update to cron as
> > > > > quite a few things changed since I last touched it. As for the
> > > > > questions - all cron modes support the * and ** syntax, and yes, cron
> > > > > files can be modified on the fly.
>
> > > > > On Jan 26, 4:00 pm, mdipierro <mdipie...@cs.depaul.edu> wrote:
>
> > > > > > I did not write cron personally and I am still trying to understand
> > > > > > some of it, Attila did.
> > > > > > I am in the looking at cron these days to treamline it a bit and I 
> > > > > > am
> > > > > > trying to understand better as it works.
>
> > > > > > Since windows does not have cron, you should use web2py hardcron. It
> > > > > > should work on windows 7 but I have not tried it. The "root" is the
> > > > > > username that should run the cron task. It is only used by extcron 
> > > > > > and
> > > > > > ignored otherwise (but must be there, for compatibility of syntax).
>
> > > > > > I am not sure if tasks staring with * or ** run under extcron so I
> > > > > > suggest not using pycron. Given hardcron you do not need pycron
> > > > > > anyway.
>
> > > > > > Mind that this is in the process of being refactored a bit. Perhaps
> > > > > > you can help with testing and debugging so you can be sure it works 
> > > > > > as
> > > > > > you need it.
>
> > > > > > On Jan 26, 4:27 am, Oguz Yarimtepe <oguzyarimt...@gmail.com> wrote:
>
> > > > > > > Hi,
>
> > > > > > > I was trying to use the cron property of web2py at my project. I 
> > > > > > > am
> > > > > > > using web2py under windows 7. I had installed wamp server with 
> > > > > > > mod_wsgi.
> > > > > > > According to the documentation it is suggested to use the 
> > > > > > > external cron.
> > > > > > > I tried to test the soft cron issue so i added the below line to 
> > > > > > > my
> > > > > > > application crontab
>
> > > > > > > #crontab
> > > > > > > */2        *        *        *        *        root *decrease/
>
> > > > > > > and at the controllers directory the decrease file is as is
>
> > > > > > > # coding: utf8
>
> > > > > > > def index():
>
> > > > > > >      f=file("C:\\Users\\oguz\\hede.txt", "w+")
> > > > > > >      f.write("ok")
> > > > > > >      f.close()
>
> > > > > > >      return dict()
>
> > > > > > > So when the application is loaded shouldn't i see the txt is 
> > > > > > > created at
> > > > > > > every 2 minutes?
>
> > > > > > > What is the usage of the root keyword at the crontab file? For 
> > > > > > > windows
> > > > > > > application what should it be?
>
> > > > > > > And if i want to use the external cron method, it says i should 
> > > > > > > add a
> > > > > > > line to system cron file. This doesn't sound me so effective at my
> > > > > > > application so i will be prefering to use something like pycron. 
> > > > > > > Anybody
> > > > > > > tested these things at windows 7?
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To post to this group, send email to web...@googlegroups.com.
To unsubscribe from this group, send email to 
web2py+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/web2py?hl=en.

Reply via email to