我使用批量下载从数据存储区下载数据(超过1 GB)。 突然,我的互联网停止工作,下载过程停在中间。 我想从它停止的地方恢复。 当我尝试时,我收到以下错误
File "/Users/FYP/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/api/datastore_types.py", line 156, in ValidateString
(name, value, typename(value)))
BadArgumentError: kind should be a string; received 3 (a int):
[INFO ] [WorkerThread-2] Backing off due to errors: 1.0 seconds
[INFO ] An error occurred. Shutting down...
[ERROR ] Error in WorkerThread-0: kind should be a string; received 3 (a int):
这是我下载数据的代码
appcfg.py download_data --config_file=bulkloader.yaml --batch_size=200 --filename=final80_2.csv
--kind=TasksTime1 --url=http://abc.appspot.com/_ah/remote_api --rps_limit=40
--db_filename=bulkloader-progress-20110429.141103 --result_db_filename=bulkloader-results-20110429.141103
如何解决问题?
只需重新运行相同的命令。 根据文档 :
如果传输中断,您可以使用--db_filename = ...参数从中断处继续传输。 该值是工具创建的进度文件的名称,该名称是您在开始传输时使用--db_filename参数提供的名称,或者是包含时间戳的默认名称。 这假设您已安装sqlite3,并且未使用--db_filename = skip禁用进度文件。
您在第一次执行时指定了db_filename
,因此如果您重新运行该命令,它应该找到现有文件并从中断处继续。
我有同样的问题:
Error in WorkerThread-0: kind should be a string; received 3 (a int)
删除所有* .sql3和* .csv文件会停止发生此错误。 显然,是的,恢复已被破坏,但如果您希望能够再次批量下载,则必须禁用它。
当然,我们通常将bulkloader命令包装在函数中以预先清理这些文件。