Hi Niphlod --

I can start with debugging...  Here is the output:

root@groomlake2:~# python /home/www-data/web2py/web2py.py -K swim_smarter 
-D 0
web2py Web Framework
Created by Massimo Di Pierro, Copyright 2007-2013
Version 2.5.1-stable+timestamp.2013.06.06.15.39.19
Database drivers available: SQLite(sqlite3), MySQL(pymysql), PostgreSQL(
psycopg2), PostgreSQL(pg8000), IMAP(imaplib)
starting single-scheduler for "swim_smarter"...
DEBUG:web2py.dal:Your database version does not support the JSON data type (
using TEXT instead)
DEBUG:web2py.scheduler.groomlake2#5474:defining tables (migrate=True)
DEBUG:web2py.scheduler.groomlake2#5474:thread building own DAL object
DEBUG:web2py.scheduler.groomlake2#5474:looping...
ERROR:web2py.scheduler.groomlake2#5474:    error popping tasks
DEBUG:web2py.dal:Your database version does not support the JSON data type (
using TEXT instead)
DEBUG:web2py.scheduler.groomlake2#5474:defining tables (migrate=False)
ERROR:web2py.scheduler.groomlake2#5474:Error retrieving status
ERROR:web2py.scheduler.groomlake2#5474:    error popping tasks
ERROR:web2py.scheduler.groomlake2#5474:    error popping tasks
ERROR:web2py.scheduler.groomlake2#5474:    error popping tasks
ERROR:web2py.scheduler.groomlake2#5474:    error popping tasks
ERROR:web2py.scheduler.groomlake2#5474:    error popping tasks
ERROR:web2py.scheduler.groomlake2#5474:    error popping tasks
ERROR:web2py.scheduler.groomlake2#5474:Error retrieving status
ERROR:web2py.scheduler.groomlake2#5474:    error popping tasks
ERROR:web2py.scheduler.groomlake2#5474:    error popping tasks
ERROR:web2py.scheduler.groomlake2#5474:    error popping tasks
DEBUG:web2py.scheduler.groomlake2#5474:sleeping...
ERROR:web2py.scheduler.groomlake2#5474:Error retrieving status
^CINFO:web2py.scheduler.groomlake2#5474:catched
INFO:web2py.scheduler.groomlake2#5474:die!

I saw the migrate=True stuff and went and switched off all migrates but the 
error remained.

I also think it is odd the error is about "popping tasks" because the tasks 
table has no entries at all -- nor does the run table or the worker table.  
All three schduler tables are completely empty.

As for real-time debugging this, I'm in Malaysia this week on a biz trip.  
(I'm so jet-lagged I don't think I can find my head with both hands!)

-- Joe

On Sunday, June 16, 2013 8:20:16 PM UTC+8, Niphlod wrote:
>
> never run the scheduler with sqlite database, if you're planning to launch 
> multiple schedulers. SQLite and concurrency don't go along very well.
> If your app accesses the postgresql database it should be able to connect 
> as well from the scheduler, it's true, but evidently something is different 
> between your "web" environment and your "scheduler" one.
> PS: can you start the scheduler with web2py.py -K appname -D 0 ?
> -D 0 enables DEBUG logs and we maybe able to see the "something" that is 
> not working.
> If you can't come up with a solution, I'm available to do some debugging, 
> send me a PM.
>
> On Sunday, June 16, 2013 9:08:33 AM UTC+2, Joe Barnhart wrote:
>>
>> Good points.
>>
>> But since I'm running the same application in the web server, and it can 
>> see and read/write the PostgreSQL database from the web process, does that 
>> imply that the scheduler process (which uses all the same files) can see 
>> the database as well?  If there is nu such assumption, how would I go about 
>> proving access from the scheduler process?
>>
>> As an aside, I tried running the scheduler as root and as www-data (the 
>> owner and group of all the web2py files).  They both resulted in the same 
>> errors.  I was thinking about changing the scheduler to run its tables in 
>> SQLite and keep the application in PostgreSQL.  Would that be tempting the 
>> fates to throw down more anguish on me?
>>
>> -- Joe
>>
>> On Saturday, June 15, 2013 9:56:37 PM UTC+8, Niphlod wrote:
>>>
>>> scheduler and whatever you choose to run your "web part" are totally 
>>> unrelated. It's meant to be as a separate process, and can totally run on 
>>> its own. What you need to check is that the scheduler instance can connect 
>>> to the database (if this was a result of permission problems on the file, 
>>> the breakage should have happened before those logs, e.g. reading the 
>>> source file of web2py.py).
>>>
>>> On Saturday, June 15, 2013 4:20:14 AM UTC+2, Joe Barnhart wrote:
>>>>
>>>> I'm trying to set up a test server that's close to the production 
>>>> server I'm going to have.  I have a VM with web2py and nginx/uwsgi 
>>>> installed on Debian.  The database is Postgres which runs on the host of 
>>>> the VM and talks thru a "host only" network adapter, also on Linux.
>>>>
>>>> It all seems to work -- web2py can see and use the Postgres database, I 
>>>> can serve pages thru nginx and uwsgi.  But when I start the scheduler all 
>>>> hell breaks loose.
>>>>
>>>>
>>>> web2py Web Framework
>>>> Created by Massimo Di Pierro, Copyright 2007-2013
>>>> Version 2.5.1-stable+timestamp.2013.06.06.15.39.19
>>>> Database drivers available: SQLite(sqlite3), MySQL(pymysql), PostgreSQL
>>>> (pg8000), IMAP(imaplib)
>>>> starting single-scheduler for "swim_smarter"...
>>>> ERROR:web2py.scheduler.groomlake2#3208:    error popping tasks
>>>> ERROR:web2py.scheduler.groomlake2#3208:Error retrieving status
>>>> ERROR:web2py.scheduler.groomlake2#3208:    error popping tasks
>>>> ERROR:web2py.scheduler.groomlake2#3208:    error popping tasks
>>>> ERROR:web2py.scheduler.groomlake2#3208:    error popping tasks
>>>> ERROR:web2py.scheduler.groomlake2#3208:    error popping tasks
>>>> ERROR:web2py.scheduler.groomlake2#3208:    error popping tasks
>>>> ERROR:web2py.scheduler.groomlake2#3208:Error retrieving status
>>>> ERROR:web2py.scheduler.groomlake2#3208:    error popping tasks
>>>> ERROR:web2py.scheduler.groomlake2#3208:    error popping tasks
>>>> ERROR:web2py.scheduler.groomlake2#3208:    error popping tasks
>>>> ERROR:web2py.scheduler.groomlake2#3208:    error popping tasks
>>>>
>>>>
>>>> Maybe I'm starting the scheduler wrong.  I'm using sudo to start an 
>>>> instance of web2py separate from uwsgi, but using www-data:www-data as the 
>>>> user and group.  I only pass "-K" and the application name, once here but 
>>>> I'd like to start 3 to 6 instances.  The console begins immediately 
>>>> pouring 
>>>> out error messages from the schedulers, but I can see from the databse 
>>>> tables on the host that no processes have been inserted as workers into 
>>>> the 
>>>> table yet.
>>>>
>>>> What is the best way of using scheduler processes with nginx/uwsgi?  
>>>> Can it be started and stopped with the server?  I really depend on this 
>>>> scheduler -- it's one of the best features of web2py -- so if I have to 
>>>> use 
>>>> apache or something else in production I'll do that.
>>>>
>>>> -- Joe
>>>>
>>>

-- 

--- 
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 [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to