GAE won't use C extensions.  ZODB requires C extensions (like Persistence). 
You cannot run ZODB on GAE as a result.

- C

On 3/26/10 8:34 PM, george hu wrote:
> First, I set up the template project: paster create -t bfg_zodb bfgapp,
> then cd to the bfgapp to run python setup.py develop
>
> ||
>
> *When I tried to run with the python  in the virtual env
> (bfgapp/bin/python), I got the following error:*
>
> Traceback (most recent call last):
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 3185, in _HandleRequest
>      self._Dispatch(dispatcher, self.rfile, outfile, env_dict)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 3128, in _Dispatch
>      base_env_dict=env_dict)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 515, in Dispatch
>      base_env_dict=base_env_dict)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 2387, in Dispatch
>      self._module_dict)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 2297, in ExecuteCGI
>      reset_modules = exec_script(handler_path, cgi_path, hook)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 2193, in ExecuteOrImportScript
>      exec module_code in script_module.__dict__
>    File "/home/systemadmin/bfgapp/app/runner.py", line 14, in <module>
>      import site
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1272, in Decorate
>      return func(self, *args, **kwargs)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1922, in load_module
>      return self.FindAndLoadModule(submodule, fullname, search_path)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1272, in Decorate
>      return func(self, *args, **kwargs)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1824, in FindAndLoadModule
>      description)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1272, in Decorate
>      return func(self, *args, **kwargs)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1775, in LoadModuleRestricted
>      description)
>    File "/home/systemadmin/bfgapp/lib/python2.5/site.py", line 599, in
> <module>
>      main()
>    File "/home/systemadmin/bfgapp/lib/python2.5/site.py", line 578, in main
>      paths_in_sys = addusersitepackages(paths_in_sys)
>    File "/home/systemadmin/bfgapp/lib/python2.5/site.py", line 310, in
> addusersitepackages
>      USER_BASE = joinuser("~", ".local")
>    File "/home/systemadmin/bfgapp/lib/python2.5/site.py", line 291, in
> joinuser
>      return os.path.expanduser(os.path.join(*args))
>    File "/usr/lib/python2.5/posixpath.py", line 321, in expanduser
>      userhome = pwd.getpwuid(os.getuid()).pw_dir
> AttributeError: 'module' object has no attribute 'getuid'
>
> *Then I tried to start the engine with the system python,  I got another
> error:*
> Traceback (most recent call last):
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 3185, in _HandleRequest
>      self._Dispatch(dispatcher, self.rfile, outfile, env_dict)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 3128, in _Dispatch
>      base_env_dict=env_dict)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 515, in Dispatch
>      base_env_dict=base_env_dict)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 2387, in Dispatch
>      self._module_dict)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 2297, in ExecuteCGI
>      reset_modules = exec_script(handler_path, cgi_path, hook)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 2193, in ExecuteOrImportScript
>      exec module_code in script_module.__dict__
>    File "/home/systemadmin/bfgapp/app/runner.py", line 47, in <module>
>      __import__(module_name)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1272, in Decorate
>      return func(self, *args, **kwargs)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1922, in load_module
>      return self.FindAndLoadModule(submodule, fullname, search_path)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1272, in Decorate
>      return func(self, *args, **kwargs)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1824, in FindAndLoadModule
>      description)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1272, in Decorate
>      return func(self, *args, **kwargs)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1775, in LoadModuleRestricted
>      description)
>    File "/home/systemadmin/bfgapp/app/bfghack/run.py", line 2, in <module>
>      from repoze.zodbconn.finder import PersistentApplicationFinder
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1272, in Decorate
>      return func(self, *args, **kwargs)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1922, in load_module
>      return self.FindAndLoadModule(submodule, fullname, search_path)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1272, in Decorate
>      return func(self, *args, **kwargs)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1824, in FindAndLoadModule
>      description)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1272, in Decorate
>      return func(self, *args, **kwargs)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1775, in LoadModuleRestricted
>      description)
>    File
> "/home/systemadmin/bfgapp/app/lib/python/repoze.zodbconn-0.10-py2.5.egg/repoze/zodbconn/finder.py",
> line 2, in <module>
>      from repoze.zodbconn.uri import db_from_uri
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1272, in Decorate
>      return func(self, *args, **kwargs)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1922, in load_module
>      return self.FindAndLoadModule(submodule, fullname, search_path)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1272, in Decorate
>      return func(self, *args, **kwargs)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1824, in FindAndLoadModule
>      description)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1272, in Decorate
>      return func(self, *args, **kwargs)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1775, in LoadModuleRestricted
>      description)
>    File
> "/home/systemadmin/bfgapp/app/lib/python/repoze.zodbconn-0.10-py2.5.egg/repoze/zodbconn/uri.py",
> line 3, in <module>
>      from repoze.zodbconn.resolvers import RESOLVERS
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1272, in Decorate
>      return func(self, *args, **kwargs)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1922, in load_module
>      return self.FindAndLoadModule(submodule, fullname, search_path)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1272, in Decorate
>      return func(self, *args, **kwargs)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1824, in FindAndLoadModule
>      description)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1272, in Decorate
>      return func(self, *args, **kwargs)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1775, in LoadModuleRestricted
>      description)
>    File
> "/home/systemadmin/bfgapp/app/lib/python/repoze.zodbconn-0.10-py2.5.egg/repoze/zodbconn/resolvers.py",
> line 10, in <module>
>      from ZODB.FileStorage.FileStorage import FileStorage
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1272, in Decorate
>      return func(self, *args, **kwargs)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1922, in load_module
>      return self.FindAndLoadModule(submodule, fullname, search_path)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1272, in Decorate
>      return func(self, *args, **kwargs)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1824, in FindAndLoadModule
>      description)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1272, in Decorate
>      return func(self, *args, **kwargs)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1775, in LoadModuleRestricted
>      description)
>    File
> "/home/systemadmin/bfgapp/app/lib/python/ZODB3-3.10.0a1-py2.5-linux-i686.egg/ZODB/__init__.py",
> line 17, in <module>
>      from persistent import TimeStamp
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1272, in Decorate
>      return func(self, *args, **kwargs)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1922, in load_module
>      return self.FindAndLoadModule(submodule, fullname, search_path)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1272, in Decorate
>      return func(self, *args, **kwargs)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1824, in FindAndLoadModule
>      description)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1272, in Decorate
>      return func(self, *args, **kwargs)
>    File
> "/home/systemadmin/google_appengine/google/appengine/tools/dev_appserver.py",
> line 1775, in LoadModuleRestricted
>      description)
>    File
> "/home/systemadmin/bfgapp/app/lib/python/ZODB3-3.10.0a1-py2.5-linux-i686.egg/persistent/__init__.py",
> line 19, in <module>
>      from cPersistence import Persistent, GHOST, UPTODATE, CHANGED, STICKY
> ImportError: No module named cPersistence
>
> Any body can help on this issue?
>
>
>
> _______________________________________________
> Repoze-dev mailing list
> Repoze-dev@lists.repoze.org
> http://lists.repoze.org/listinfo/repoze-dev


-- 
Chris McDonough
Agendaless Consulting, Fredericksburg VA
The repoze.bfg Web Application Framework Book: http://bfg.repoze.org/book
_______________________________________________
Repoze-dev mailing list
Repoze-dev@lists.repoze.org
http://lists.repoze.org/listinfo/repoze-dev

Reply via email to