Skip to content

Instantly share code, notes, and snippets.

Roi Lipman swilly22

View GitHub Profile
View GxB_Matrix_tuple_iter.h
// Create a new matrix iterator
GrB_Info GxB_MatrixTupleIter_new
(
GxB_MatrixTupleIter **iter, // iterator to create
GrB_Matrix A // matrix being iterated
) ;
// Iterate over specific row
GrB_Info GxB_MatrixTupleIter_iterate_row
(
@swilly22
swilly22 / Redis Malloc Dockerfile
Created Feb 27, 2020
Docker image containing Redis-Server compiled with malloc instead of j-malloc
View Redis Malloc Dockerfile
#
# Redis malloc
#
# Pull base image.
FROM ubuntu:14.04
# Install.
RUN \
sed -i 's/# \(.*multiverse$\)/\1/g' /etc/apt/sources.list && \
View longjmp.c
// ExecutionPlan.c
function Query_Execute() {
/* Set an exception-handling breakpoint to capture run-time errors.
* encountered_error will be set to 0 when setjmp is invoked, and will be nonzero if
* a downstream exception returns us to this breakpoint. */
QueryCtx *ctx = pthread_getspecific(_tlsQueryCtxKey);
if(!ctx->breakpoint) ctx->breakpoint = rm_malloc(sizeof(jmp_buf));
int encountered_error = setjmp(*ctx->breakpoint);
if(encountered_error) {
View threadjump.c
function Query_Execute() {
/* Call ExecutionPlan_Execute on a different thread
* and wait for it to exit */
char *error = NULL;
pthread_t thread;
pthread_create(&thread, NULL, ExecutionPlan_Execute, NULL);
pthread_join(thread, &error);
if(error != NULL) {
// Exception been thrown.
View illegaljump.c
function A() {
jump there; // Can't jump outside of current scope.
}
function B() {
there:
...
}
View trycatch.c
try {
// Perform work which might throw an exception
work();
} catch (error *e) {
reportError(e);
}
View trycatch.c
try {
// Perform work which might throw an exception
work();
} catch (error *e) {
reportError(e);
}
View throw.py
if(cond) {
raise Exception("something went wrong")
}
View toUpper.c
SIValue toUpper(SIValue v) {
SIType actual_type = SI_TYPE(v);
if(actual_type != SI_STRING) {
const char *actual_type_str = SIType_ToString(actual_type);
raise("Type mismatch: expected string but was %s", actual_type_str);
}
}
View WithGoTo.c
void f(void) {
void *a = NULL;
void *b = NULL;
void *c = NULL;
a = malloc(32);
//...
if(cond1) goto cleanup;
b = malloc(64);
You can’t perform that action at this time.