forked from lei.chen/myxce
jobid format and parse
This commit is contained in:
parent
26e3c21c87
commit
3488b62716
6 changed files with 212 additions and 15 deletions
|
|
@ -18,7 +18,30 @@
|
|||
((((uint64_t)cluster) << CLUSTER_ID_SHIFT) \
|
||||
| (((uint64_t)apiserver) << APISERVER_ID_SHIFT) \
|
||||
| (((uint64_t)timestamp) << TIMESTAMP_SHIFT) \
|
||||
| (((uint64_t)tag) << TAG_SHIFT) | sequence)
|
||||
| (((uint64_t)tag) << TAG_SHIFT) | (sequence))
|
||||
|
||||
#define EXTRACT_BITS(id, shift, bits) (((id) >> (shift)) & (UMAX_BITS(bits)))
|
||||
|
||||
#define EXTRACT_ID_TAG(id) EXTRACT_BITS(id, TAG_SHIFT, N_TAG_BITS)
|
||||
|
||||
#define EXTRACT_ID_CLUSTER(id) \
|
||||
EXTRACT_BITS(id, CLUSTER_ID_SHIFT, N_CLUSTER_ID_BITS)
|
||||
|
||||
#define EXTRACT_ID_APISERVER(id) \
|
||||
EXTRACT_BITS(id, APISERVER_ID_SHIFT, N_APISERVER_ID_BITS)
|
||||
|
||||
#define EXTRACT_ID_TIMESTAMP(id) \
|
||||
EXTRACT_BITS(id, TIMESTAMP_SHIFT, N_TIMESTAMP_BITS)
|
||||
|
||||
#define EXTRACT_ID_SEQUENCE(id) EXTRACT_BITS(id, 0, N_SEQUENCE_BITS)
|
||||
|
||||
#define EXTRACT_ARRAY_JOB(id) \
|
||||
((((id) >> SEQUENCE_HIGH_SHIFT) \
|
||||
& UMAX_BITS(N_SEQUENCE_BITS - SEQUENCE_HIGH_SHIFT)) \
|
||||
<< SEQUENCE_HIGH_SHIFT)
|
||||
|
||||
#define EXTRACT_ARRAY_IDX(id) \
|
||||
EXTRACT_BITS(id, 0, (N_SEQUENCE_BITS - SEQUENCE_HIGH_SHIFT))
|
||||
|
||||
#define ROUNDUP(v, bits) (((v) + UMAX_BITS(bits)) & ~UMAX_BITS(bits))
|
||||
|
||||
|
|
@ -44,9 +67,6 @@
|
|||
#define N_EL_ARRAY(arr) (sizeof(arr) / sizeof(arr[0]))
|
||||
#define PTR_STEP(p, delta) ((void*)(((char*)p) + (delta)))
|
||||
|
||||
#define N_EL_ARRAY(arr) (sizeof(arr) / sizeof(arr[0]))
|
||||
#define PTR_STEP(p, delta) ((void*)(((char*)p) + (delta)))
|
||||
|
||||
/* move the owner ship of pointer from src to dst */
|
||||
#define MOVE_PTR(dst, src) \
|
||||
do { \
|
||||
|
|
@ -100,4 +120,7 @@ extern xce_res_threshold_t** dup_resource_thresholds(xce_res_threshold_t**,
|
|||
extern void free_resval_with_idx_list(xce_val_with_idx_t***, int);
|
||||
extern void free_strlist(xce_strlist_t*);
|
||||
|
||||
extern int fmt_jobid(char*, size_t, uint64_t);
|
||||
extern int parse_jobid(uint64_t*, char*);
|
||||
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue