MCPcopy Index your code
hub / github.com/CovenantSQL/CovenantSQL / writeSingle

Method writeSingle

xenomint/state.go:321–356  ·  view source on GitHub ↗
(
	ctx context.Context, q *types.Query)

Source from the content-addressed store, hash-verified

319}
320
321func (s *State) writeSingle(
322 ctx context.Context, q *types.Query) (res sql.Result, err error,
323) {
324 var (
325 containsDDL bool
326 pattern string
327 args []interface{}
328 //start = time.Now()
329
330 //parsed, executed time.Duration
331 )
332
333 //defer func() {
334 // var fields = log.Fields{}
335 // fields["lastSeq"] = s.current
336 // if parsed > 0 {
337 // fields["1#parsed"] = float64(parsed.Nanoseconds()) / 1000
338 // }
339 // if executed > 0 {
340 // fields["2#executed"] = float64((executed - parsed).Nanoseconds()) / 1000
341 // }
342 // log.WithFields(fields).Debug("writeSingle duration stat (us)")
343 //}()
344 if containsDDL, pattern, args, err = convertQueryAndBuildArgs(q.Pattern, q.Args); err != nil {
345 return
346 }
347 //parsed = time.Since(start)
348 if res, err = s.handler.Exec(pattern, args...); err == nil {
349 if containsDDL {
350 atomic.StoreUint32(&s.hasSchemaChange, 1)
351 }
352 s.incSeq()
353 }
354 //executed = time.Since(start)
355 return
356}
357
358func (s *State) write(
359 ctx context.Context, req *types.Request, isLeader bool) (ref *QueryTracker, resp *types.Response, err error,

Callers 3

writeMethod · 0.95
replayMethod · 0.95

Calls 3

incSeqMethod · 0.95
convertQueryAndBuildArgsFunction · 0.85
ExecMethod · 0.65

Tested by

no test coverage detected