On Nov 20, 8:33 pm, "Evren Esat Özkan" <[EMAIL PROTECTED]> wrote: > Hello, > > I'm using Django with mod_python/psycog2 and faced with same decimal > errors some time ago. > Till that time, I'm using psycopg1.
Were you using psycopg1 or psycopg2 when you had the error? If you were using psycopg1 then it cant be the same error as I don't believe it supports the Decimal type. Graham > Now I tried latest svn version of > psycopg2 but I still getting same errors. > It says "If running in the main interpreter, use a cached version of > the Decimal object. Else repeat the object lookup." in bugfix > message. > I have "PythonInterpreter projectname" lines in all apache config > files. May be I'm doing something wrong with these interpereter > stuff?? > Is this svn release solved your decimal errors? > > Thanks, > Evren > > On Nov 5, 6:28 pm, "Brent Pedersen" <[EMAIL PROTECTED]> wrote: > > > ah, ok. i got that set up no problem. > > i also see this ticket:http://www.initd.org/tracker/psycopg/ticket/192 > > is fixed, so maybe i'll try the svn version. > > thanks > > -brent > > > On 11/4/07, Graham Dumpleton <[EMAIL PROTECTED]> wrote: > > > > On Nov 5, 3:40 am, "Brent Pedersen" <[EMAIL PROTECTED]> wrote: > > > > On 7/14/07, Graham Dumpleton <[EMAIL PROTECTED]> wrote: > > > > > > On Jul 14, 8:15 pm, "Ben Hoyt" <[EMAIL PROTECTED]> wrote: > > > > > > > This is definitely a problem in psycopg2 and I probably should > > > > > > > log an > > > > > > > issue against that package telling them that their package is > > > > > > > unusable > > > > > > > Aha! Thank you, thank you very much! > > > > > > > We haven't tried daemon mode yet (will soon), but if C modules are > > > > > > only > > > > > > loaded once per process instead of once per interpreter, then yeah, > > > > > > that's > > > > > > definitely the problem. What a nightmare! > > > > > > > PyObject *decimal = PyImport_ImportModule("decimal"); > > > > > > > > if (decimal) { > > > > > > > decimalType = PyObject_GetAttrString(decimal, "Decimal"); > > > > > > > } > > > > > > > Incidentally, we looked at that code snippet just the other day, > > > > > > and it > > > > > > *looked* fine then ... but of course we hadn't realised the thing > > > > > > about C > > > > > > modules only being loaded once per process. > > > > > > > Does this mean there'd be no easy way to fix this problem using > > > > > > mod_python > > > > > > (unless psycopg2 was fixed)? > > > > > > Correct, if using just mod_python there wouldn't be a way around it > > > > > except for fixing psycopg2. At least in mod_wsgi one can use daemon > > > > > mode to delegate applications to separate processes thereby avoiding > > > > > the issue. > > > > > > I am actually quite surprised that this issue hasn't come up > > > > > previously with mod_python as the code in psycopg2 has been there for > > > > > many years. > > > > > > FWIW, I have extended my documentation on application issues when > > > > > using mod_wsgi to add a section on problems with multiple > > > > > interpreters. > > > > > > http://code.google.com/p/modwsgi/wiki/ApplicationIssues > > > > > > Described there are general problems with extension modules when using > > > > > multiple sub interpreters, plus this specific issue. > > > > > > Look forward to seeing how you go with daemon mode of mod_wsgi as a > > > > > way of getting around this. > > > > > > Graham > > > > > so i've hit this problem as well though i think it might have been > > > > with a datetime object, not a decimal.... i've switched to pgdb for > > > > now, but prefer psycopg2. is it confirmed that psycopg2 works in > > > > daemon mode? i am ignorant of how that works, would it be restricted > > > > to processes=1 threads=1 in order to avoid similar problems? > > > > thanks, > > > > The issue is not number of processes and/or threads, but which sub > > > interpreter the application runs in and whether there are other > > > applications in same process running in other sub interpreters. > > > > In short, delegate each application to a separate daemon process using > > > mod_wsgi daemon mode. Then force the application to run in the main > > > interpreter of their respective processes, by setting: > > > > WSGIApplicationGroup %{GLOBAL} > > > > So, one application per process group and all running in the main > > > Python interpreter and not a secondary sub interpreter. > > > > Graham --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "web.py" 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/webpy?hl=en -~----------~----~----~----~------~----~------~--~---
