2016-04-29 149 views
0

我在嘗試將Google json文件導入到Google Cloud Compute Instance中的RethinkDB時出錯,我不知道該如何處理此錯誤。任何幫助表示讚賞。這是錯誤:導入到RethinkDB時出錯

[email protected]:~# rethinkdb import -f users_0.json --table test.users 
Traceback (most recent call last): 
    File "/usr/local/bin/rethinkdb-import", line 9, in <module> 
    load_entry_point('rethinkdb==2.3.0.post1', 'console_scripts', 'rethinkdb-import')() 
    File "/usr/local/lib/python2.7/dist-packages/rethinkdb/_import.py", line 929, in main 
    import_file(options) 
    File "/usr/local/lib/python2.7/dist-packages/rethinkdb/_import.py", line 904, in import_file 
    pkey = rdb_call_wrapper(conn_fn, "table check", table_check, db, table, options["create_args"], options["force"]) 
    File "/usr/local/lib/python2.7/dist-packages/rethinkdb/_backup.py", line 78, in rdb_call_wrapper 
    return fn(progress, conn, *args, **kwargs) 
    File "/usr/local/lib/python2.7/dist-packages/rethinkdb/_import.py", line 885, in table_check 
if not options["quiet"]: 
NameError: global name 'options' is not defined 

RethinkDB運行在與Docker相同的虛擬機上。我用這個命令實例化了它:

docker run -i -t -p 8080:8080 -p 28015:28015 -p 29015:29015 rethinkdb 
+0

嘿@BenSimmons,你應該更新你的Python驅動程序,因爲此評論描述並再試一次。對這個錯誤感到抱歉! https://github.com/rethinkdb/rethinkdb/issues/5736#issuecomment-215922401 – dalanmiller

回答

0

他們正在使用他們還沒有定義的變量。我從pypi中提取該版本的代碼2.3.0.post1(包括下面的bug中的函數)。我也檢查了版本2.2.0.post2,我沒有看到那個bug,所以降級這個軟件包,你應該沒問題。

def table_check(progress, conn, db, table, create_args, force): 
    pkey = None 

if db == "rethinkdb": 
    raise RuntimeError("Error: Cannot import a table into the system database: 'rethinkdb'") 

if db not in r.db_list().run(conn): 
    r.db_create(db).run(conn) 

if table in r.db(db).table_list().run(conn): 
    if not force: 
     raise RuntimeError("Error: Table already exists, run with --force if you want to import into the existing table") 

    if 'primary_key' in create_args: 
     pkey = r.db(db).table(table).info()["primary_key"].run(conn) 
     if create_args["primary_key"] != pkey: 
      raise RuntimeError("Error: Table already exists with a different primary key") 
else: 
    if 'primary_key' in create_args: 
     pkey = create_args["primary_key"] 
    else: 
     if not options["quiet"]: 
      print("no primary key specified, using default primary key when creating table") 
    r.db(db).table_create(table, **create_args).run(conn) 

return pkey