public FileTest(String cfgPath) {
try {
MemProperties.init(cfgPath);
MongoOptions mongoOptions = new MongoOptions();
mongoOptions.slaveOk = true;
mongoOptions.connectionsPerHost =
Integer.parseInt(MemProperties
.getValue("pool_size"));
ServerAddress address = new ServerAddress(MemProperties
.getValue("mongo_ip"),
Integer.parseInt(MemProperties
.getValue("mongo_port")));
mongo = new Mongo(address, mongoOptions);
// mongo.slaveOk();
picList = ImageReader.readFromDB();
db = mongo.getDB(MemProperties.getValue("mongo_dbname"));
db.slaveOk();
} catch (Exception e) {
e.printStackTrace();
}
}
public void queryFromGridFS(int id) throws Exception {
BasicDBObject query = new BasicDBObject();
query.put("id", id);
GridFS gridFS = new GridFS(db,
MemProperties.getValue("file_bucket"));
GridFSDBFile dbFile = gridFS.findOne(query);
if (dbFile != null) {
dbFile.writeTo(new ByteArrayOutputStream());
System.out.println(gridFS.getDB().getMongo().getAddress());
} else {
System.out.println("miss");
}
// dbFile.writeTo("e:\\test\\" + dbFile.getFilename());
}
Exception in thread "main" com.mongodb.MongoException: not master
at com.mongodb.CommandResult.getException(CommandResult.java:82)
at com.mongodb.CommandResult.throwOnError(CommandResult.java:116)
at com.mongodb.DBTCPConnector._checkWriteError(DBTCPConnector.java:
131)
at com.mongodb.DBTCPConnector.say(DBTCPConnector.java:153)
at com.mongodb.DBTCPConnector.say(DBTCPConnector.java:137)
at com.mongodb.DBApiLayer$MyCollection.insert(DBApiLayer.java:255)
at com.mongodb.DBApiLayer$MyCollection.createIndex(DBApiLayer.java:
347)
at com.mongodb.DBCollection.ensureIndex(DBCollection.java:437)
at com.mongodb.DBCollection.ensureIndex(DBCollection.java:385)
at com.mongodb.gridfs.GridFS.<init>(GridFS.java:77)
at mongo.test.FileTest.queryFromGridFS(FileTest.java:139)
at mongo.test.FileTest.main(FileTest.java:63)
On 7月26日, 下午1时40分, Eliot Horowitz <
el...@10gen.com> wrote:
> Can you send the code and exact error?
>
> 2011/7/26 一球成名 <
mache...@gmail.com>