[web2py] Re: Adding a scheduled task using the scheduler results in db error.
On Saturday, February 2, 2013 3:56:42 PM UTC+2, Niphlod wrote: if your db is istantiated with check_reserved=['all'] then you need to fetch the gluon/scheduler.py from trunk and use that, because in 2.3.2 stable the column names of the scheduler's table are not compatible. What is the most elegant way to upgrade web2py? Upgrading core is easy but how to deal stuff inside one particular application? Now I utilized BeyondCompare3 to sync all those Twitter Bootstrap and so on stuff. Considering this Scheduler table problem, can I some how drop all affected tables and get new ones automatically created? Trying to stay up to date with latest released version, not wanting anything from the trunk. -- --- You received this message because you are subscribed to the Google Groups web2py-users group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[web2py] Re: Adding a scheduled task using the scheduler results in db error.
don't know how to reply properly the scheduler in stable has some column names that are incompatible with check_reserved=['all']. If you have a db connection with check_reserved=['all'] there's no way to have a working scheduler in your app. The solution is either rely on the stable scheduler and leave out the check_reserved parameter or use the scheduler from trunk. Table migrations are handled like everything else in web2py, so there's no change in that behaviour regarding the update. On Sunday, February 17, 2013 3:49:27 PM UTC+1, MJo wrote: What is the most elegant way to upgrade web2py? Upgrading core is easy but how to deal stuff inside one particular application? Now I utilized BeyondCompare3 to sync all those Twitter Bootstrap and so on stuff. Considering this Scheduler table problem, can I some how drop all affected tables and get new ones automatically created? Trying to stay up to date with latest released version, not wanting anything from the trunk. -- --- You received this message because you are subscribed to the Google Groups web2py-users group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[web2py] Re: Adding a scheduled task using the scheduler results in db error.
Massimo, Wow that's customer support. Thanks for the quick reply! However I am using 2.3.2, which is what is listed as the stable version. Do I need to download the experimental to get the scheduler to work? Also, is it possible for me to just delete the old tables, replace web2py, and it will auto-create the new tables again? Thanks! `M On Friday, February 1, 2013 8:14:19 PM UTC-8, Massimo Di Pierro wrote: You have an older version of the scheduler (and web2py). Your scheduler tables have a field called output This field was renamed run_output. This is because some database engines consider output a reserved keyword. Massimo On Friday, 1 February 2013 22:10:48 UTC-6, Morgan Hein wrote: Howdy! I have been following the video tutorial to create a schedule task. Inside the bottom of the task to be run I have: def main(): o = MarketReader() o.run() from gluon.scheduler import Scheduler Scheduler(db,dict(update_market=main)) When I browse back to the database management, I receive the following error: TICKET ID 127.0.0.1.2013-02-01.19-58-07.6e66c0a0-a0fa-49e0-b6b6-70ddb741fbeb type 'exceptions.SyntaxError' invalid table/column name output is a ALL reserved SQL keywordVERSIONweb2py™(2, 3, 2, datetime.datetime(2012, 12, 17, 15, 3, 30), 'stable')PythonPython 2.7.3: /usr/bin/python Traceback (most recent call last): File /home/johnnyfive/Downloads/web2py/gluon/restricted.py, line 212, in restricted exec ccode in environment File /home/johnnyfive/Downloads/web2py/applications/EveMarket/models/tasks.py http://127.0.0.1:8000/admin/default/edit/EveMarket/models/tasks.py, line 101, in module Scheduler(db,dict(update_market=main)) File /home/johnnyfive/Downloads/web2py/gluon/scheduler.py, line 449, in __init__ self.define_tables(db, migrate=migrate) File /home/johnnyfive/Downloads/web2py/gluon/scheduler.py, line 513, in define_tables migrate=migrate) File /home/johnnyfive/Downloads/web2py/gluon/dal.py, line 7186, in define_table table = self.lazy_define_table(tablename,*fields,**args) File /home/johnnyfive/Downloads/web2py/gluon/dal.py, line 7203, in lazy_define_table table = table_class(self, tablename, *fields, **args) File /home/johnnyfive/Downloads/web2py/gluon/dal.py, line 7609, in __init__ db.check_reserved_keyword(field_name) File /home/johnnyfive/Downloads/web2py/gluon/dal.py, line 6930, in check_reserved_keyword 'invalid table/column name %s is a %s reserved SQL keyword' % (name, backend.upper())) SyntaxError: invalid table/column name output is a ALL reserved SQL keyword Variablesbackend'all'name'output'backend.upperbuilt-in method upper of str object Any ideas? I'm feeling like the task scheduler is trying to create a database column with the name of output? Thanks! -- --- You received this message because you are subscribed to the Google Groups web2py-users group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[web2py] Re: Adding a scheduled task using the scheduler results in db error.
if your db is istantiated with check_reserved=['all'] then you need to fetch the gluon/scheduler.py from trunk and use that, because in 2.3.2 stable the column names of the scheduler's table are not compatible. On Saturday, February 2, 2013 5:44:01 AM UTC+1, Morgan Hein wrote: Massimo, Wow that's customer support. Thanks for the quick reply! However I am using 2.3.2, which is what is listed as the stable version. Do I need to download the experimental to get the scheduler to work? Also, is it possible for me to just delete the old tables, replace web2py, and it will auto-create the new tables again? Thanks! `M On Friday, February 1, 2013 8:14:19 PM UTC-8, Massimo Di Pierro wrote: You have an older version of the scheduler (and web2py). Your scheduler tables have a field called output This field was renamed run_output. This is because some database engines consider output a reserved keyword. Massimo On Friday, 1 February 2013 22:10:48 UTC-6, Morgan Hein wrote: Howdy! I have been following the video tutorial to create a schedule task. Inside the bottom of the task to be run I have: def main(): o = MarketReader() o.run() from gluon.scheduler import Scheduler Scheduler(db,dict(update_market=main)) When I browse back to the database management, I receive the following error: TICKET ID 127.0.0.1.2013-02-01.19-58-07.6e66c0a0-a0fa-49e0-b6b6-70ddb741fbeb type 'exceptions.SyntaxError' invalid table/column name output is a ALL reserved SQL keywordVERSIONweb2py™(2, 3, 2, datetime.datetime(2012 , 12, 17, 15, 3, 30), 'stable')PythonPython 2.7.3: /usr/bin/python Traceback (most recent call last): File /home/johnnyfive/Downloads/web2py/gluon/restricted.py, line 212, in restricted exec ccode in environment File /home/johnnyfive/Downloads/web2py/applications/EveMarket/models/tasks.py http://127.0.0.1:8000/admin/default/edit/EveMarket/models/tasks.py, line 101, in module Scheduler(db,dict(update_market=main)) File /home/johnnyfive/Downloads/web2py/gluon/scheduler.py, line 449, in __init__ self.define_tables(db, migrate=migrate) File /home/johnnyfive/Downloads/web2py/gluon/scheduler.py, line 513, in define_tables migrate=migrate) File /home/johnnyfive/Downloads/web2py/gluon/dal.py, line 7186, in define_table table = self.lazy_define_table(tablename,*fields,**args) File /home/johnnyfive/Downloads/web2py/gluon/dal.py, line 7203, in lazy_define_table table = table_class(self, tablename, *fields, **args) File /home/johnnyfive/Downloads/web2py/gluon/dal.py, line 7609, in __init__ db.check_reserved_keyword(field_name) File /home/johnnyfive/Downloads/web2py/gluon/dal.py, line 6930, in check_reserved_keyword 'invalid table/column name %s is a %s reserved SQL keyword' % (name, backend.upper())) SyntaxError: invalid table/column name output is a ALL reserved SQL keyword Variablesbackend'all'name'output'backend.upperbuilt-in method upper of str object Any ideas? I'm feeling like the task scheduler is trying to create a database column with the name of output? Thanks! -- --- You received this message because you are subscribed to the Google Groups web2py-users group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[web2py] Re: Adding a scheduled task using the scheduler results in db error.
You have an older version of the scheduler (and web2py). Your scheduler tables have a field called output This field was renamed run_output. This is because some database engines consider output a reserved keyword. Massimo On Friday, 1 February 2013 22:10:48 UTC-6, Morgan Hein wrote: Howdy! I have been following the video tutorial to create a schedule task. Inside the bottom of the task to be run I have: def main(): o = MarketReader() o.run() from gluon.scheduler import Scheduler Scheduler(db,dict(update_market=main)) When I browse back to the database management, I receive the following error: TICKET ID 127.0.0.1.2013-02-01.19-58-07.6e66c0a0-a0fa-49e0-b6b6-70ddb741fbeb type 'exceptions.SyntaxError' invalid table/column name output is a ALL reserved SQL keywordVERSIONweb2py™(2, 3, 2, datetime.datetime(2012, 12, 17, 15, 3, 30), 'stable')PythonPython 2.7.3: /usr/bin/python Traceback (most recent call last): File /home/johnnyfive/Downloads/web2py/gluon/restricted.py, line 212, in restricted exec ccode in environment File /home/johnnyfive/Downloads/web2py/applications/EveMarket/models/tasks.py http://127.0.0.1:8000/admin/default/edit/EveMarket/models/tasks.py, line 101, in module Scheduler(db,dict(update_market=main)) File /home/johnnyfive/Downloads/web2py/gluon/scheduler.py, line 449, in __init__ self.define_tables(db, migrate=migrate) File /home/johnnyfive/Downloads/web2py/gluon/scheduler.py, line 513, in define_tables migrate=migrate) File /home/johnnyfive/Downloads/web2py/gluon/dal.py, line 7186, in define_table table = self.lazy_define_table(tablename,*fields,**args) File /home/johnnyfive/Downloads/web2py/gluon/dal.py, line 7203, in lazy_define_table table = table_class(self, tablename, *fields, **args) File /home/johnnyfive/Downloads/web2py/gluon/dal.py, line 7609, in __init__ db.check_reserved_keyword(field_name) File /home/johnnyfive/Downloads/web2py/gluon/dal.py, line 6930, in check_reserved_keyword 'invalid table/column name %s is a %s reserved SQL keyword' % (name, backend.upper())) SyntaxError: invalid table/column name output is a ALL reserved SQL keyword Variablesbackend'all'name'output'backend.upperbuilt-in method upper of str object Any ideas? I'm feeling like the task scheduler is trying to create a database column with the name of output? Thanks! -- --- You received this message because you are subscribed to the Google Groups web2py-users group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.