Changeset: c0418591c8ad for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c0418591c8ad Modified Files: sql/backends/monet5/wlr.c sql/backends/monet5/wlr.h sql/backends/monet5/wlr.mal Branch: gdk_tracer Log Message:
Added retrieval of the current master diffs (79 lines): diff --git a/sql/backends/monet5/wlr.c b/sql/backends/monet5/wlr.c --- a/sql/backends/monet5/wlr.c +++ b/sql/backends/monet5/wlr.c @@ -489,7 +489,7 @@ WLRmaster(Client cntxt, MalBlkPtr mb, Ma len = snprintf(wlr_master, IDLENGTH, "%s", *getArgReference_str(stk, pci, 1)); if (len == -1 || len >= IDLENGTH) - throw(MAL, "wlr.replicate", SQLSTATE(42000) "Input value is too large for wlr_master buffer"); + throw(MAL, "wlr.master", SQLSTATE(42000) "Input value is too large for wlr_master buffer"); WLRgetMaster(); WLRgetConfig(); WLRputConfig(); @@ -618,6 +618,23 @@ WLRstop(Client cntxt, MalBlkPtr mb, MalS } str +WLRgetmaster(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci) +{ + str *ret = getArgReference_str(stk,pci,0); + str msg = MAL_SUCCEED; + + (void) cntxt; + (void) mb; + + msg = WLRgetConfig(); + if( wlr_master[0]) + *ret= GDKstrdup(wlr_master); + else + throw(MAL, "wlr.getmaster", "Master not found"); + return msg; +} + +str WLRgetclock(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci) { str *ret = getArgReference_str(stk,pci,0); @@ -633,7 +650,7 @@ WLRgetclock(Client cntxt, MalBlkPtr mb, *ret= GDKstrdup(wlr_read); else *ret= GDKstrdup(str_nil); if (*ret == NULL) - throw(MAL, "wlr.getreplicaclock", SQLSTATE(HY013) MAL_MALLOC_FAIL); + throw(MAL, "wlr.getclock", SQLSTATE(HY013) MAL_MALLOC_FAIL); return msg; } @@ -663,7 +680,7 @@ WLRsetbeat(Client cntxt, MalBlkPtr mb, M (void) mb; new = *getArgReference_int(stk,pci,1); if ( new < wlc_beat || new < 1) - throw(SQL,"replicatebeat",SQLSTATE(42000) "Cycle time should be larger then master or >= 1 second"); + throw(SQL,"setbeat",SQLSTATE(42000) "Cycle time should be larger then master or >= 1 second"); wlr_beat = new; return MAL_SUCCEED; } diff --git a/sql/backends/monet5/wlr.h b/sql/backends/monet5/wlr.h --- a/sql/backends/monet5/wlr.h +++ b/sql/backends/monet5/wlr.h @@ -19,6 +19,7 @@ sql5_export str WLRstart(Client cntxt, M sql5_export str WLRmaster(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); sql5_export str WLRstop(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); sql5_export str WLRreplicate(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); +sql5_export str WLRgetmaster(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); sql5_export str WLRgetclock(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); sql5_export str WLRgettick(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); sql5_export str WLRsetbeat(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); diff --git a/sql/backends/monet5/wlr.mal b/sql/backends/monet5/wlr.mal --- a/sql/backends/monet5/wlr.mal +++ b/sql/backends/monet5/wlr.mal @@ -42,6 +42,10 @@ pattern replicate(id:lng) address WLRreplicate comment "Roll the snapshot forward to a specific transaction id"; +pattern getMaster():str +address WLRgetmaster +comment "What is the current master database"; + pattern setbeat(dur:int) address WLRsetbeat comment "Threshold (in seconds) for re-running queries"; _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list