Couchbase的新手问题:多次插入失败
我试图插入100万条记录中couchbase,但我看到,近0.5万条记录插入得到(管理控制台显示517365作为项目计数)。 此外,从管理GUI,我只能看到1000条记录(每个100条记录10页)
我在想,其余的记录正在消失!
1)有人可以帮助我吗?
2)我应该查看哪个日志文件来查找插入失败错误?
我怀疑Couchbase有一个内部队列。一旦它满了,进一步的请求将被删除。如果是,那么如何配置队列大小? PS:我试着查看日志C:\ Program Files \ Couchbase \ Server \ var \ lib \ couchbase \ logs,但找不到任何东西。
public class Test {
public static void main(String[] args) {
ArrayList<URI> nodes = new ArrayList<URI>();
String cbUrl = "http://127.0.0.1:8091/pools";
String dbName = "deafult";
CouchbaseClient client = null;
try {
nodes.add(URI.create(cbUrl));
client = new CouchbaseClient(nodes, dbName, "");
insertRecords(client);
System.out.println("Test Over");
} catch (Exception e) {
e.printStackTrace();
} finally {
// client.shutdown();
}
}
public static void insertRecords(CouchbaseClient client) throws Exception {
int num = 1000000;
for (int n = 1; n <= num; n++) {
System.out.println("Adding: " + n);
client.set(n + "", 0, n + "");
}
}
}
您可以登录操作的状态描述,相处?例如'client.set('foo','bar')。getStatus()' – avsej 2014-09-03 12:48:17
请注意,在此处执行@avsej提及的操作将导致您的应用程序正常工作,因为getStatus()调用将等待操作完成以获取该操作的返回码。 – mikewied 2014-09-03 20:04:27
我试过client.set('foo','bar')。getStatus()。但是我得到{OperationStatus success = false:临时失败}作为许多记录的状态。我如何配置Couchbase缓冲区大小?我想这应该可以解决问题。 – aneez 2014-09-04 03:47:19