Skip to content

Commit

Permalink
Merge branch 'master' into mx_mysql
Browse files Browse the repository at this point in the history
* master:
  mxqsub: Add warnings for --runtime usage
  mxqsub: Reword --help
  mysql: Only run trigger if job_status changes
  mysql: Add column group_jobs_inq
  mysql: Add totals to mxq_group
  mxq_job_dump: Remove mxq_job_dump
  mysql: Allow transistion from job_status 400|750 => 999
  MXQ: bump version
  mxqdump: Add more status alias options
  mxqdump: Improve functionality
  mxq_job: Add mxq_job_status_to_name()
  mxqsub: Reword --help
  mx_util: Add mx_streq*() macros
  mysql: Add index on group_id in table mxq_job
  mxqdump: Use constants for uninitialized arguments
  MXQ: bump version
  mxqdump: Die on unrecognized options
  mxqdump: Add --all option to dump all groups
  mxqdump: Change output format
  mxqdump: Add -g option
  mxqdump: Use mx_mysql_do_statement()
  mxqdump: Add print_group()
  mxqdump: Move field definitions and bindings outside of function
  mxqdump: Move code to dump_active_groups()
  MXQ: bump version
  mxqdump: Change sort order
  mxqdump: Fix typo in usage
  • Loading branch information
mariux committed Jun 2, 2015
2 parents 4c21afd + e10e659 commit 92cbfda
Show file tree
Hide file tree
Showing 9 changed files with 1,226 additions and 494 deletions.
2 changes: 0 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ mx_util.o
mxq_group.o
mxqdump.o
mxq_job.o
mxq_job_dump.o
mxq_mysql.o
mxqd.o
mxqsub.o
Expand All @@ -20,7 +19,6 @@ mx_mysql.o
mxqsub
mxqdump
mxqkill
mxq_job_dump
mxqd
test_mx_util
test_mx_log
Expand Down
25 changes: 4 additions & 21 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@

MXQ_VERSION_MAJOR = 0
MXQ_VERSION_MINOR = 3
MXQ_VERSION_PATCH = 3
MXQ_VERSION_MINOR = 4
MXQ_VERSION_PATCH = 0
MXQ_VERSION_EXTRA = "beta"

MXQ_VERSION = ${MXQ_VERSION_MAJOR}.${MXQ_VERSION_MINOR}.${MXQ_VERSION_PATCH}
Expand Down Expand Up @@ -94,6 +94,7 @@ CFLAGS_MYSQL += ${CFLAGS_MXQ_MYSQL_DEFAULT_GROUP}
CFLAGS += -g
CFLAGS += -Wall
CFLAGS += -Wno-unused-variable
CFLAGS += -Wno-unused-function
CFLAGS += -DMXQ_VERSION=\"${MXQ_VERSION}\"
CFLAGS += -DMXQ_VERSIONFULL=\"${MXQ_VERSIONFULL}\"
CFLAGS += -DMXQ_VERSIONDATE=\"${MXQ_VERSIONDATE}\"
Expand Down Expand Up @@ -289,14 +290,6 @@ mxqkill.o: CFLAGS += $(CFLAGS_MYSQL)

clean: CLEAN += mxqkill.o

### mxq_job_dump.o -----------------------------------------------------

mxq_job_dump.o: $(mx_log.h)
mxq_job_dump.o: $(mxq_util.h)
mxq_job_dump.o: $(mxq_mysql.h)

clean: CLEAN += mxq_job_dump.o

### mxq_util.o ---------------------------------------------------------

mxq_util.o: $(mx_log.h)
Expand Down Expand Up @@ -398,6 +391,7 @@ install:: mxqsub
mxqdump: mx_log.o
mxqdump: mx_mysql.o
mxqdump: mxq_group.o
mxqdump: mxq_job.o
mxqdump: mxq_mysql.o
mxqdump: mxq_util.o
mxqdump: mx_util.o
Expand Down Expand Up @@ -426,17 +420,6 @@ clean: CLEAN += mxqkill
install:: mxqkill
$(call quiet-installforuser,$(SUID_MODE),$(UID_CLIENT),$(GID_CLIENT),mxqkill,${DESTDIR}${BINDIR}/mxqkill)

### mxq_job_dump -------------------------------------------------------

mxq_job_dump: mx_log.o
mxq_job_dump: mxq_mysql.o
mxq_job_dump: mxq_util.o
mxq_job_dump: LDLIBS += $(LDLIBS_MYSQL)

build: mxq_job_dump

clean: CLEAN += mxq_job_dump

########################################################################

install:: mxqdctl-hostconfig.sh
Expand Down
6 changes: 6 additions & 0 deletions mx_util.h
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,12 @@ static inline void __mx_free(void *ptr) {
#undef unlikely
#define unlikely(x) __builtin_expect((x),0)

#undef mx_streq
#define mx_streq(a, b) (strcmp((a), (b)) == 0)

#undef mx_streq_nocase
#define mx_streq_nocase(a, b) (strcasecmp((a), (b)) == 0)

int mx_strbeginswith(char *str, const char *start, char **endptr);
int mx_stribeginswith(char *str, const char *start, char **endptr);
int mx_strbeginswithany(char *str, char **starts, char **endptr);
Expand Down
34 changes: 34 additions & 0 deletions mxq_job.c
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,40 @@ enum mxq_job_columns {
MXQ_JOB_COL__END
};

char *mxq_job_status_to_name(uint64_t status)
{
switch (status) {
case MXQ_JOB_STATUS_INQ:
return "inq";
case MXQ_JOB_STATUS_ASSIGNED:
return "assigned";
case MXQ_JOB_STATUS_LOADED:
return "loaded";
case MXQ_JOB_STATUS_RUNNING:
return "running";
case MXQ_JOB_STATUS_UNKNOWN_RUN:
return "running-unknown";
case MXQ_JOB_STATUS_EXTRUNNING:
return "running-external";
case MXQ_JOB_STATUS_STOPPED:
return "stopped";
case MXQ_JOB_STATUS_EXIT:
return "exited";
case MXQ_JOB_STATUS_KILLED:
return "killed";
case MXQ_JOB_STATUS_FAILED:
return "failed";
case MXQ_JOB_STATUS_CANCELLED:
return "cancelled";
case MXQ_JOB_STATUS_UNKNOWN:
return "unknown";
case MXQ_JOB_STATUS_FINISHED:
return "finished";
}

return "invalid";
}

static inline int mxq_job_bind_results(MYSQL_BIND *bind, struct mxq_job *j)
{
memset(bind, 0, sizeof(*bind)*MXQ_JOB_COL__END);
Expand Down
2 changes: 2 additions & 0 deletions mxq_job.h
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,8 @@ struct mxq_job {
#define status_str(x) _to_string(x)


char *mxq_job_status_to_name(uint64_t status);

int mxq_job_load_assigned(MYSQL *mysql, struct mxq_job *job, char *hostname, char *server_id);
void mxq_job_free_content(struct mxq_job *j);
int mxq_job_load(MYSQL *mysql, struct mxq_job *mxqjob, uint64_t group_id, char *hostname, char *server_id);
Expand Down
Loading

0 comments on commit 92cbfda

Please sign in to comment.