MCPcopy Create free account
hub / github.com/e2wugui/zeze / ProcessGetRequest

Method ProcessGetRequest

ZezeJava/ZezeJava/src/main/java/Zeze/Dbh2/Dbh2.java:207–229  ·  view source on GitHub ↗
(Zeze.Builtin.Dbh2.Get r)

Source from the content-addressed store, hash-verified

205 }
206
207 @Override
208 protected long ProcessGetRequest(Zeze.Builtin.Dbh2.Get r) throws RocksDBException, InterruptedException {
209 stateMachine.counterGet.incrementAndGet();
210// var lock = getLocks().get(r.Argument.getKey());
211// lock.lock(this);
212// try {
213 // 直接读取数据库。是否可以读取由raft控制。raft启动时有准备阶段。
214 var bucket = stateMachine.getBucket();
215 if (!bucket.inBucket(r.Argument.getDatabase(), r.Argument.getTable(), r.Argument.getKey()))
216 return errorCode(eBucketMismatch);
217 var value = bucket.get(r.Argument.getKey());
218 if (null == value)
219 r.Result.setNull(true);
220 else {
221 r.Result.setValue(value);
222 stateMachine.sizeGet.addAndGet(value.size());
223 }
224 r.SendResult();
225// } finally {
226// lock.unlock();
227// }
228 return 0;
229 }
230
231 @Override
232 protected long ProcessKeepAliveRequest(KeepAlive r) throws Exception {

Callers

nothing calls this directly

Calls 11

getBucketMethod · 0.80
inBucketMethod · 0.80
errorCodeMethod · 0.80
getDatabaseMethod · 0.65
getTableMethod · 0.65
getKeyMethod · 0.65
getMethod · 0.65
sizeMethod · 0.65
setNullMethod · 0.45
setValueMethod · 0.45
SendResultMethod · 0.45

Tested by

no test coverage detected