我的GAE python开发数据存储永远不会被保存到文件中

我刚开始使用GAE(Python 2.7 SDK 1.6.4),我已经在Windows XP(SP3)的eclipse(indigo)中使用Pydev(最新版本)建立了一个简单的测试项目。

它一切正常,我的应用程序可以在数据存储区和blobstore中记录数据,然后检索它,但是当我停止开发服务器并再次启动时,数据存储区中的数据将丢失。 对于保留blob的blobstore来说并不是这样,我可以看到在C: Temp中创建的blobstore文件夹

我做了明智的事情并回顾了老帖子,发现大多数有这个问题的人通过改变数据存储文件的位置来解决它,所以我使用了以下参数;

--datastore_path="${workspace_loc}/myproject/datastore" 
--blobstore_path="${workspace_loc}/myproject/blobstore" 
"${workspace_loc}/myproject/src" 

您可以在同一时间移动blobstore。

blobstore仍然有效,现在blobstore文件夹按照预期在myproject文件夹中创建。 数据存储文件仍然没有被创建,当我停止并重新启动开发服务器时,数据仍然丢失。

dev服务器启动日志包含以下条目

WARNING  2012-04-20 10:49:04,513 datastore_file_stub.py:513] Could not 
read datastore data from C:myworkspacemyprojectdatastore 

所以我知道它试图在正确的地方创建数据存储。

最后,我解除了整个eclipse workspace文件夹,并将其复制到另一台具有完全相同设置的计算机,除了它运行Windows 7而不是Windows XP。

一切工作正常 - 数据存储文件和blobstore文件夹现在都创建在我期望的位置。

我已经在两台计算机上以完全相同的方式设置了eclipse,python,gae,我的项目和我的eclipse启动文件,它在一个而不是另一个上运行。 也许XP与它有关,但说实话我认为这不太可能。

我唯一想到的另一个线索是,GAE开发服务器的最近更改在每次更改后都停止写入数据存储区文件,并且只在退出时刷新,这个问题可能与我的密切相关;

App Engine本地数据存储内容不会保留

但是,将以下代码添加到我的代码中根本没有帮助。

from google.appengine.tools import dev_appserver 
import atexit 
atexit.register(dev_appserver.TearDownStubs) 

所以这不是不正确的终止顺序,只要我可以告诉,虽然它可能是我刚刚添加它在错误的地方(我是新的python)。

无论如何,我很难过,我会很感激你们提出的建议。


这可能是http://code.google.com/p/googleappengine/issues/detail?id=7244和一个错误。 希望很快就会有一个解决方案。


你试过了吗:

--storage_path = ...

除非被--datastore_path,--blobstore_path,--logs_path等覆盖,否则将存储所有本地文件(例如Datastore,Blobstore文件,Google云存储文件,日志等)的路径。

在https://developers.google.com/appengine/docs/python/tools/devserver?csw=1找到

链接地址: http://www.djcxy.com/p/67455.html

上一篇: My GAE python development datastore is never persisted to a file

下一篇: GAE datastore strange bloat