-
Notifications
You must be signed in to change notification settings - Fork 174
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CDB front and backend #176
Conversation
straight copy-pasta of src/server/{twemcache => cdb} checkpoint - squash remove flag checkpoint create cdb workspace so shared libs link properly gah i need someone who knows cmake failling, about to try rando CMakeRust module got further with this Rust macro stuff omg, actual progress oops, add the macros rearrange and clean up dependencies clean up cruft compiles and links on debian beginning pelikan side of integration checkpoint generate both static and shared targets shared library building ftw? this is fine. checkpoint - string still getting truncated fix build check try and fix build debugging cmake vars checkpoint hi wil revert change to system calling scheme, no diff finally seems to have linked properly checkpoint checkpoint ignore cdb files squash add compile_commands.json to gitignore squash squash remove redundant return hook up cdb_get, munge a response and cleanup missed two places for raw_val need to rework storage strategy shit, revert this mess Revert "shit, revert this mess" This reverts commit e369bd7. gahhhhhh ugh, this is sketchy bindgen is compiling and linking compiles again, finally
… fix some formatting stuff
src/server/cdb/main.c
Outdated
{ | ||
cdb_setup(); | ||
|
||
char *cdb_file_path = strdup("/Users/jsimms/pelikan/dict.cdb"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
herp derp
config/cdb.conf
Outdated
klog_max: 1073741824 | ||
|
||
# TODO: this is _obviously_ temporary | ||
# cdb_file_path: /Users/jsimms/git/tub/cdb.rs/dict.cdb |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wasn't sure how the path to the cdb file should be specified, i.e. config file or command-line arg
@@ -18,6 +18,8 @@ struct bstring rsp_strings[] = { | |||
FREEPOOL(rsp_pool, rspq, response); | |||
static struct rsp_pool rspp; | |||
static bool rspp_init = false; | |||
/* TODO(simms): this should probably be readable from rust */ | |||
static size_t rsp_val_buf_size = RSP_VAL_BUF_SIZE; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wasn't sure how to make this visible in rust. I guess having a function rust can call to get the value would be one way.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
in a follow-up branch i've implemented this as a param that gets passed through to the cdb handle creation method.
src/server/cdb/data/process.c
Outdated
* and we're setting the len of the buffer to the allocation size. This is | ||
* so that we can create a rust slice from this information. */ | ||
rsp->vstr.data = rsp->vbuf; | ||
rsp->vstr.len = RSP_VAL_BUF_SIZE; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is where the newly added rsp->vbuf
gets hooked up for use on the rust side.
rsp->type = RSP_VALUE; | ||
rsp->key = *key; | ||
rsp->flag = 0; | ||
rsp->vcas = 0; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was operating under the assumption that rsp->flag
and rsp-vcas
were ok to leave at 0 here for a read-only backing store
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
src/storage/cdb/cdb_ccommon/build.rs
Outdated
|
||
println!("cargo:rustc-link-search-native={}", lib_dir.to_str().unwrap()); | ||
|
||
// XXX: assume _build dir at pelikan top level |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
TODO: remove, cruft
#![allow(non_snake_case)] | ||
#![allow(dead_code)] | ||
include!(concat!(env!("OUT_DIR"), "/bindings.rs")); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This block, cargo-culted from the bindgen user guide, pulls all of the generated types in to the 'bindings' mod
* move hooks out into shell scripts * update mac os x image * allow mac os tests to fail in CI until we can fix the flaky test * install 'check' as part of the "configure" phase of cmake * this is *obviously wrong* but I don't know enough about cmake to do it correctly. This works, albeit in a dumb way. * this is an improvement over the status quo in that it will download the check tarball and build it on any system we build on, so there's a consistent version and it's installed before tests are run.
* TARGET_CDB is off by default * remove slab-related stuff from CDB server
rsp->type = RSP_VALUE; | ||
rsp->key = *key; | ||
rsp->flag = 0; | ||
rsp->vcas = 0; |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
log_verb("get req %p processed, %d out of %d keys found", req, req->nfound, i); | ||
} | ||
|
||
static void |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
src/server/cdb/data/process.c
Outdated
_process_gets(rsp, req); | ||
break; | ||
|
||
case REQ_DELETE: |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
* make stats log related changes in twemcache * Squashed 'deps/ccommon/' changes from f5efe29..4acc53a 4acc53a Stats to file (#186) 2168fec minimize osx build config (#185) 42b24de Simplify rust options, specify fewer output targets (#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (#182) a6a54d9 remove endian-specific logic from str*cmp (#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (#179) c9c5ee5 improve cc_bstring string literal and cstring names (#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (#173) e710712 use accept4 for tcp_accept when available (#171) 21ba10e Remove cargo lock for shared lib, closes #169 (#172) 24660f1 update style guide (#170) 17baf1e Per thread logging (#168) git-subtree-dir: deps/ccommon git-subtree-split: 4acc53a * fix compile * Squashed 'deps/ccommon/' changes from 4acc53a..05eb03e 05eb03e fix inconsistent naming and bump version (#187) git-subtree-dir: deps/ccommon git-subtree-split: 05eb03e * Squashed 'deps/ccommon/' changes from 05eb03e..a4c0334 a4c0334 add linebreak to stats_log() (#188) git-subtree-dir: deps/ccommon git-subtree-split: a4c0334 * use finer grain proc time * update metric description
1c8df42 Add basic support of build type (twitter#199) 7107988 Fix now_ns() (twitter#198) da240e5 cc: extend cc_util module (twitter#196) 4846b15 Fix TAILQ_REINIT (twitter#195) 4f5dbb0 Update Cmake version to 2.8 (twitter#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (twitter#194) 57acaf6 cc: extend queue module (twitter#193) a64ada2 cc: extend duration module (twitter#192) b117632 reverting CMake file changes (twitter#191) dea5bee backport changes made to ccommon in pelikan (twitter#190) a4c0334 add linebreak to stats_log() (twitter#188) 05eb03e fix inconsistent naming and bump version (twitter#187) 4acc53a Stats to file (twitter#186) 2168fec minimize osx build config (twitter#185) 42b24de Simplify rust options, specify fewer output targets (twitter#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (twitter#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (twitter#182) a6a54d9 remove endian-specific logic from str*cmp (twitter#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (twitter#179) c9c5ee5 improve cc_bstring string literal and cstring names (twitter#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (twitter#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (twitter#173) e710712 use accept4 for tcp_accept when available (twitter#171) 21ba10e Remove cargo lock for shared lib, closes twitter#169 (twitter#172) 24660f1 update style guide (twitter#170) 17baf1e Per thread logging (twitter#168) git-subtree-dir: deps/ccommon git-subtree-split: 1c8df42
1c8df42 Add basic support of build type (#199) 7107988 Fix now_ns() (#198) da240e5 cc: extend cc_util module (#196) 4846b15 Fix TAILQ_REINIT (#195) 4f5dbb0 Update Cmake version to 2.8 (#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (#194) 57acaf6 cc: extend queue module (#193) a64ada2 cc: extend duration module (#192) b117632 reverting CMake file changes (#191) dea5bee backport changes made to ccommon in pelikan (#190) a4c0334 add linebreak to stats_log() (#188) 05eb03e fix inconsistent naming and bump version (#187) 4acc53a Stats to file (#186) 2168fec minimize osx build config (#185) 42b24de Simplify rust options, specify fewer output targets (#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (#182) a6a54d9 remove endian-specific logic from str*cmp (#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (#179) c9c5ee5 improve cc_bstring string literal and cstring names (#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (#173) e710712 use accept4 for tcp_accept when available (#171) 21ba10e Remove cargo lock for shared lib, closes #169 (#172) 24660f1 update style guide (#170) 17baf1e Per thread logging (#168) git-subtree-dir: deps/ccommon git-subtree-split: 1c8df42
2a62281 add atoi64 to bstring (twitter#206) f71c657 cc_option simplify _allowed_in_name (twitter#205) 24e3131 Add ITT instrumentation option (twitter#204) 236c98d Fix docs (twitter#200) e58f6a8 cc_array and cc_ring_array NULL fixes (twitter#201) 1c8df42 Add basic support of build type (twitter#199) 7107988 Fix now_ns() (twitter#198) da240e5 cc: extend cc_util module (twitter#196) 4846b15 Fix TAILQ_REINIT (twitter#195) 4f5dbb0 Update Cmake version to 2.8 (twitter#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (twitter#194) 57acaf6 cc: extend queue module (twitter#193) a64ada2 cc: extend duration module (twitter#192) b117632 reverting CMake file changes (twitter#191) dea5bee backport changes made to ccommon in pelikan (twitter#190) a4c0334 add linebreak to stats_log() (twitter#188) 05eb03e fix inconsistent naming and bump version (twitter#187) 4acc53a Stats to file (twitter#186) 2168fec minimize osx build config (twitter#185) 42b24de Simplify rust options, specify fewer output targets (twitter#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (twitter#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (twitter#182) a6a54d9 remove endian-specific logic from str*cmp (twitter#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (twitter#179) c9c5ee5 improve cc_bstring string literal and cstring names (twitter#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (twitter#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (twitter#173) e710712 use accept4 for tcp_accept when available (twitter#171) 21ba10e Remove cargo lock for shared lib, closes twitter#169 (twitter#172) 24660f1 update style guide (twitter#170) 17baf1e Per thread logging (twitter#168) git-subtree-dir: deps/ccommon git-subtree-split: 2a62281
* renaming intarray to sarray (sorted array) * header changes done * things compile now * fix bug in request.c * update func signature * Squashed 'deps/ccommon/' changes from f5efe29..2a62281 2a62281 add atoi64 to bstring (#206) f71c657 cc_option simplify _allowed_in_name (#205) 24e3131 Add ITT instrumentation option (#204) 236c98d Fix docs (#200) e58f6a8 cc_array and cc_ring_array NULL fixes (#201) 1c8df42 Add basic support of build type (#199) 7107988 Fix now_ns() (#198) da240e5 cc: extend cc_util module (#196) 4846b15 Fix TAILQ_REINIT (#195) 4f5dbb0 Update Cmake version to 2.8 (#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (#194) 57acaf6 cc: extend queue module (#193) a64ada2 cc: extend duration module (#192) b117632 reverting CMake file changes (#191) dea5bee backport changes made to ccommon in pelikan (#190) a4c0334 add linebreak to stats_log() (#188) 05eb03e fix inconsistent naming and bump version (#187) 4acc53a Stats to file (#186) 2168fec minimize osx build config (#185) 42b24de Simplify rust options, specify fewer output targets (#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (#182) a6a54d9 remove endian-specific logic from str*cmp (#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (#179) c9c5ee5 improve cc_bstring string literal and cstring names (#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (#173) e710712 use accept4 for tcp_accept when available (#171) 21ba10e Remove cargo lock for shared lib, closes #169 (#172) 24660f1 update style guide (#170) 17baf1e Per thread logging (#168) git-subtree-dir: deps/ccommon git-subtree-split: 2a62281 * fix sarray bugs
8737d99 continue on server socket on non-blocking errors (twitter#209) 2a62281 add atoi64 to bstring (twitter#206) f71c657 cc_option simplify _allowed_in_name (twitter#205) 24e3131 Add ITT instrumentation option (twitter#204) 236c98d Fix docs (twitter#200) e58f6a8 cc_array and cc_ring_array NULL fixes (twitter#201) 1c8df42 Add basic support of build type (twitter#199) 7107988 Fix now_ns() (twitter#198) da240e5 cc: extend cc_util module (twitter#196) 4846b15 Fix TAILQ_REINIT (twitter#195) 4f5dbb0 Update Cmake version to 2.8 (twitter#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (twitter#194) 57acaf6 cc: extend queue module (twitter#193) a64ada2 cc: extend duration module (twitter#192) b117632 reverting CMake file changes (twitter#191) dea5bee backport changes made to ccommon in pelikan (twitter#190) a4c0334 add linebreak to stats_log() (twitter#188) 05eb03e fix inconsistent naming and bump version (twitter#187) 4acc53a Stats to file (twitter#186) 2168fec minimize osx build config (twitter#185) 42b24de Simplify rust options, specify fewer output targets (twitter#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (twitter#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (twitter#182) a6a54d9 remove endian-specific logic from str*cmp (twitter#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (twitter#179) c9c5ee5 improve cc_bstring string literal and cstring names (twitter#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (twitter#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (twitter#173) e710712 use accept4 for tcp_accept when available (twitter#171) 21ba10e Remove cargo lock for shared lib, closes twitter#169 (twitter#172) 24660f1 update style guide (twitter#170) 17baf1e Per thread logging (twitter#168) git-subtree-dir: deps/ccommon git-subtree-split: 8737d99
8737d99 continue on server socket on non-blocking errors (#209) 2a62281 add atoi64 to bstring (#206) f71c657 cc_option simplify _allowed_in_name (#205) 24e3131 Add ITT instrumentation option (#204) 236c98d Fix docs (#200) e58f6a8 cc_array and cc_ring_array NULL fixes (#201) 1c8df42 Add basic support of build type (#199) 7107988 Fix now_ns() (#198) da240e5 cc: extend cc_util module (#196) 4846b15 Fix TAILQ_REINIT (#195) 4f5dbb0 Update Cmake version to 2.8 (#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (#194) 57acaf6 cc: extend queue module (#193) a64ada2 cc: extend duration module (#192) b117632 reverting CMake file changes (#191) dea5bee backport changes made to ccommon in pelikan (#190) a4c0334 add linebreak to stats_log() (#188) 05eb03e fix inconsistent naming and bump version (#187) 4acc53a Stats to file (#186) 2168fec minimize osx build config (#185) 42b24de Simplify rust options, specify fewer output targets (#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (#182) a6a54d9 remove endian-specific logic from str*cmp (#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (#179) c9c5ee5 improve cc_bstring string literal and cstring names (#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (#173) e710712 use accept4 for tcp_accept when available (#171) 21ba10e Remove cargo lock for shared lib, closes #169 (#172) 24660f1 update style guide (#170) 17baf1e Per thread logging (#168) git-subtree-dir: deps/ccommon git-subtree-split: 8737d99
* renaming intarray to sarray (sorted array) * header changes done * things compile now * fix bug in request.c * update func signature * Squashed 'deps/ccommon/' changes from f5efe29..2a62281 2a62281 add atoi64 to bstring (twitter#206) f71c657 cc_option simplify _allowed_in_name (twitter#205) 24e3131 Add ITT instrumentation option (twitter#204) 236c98d Fix docs (twitter#200) e58f6a8 cc_array and cc_ring_array NULL fixes (twitter#201) 1c8df42 Add basic support of build type (twitter#199) 7107988 Fix now_ns() (twitter#198) da240e5 cc: extend cc_util module (twitter#196) 4846b15 Fix TAILQ_REINIT (twitter#195) 4f5dbb0 Update Cmake version to 2.8 (twitter#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (twitter#194) 57acaf6 cc: extend queue module (twitter#193) a64ada2 cc: extend duration module (twitter#192) b117632 reverting CMake file changes (twitter#191) dea5bee backport changes made to ccommon in pelikan (twitter#190) a4c0334 add linebreak to stats_log() (twitter#188) 05eb03e fix inconsistent naming and bump version (twitter#187) 4acc53a Stats to file (twitter#186) 2168fec minimize osx build config (twitter#185) 42b24de Simplify rust options, specify fewer output targets (twitter#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (twitter#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (twitter#182) a6a54d9 remove endian-specific logic from str*cmp (twitter#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (twitter#179) c9c5ee5 improve cc_bstring string literal and cstring names (twitter#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (twitter#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (twitter#173) e710712 use accept4 for tcp_accept when available (twitter#171) 21ba10e Remove cargo lock for shared lib, closes twitter#169 (twitter#172) 24660f1 update style guide (twitter#170) 17baf1e Per thread logging (twitter#168) git-subtree-dir: deps/ccommon git-subtree-split: 2a62281 * fix sarray bugs
8737d99 continue on server socket on non-blocking errors (twitter#209) 2a62281 add atoi64 to bstring (twitter#206) f71c657 cc_option simplify _allowed_in_name (twitter#205) 24e3131 Add ITT instrumentation option (twitter#204) 236c98d Fix docs (twitter#200) e58f6a8 cc_array and cc_ring_array NULL fixes (twitter#201) 1c8df42 Add basic support of build type (twitter#199) 7107988 Fix now_ns() (twitter#198) da240e5 cc: extend cc_util module (twitter#196) 4846b15 Fix TAILQ_REINIT (twitter#195) 4f5dbb0 Update Cmake version to 2.8 (twitter#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (twitter#194) 57acaf6 cc: extend queue module (twitter#193) a64ada2 cc: extend duration module (twitter#192) b117632 reverting CMake file changes (twitter#191) dea5bee backport changes made to ccommon in pelikan (twitter#190) a4c0334 add linebreak to stats_log() (twitter#188) 05eb03e fix inconsistent naming and bump version (twitter#187) 4acc53a Stats to file (twitter#186) 2168fec minimize osx build config (twitter#185) 42b24de Simplify rust options, specify fewer output targets (twitter#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (twitter#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (twitter#182) a6a54d9 remove endian-specific logic from str*cmp (twitter#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (twitter#179) c9c5ee5 improve cc_bstring string literal and cstring names (twitter#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (twitter#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (twitter#173) e710712 use accept4 for tcp_accept when available (twitter#171) 21ba10e Remove cargo lock for shared lib, closes twitter#169 (twitter#172) 24660f1 update style guide (twitter#170) 17baf1e Per thread logging (twitter#168) git-subtree-dir: deps/ccommon git-subtree-split: 8737d99
8737d99 continue on server socket on non-blocking errors (twitter#209) 2a62281 add atoi64 to bstring (twitter#206) f71c657 cc_option simplify _allowed_in_name (twitter#205) 24e3131 Add ITT instrumentation option (twitter#204) 236c98d Fix docs (twitter#200) e58f6a8 cc_array and cc_ring_array NULL fixes (twitter#201) 1c8df42 Add basic support of build type (twitter#199) 7107988 Fix now_ns() (twitter#198) da240e5 cc: extend cc_util module (twitter#196) 4846b15 Fix TAILQ_REINIT (twitter#195) 4f5dbb0 Update Cmake version to 2.8 (twitter#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (twitter#194) 57acaf6 cc: extend queue module (twitter#193) a64ada2 cc: extend duration module (twitter#192) b117632 reverting CMake file changes (twitter#191) dea5bee backport changes made to ccommon in pelikan (twitter#190) a4c0334 add linebreak to stats_log() (twitter#188) 05eb03e fix inconsistent naming and bump version (twitter#187) 4acc53a Stats to file (twitter#186) 2168fec minimize osx build config (twitter#185) 42b24de Simplify rust options, specify fewer output targets (twitter#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (twitter#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (twitter#182) a6a54d9 remove endian-specific logic from str*cmp (twitter#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (twitter#179) c9c5ee5 improve cc_bstring string literal and cstring names (twitter#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (twitter#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (twitter#173) e710712 use accept4 for tcp_accept when available (twitter#171) 21ba10e Remove cargo lock for shared lib, closes twitter#169 (twitter#172) 24660f1 update style guide (twitter#170) 17baf1e Per thread logging (twitter#168) git-subtree-dir: deps/ccommon git-subtree-split: 8737d99
8737d99 continue on server socket on non-blocking errors (twitter#209) 2a62281 add atoi64 to bstring (twitter#206) f71c657 cc_option simplify _allowed_in_name (twitter#205) 24e3131 Add ITT instrumentation option (twitter#204) 236c98d Fix docs (twitter#200) e58f6a8 cc_array and cc_ring_array NULL fixes (twitter#201) 1c8df42 Add basic support of build type (twitter#199) 7107988 Fix now_ns() (twitter#198) da240e5 cc: extend cc_util module (twitter#196) 4846b15 Fix TAILQ_REINIT (twitter#195) 4f5dbb0 Update Cmake version to 2.8 (twitter#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (twitter#194) 57acaf6 cc: extend queue module (twitter#193) a64ada2 cc: extend duration module (twitter#192) b117632 reverting CMake file changes (twitter#191) dea5bee backport changes made to ccommon in pelikan (twitter#190) a4c0334 add linebreak to stats_log() (twitter#188) 05eb03e fix inconsistent naming and bump version (twitter#187) 4acc53a Stats to file (twitter#186) 2168fec minimize osx build config (twitter#185) 42b24de Simplify rust options, specify fewer output targets (twitter#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (twitter#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (twitter#182) a6a54d9 remove endian-specific logic from str*cmp (twitter#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (twitter#179) c9c5ee5 improve cc_bstring string literal and cstring names (twitter#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (twitter#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (twitter#173) e710712 use accept4 for tcp_accept when available (twitter#171) 21ba10e Remove cargo lock for shared lib, closes twitter#169 (twitter#172) 24660f1 update style guide (twitter#170) 17baf1e Per thread logging (twitter#168) git-subtree-dir: deps/ccommon git-subtree-split: 8737d99
* renaming intarray to sarray (sorted array) * header changes done * things compile now * fix bug in request.c * update func signature * Squashed 'deps/ccommon/' changes from f5efe29..2a62281 2a62281 add atoi64 to bstring (twitter#206) f71c657 cc_option simplify _allowed_in_name (twitter#205) 24e3131 Add ITT instrumentation option (twitter#204) 236c98d Fix docs (twitter#200) e58f6a8 cc_array and cc_ring_array NULL fixes (twitter#201) 1c8df42 Add basic support of build type (twitter#199) 7107988 Fix now_ns() (twitter#198) da240e5 cc: extend cc_util module (twitter#196) 4846b15 Fix TAILQ_REINIT (twitter#195) 4f5dbb0 Update Cmake version to 2.8 (twitter#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (twitter#194) 57acaf6 cc: extend queue module (twitter#193) a64ada2 cc: extend duration module (twitter#192) b117632 reverting CMake file changes (twitter#191) dea5bee backport changes made to ccommon in pelikan (twitter#190) a4c0334 add linebreak to stats_log() (twitter#188) 05eb03e fix inconsistent naming and bump version (twitter#187) 4acc53a Stats to file (twitter#186) 2168fec minimize osx build config (twitter#185) 42b24de Simplify rust options, specify fewer output targets (twitter#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (twitter#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (twitter#182) a6a54d9 remove endian-specific logic from str*cmp (twitter#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (twitter#179) c9c5ee5 improve cc_bstring string literal and cstring names (twitter#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (twitter#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (twitter#173) e710712 use accept4 for tcp_accept when available (twitter#171) 21ba10e Remove cargo lock for shared lib, closes twitter#169 (twitter#172) 24660f1 update style guide (twitter#170) 17baf1e Per thread logging (twitter#168) git-subtree-dir: deps/ccommon git-subtree-split: 2a62281 * fix sarray bugs
8737d99 continue on server socket on non-blocking errors (twitter#209) 2a62281 add atoi64 to bstring (twitter#206) f71c657 cc_option simplify _allowed_in_name (twitter#205) 24e3131 Add ITT instrumentation option (twitter#204) 236c98d Fix docs (twitter#200) e58f6a8 cc_array and cc_ring_array NULL fixes (twitter#201) 1c8df42 Add basic support of build type (twitter#199) 7107988 Fix now_ns() (twitter#198) da240e5 cc: extend cc_util module (twitter#196) 4846b15 Fix TAILQ_REINIT (twitter#195) 4f5dbb0 Update Cmake version to 2.8 (twitter#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (twitter#194) 57acaf6 cc: extend queue module (twitter#193) a64ada2 cc: extend duration module (twitter#192) b117632 reverting CMake file changes (twitter#191) dea5bee backport changes made to ccommon in pelikan (twitter#190) a4c0334 add linebreak to stats_log() (twitter#188) 05eb03e fix inconsistent naming and bump version (twitter#187) 4acc53a Stats to file (twitter#186) 2168fec minimize osx build config (twitter#185) 42b24de Simplify rust options, specify fewer output targets (twitter#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (twitter#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (twitter#182) a6a54d9 remove endian-specific logic from str*cmp (twitter#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (twitter#179) c9c5ee5 improve cc_bstring string literal and cstring names (twitter#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (twitter#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (twitter#173) e710712 use accept4 for tcp_accept when available (twitter#171) 21ba10e Remove cargo lock for shared lib, closes twitter#169 (twitter#172) 24660f1 update style guide (twitter#170) 17baf1e Per thread logging (twitter#168) git-subtree-dir: deps/ccommon git-subtree-split: 8737d99
4e99e63 fix a bug and change how check is found (twitter#214) 54067ef slightly simplify accept error-handling logic (twitter#210) e9fe980 Fix synchronize ccommon with pelikan deps/ccommon (twitter#212) 7eb6424 Cleanup libcheck related code (twitter#211) 683bc1a cc_bstring simplify and fix (twitter#207) 8737d99 continue on server socket on non-blocking errors (twitter#209) 2a62281 add atoi64 to bstring (twitter#206) f71c657 cc_option simplify _allowed_in_name (twitter#205) 24e3131 Add ITT instrumentation option (twitter#204) 236c98d Fix docs (twitter#200) e58f6a8 cc_array and cc_ring_array NULL fixes (twitter#201) 1c8df42 Add basic support of build type (twitter#199) 7107988 Fix now_ns() (twitter#198) da240e5 cc: extend cc_util module (twitter#196) 4846b15 Fix TAILQ_REINIT (twitter#195) 4f5dbb0 Update Cmake version to 2.8 (twitter#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (twitter#194) 57acaf6 cc: extend queue module (twitter#193) a64ada2 cc: extend duration module (twitter#192) b117632 reverting CMake file changes (twitter#191) dea5bee backport changes made to ccommon in pelikan (twitter#190) a4c0334 add linebreak to stats_log() (twitter#188) 05eb03e fix inconsistent naming and bump version (twitter#187) 4acc53a Stats to file (twitter#186) 2168fec minimize osx build config (twitter#185) 42b24de Simplify rust options, specify fewer output targets (twitter#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (twitter#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (twitter#182) a6a54d9 remove endian-specific logic from str*cmp (twitter#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (twitter#179) c9c5ee5 improve cc_bstring string literal and cstring names (twitter#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (twitter#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (twitter#173) e710712 use accept4 for tcp_accept when available (twitter#171) 21ba10e Remove cargo lock for shared lib, closes twitter#169 (twitter#172) 24660f1 update style guide (twitter#170) 17baf1e Per thread logging (twitter#168) git-subtree-dir: deps/ccommon git-subtree-split: 4e99e63
* Squashed 'deps/ccommon/' changes from f5efe29..4e99e63 4e99e63 fix a bug and change how check is found (#214) 54067ef slightly simplify accept error-handling logic (#210) e9fe980 Fix synchronize ccommon with pelikan deps/ccommon (#212) 7eb6424 Cleanup libcheck related code (#211) 683bc1a cc_bstring simplify and fix (#207) 8737d99 continue on server socket on non-blocking errors (#209) 2a62281 add atoi64 to bstring (#206) f71c657 cc_option simplify _allowed_in_name (#205) 24e3131 Add ITT instrumentation option (#204) 236c98d Fix docs (#200) e58f6a8 cc_array and cc_ring_array NULL fixes (#201) 1c8df42 Add basic support of build type (#199) 7107988 Fix now_ns() (#198) da240e5 cc: extend cc_util module (#196) 4846b15 Fix TAILQ_REINIT (#195) 4f5dbb0 Update Cmake version to 2.8 (#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (#194) 57acaf6 cc: extend queue module (#193) a64ada2 cc: extend duration module (#192) b117632 reverting CMake file changes (#191) dea5bee backport changes made to ccommon in pelikan (#190) a4c0334 add linebreak to stats_log() (#188) 05eb03e fix inconsistent naming and bump version (#187) 4acc53a Stats to file (#186) 2168fec minimize osx build config (#185) 42b24de Simplify rust options, specify fewer output targets (#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (#182) a6a54d9 remove endian-specific logic from str*cmp (#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (#179) c9c5ee5 improve cc_bstring string literal and cstring names (#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (#173) e710712 use accept4 for tcp_accept when available (#171) 21ba10e Remove cargo lock for shared lib, closes #169 (#172) 24660f1 update style guide (#170) 17baf1e Per thread logging (#168) git-subtree-dir: deps/ccommon git-subtree-split: 4e99e63 * fix check linkage problem * temp * missed one conflict * fix ci/run.sh * fix ci/run.sh more
* Squashed 'deps/ccommon/' changes from f5efe29..4e99e63 4e99e63 fix a bug and change how check is found (twitter#214) 54067ef slightly simplify accept error-handling logic (twitter#210) e9fe980 Fix synchronize ccommon with pelikan deps/ccommon (twitter#212) 7eb6424 Cleanup libcheck related code (twitter#211) 683bc1a cc_bstring simplify and fix (twitter#207) 8737d99 continue on server socket on non-blocking errors (twitter#209) 2a62281 add atoi64 to bstring (twitter#206) f71c657 cc_option simplify _allowed_in_name (twitter#205) 24e3131 Add ITT instrumentation option (twitter#204) 236c98d Fix docs (twitter#200) e58f6a8 cc_array and cc_ring_array NULL fixes (twitter#201) 1c8df42 Add basic support of build type (twitter#199) 7107988 Fix now_ns() (twitter#198) da240e5 cc: extend cc_util module (twitter#196) 4846b15 Fix TAILQ_REINIT (twitter#195) 4f5dbb0 Update Cmake version to 2.8 (twitter#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (twitter#194) 57acaf6 cc: extend queue module (twitter#193) a64ada2 cc: extend duration module (twitter#192) b117632 reverting CMake file changes (twitter#191) dea5bee backport changes made to ccommon in pelikan (twitter#190) a4c0334 add linebreak to stats_log() (twitter#188) 05eb03e fix inconsistent naming and bump version (twitter#187) 4acc53a Stats to file (twitter#186) 2168fec minimize osx build config (twitter#185) 42b24de Simplify rust options, specify fewer output targets (twitter#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (twitter#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (twitter#182) a6a54d9 remove endian-specific logic from str*cmp (twitter#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (twitter#179) c9c5ee5 improve cc_bstring string literal and cstring names (twitter#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (twitter#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (twitter#173) e710712 use accept4 for tcp_accept when available (twitter#171) 21ba10e Remove cargo lock for shared lib, closes twitter#169 (twitter#172) 24660f1 update style guide (twitter#170) 17baf1e Per thread logging (twitter#168) git-subtree-dir: deps/ccommon git-subtree-split: 4e99e63 * fix check linkage problem * temp * missed one conflict * fix ci/run.sh * fix ci/run.sh more
* renaming intarray to sarray (sorted array) * header changes done * things compile now * fix bug in request.c * update func signature * Squashed 'deps/ccommon/' changes from f5efe29..2a62281 2a62281 add atoi64 to bstring (twitter#206) f71c657 cc_option simplify _allowed_in_name (twitter#205) 24e3131 Add ITT instrumentation option (twitter#204) 236c98d Fix docs (twitter#200) e58f6a8 cc_array and cc_ring_array NULL fixes (twitter#201) 1c8df42 Add basic support of build type (twitter#199) 7107988 Fix now_ns() (twitter#198) da240e5 cc: extend cc_util module (twitter#196) 4846b15 Fix TAILQ_REINIT (twitter#195) 4f5dbb0 Update Cmake version to 2.8 (twitter#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (twitter#194) 57acaf6 cc: extend queue module (twitter#193) a64ada2 cc: extend duration module (twitter#192) b117632 reverting CMake file changes (twitter#191) dea5bee backport changes made to ccommon in pelikan (twitter#190) a4c0334 add linebreak to stats_log() (twitter#188) 05eb03e fix inconsistent naming and bump version (twitter#187) 4acc53a Stats to file (twitter#186) 2168fec minimize osx build config (twitter#185) 42b24de Simplify rust options, specify fewer output targets (twitter#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (twitter#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (twitter#182) a6a54d9 remove endian-specific logic from str*cmp (twitter#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (twitter#179) c9c5ee5 improve cc_bstring string literal and cstring names (twitter#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (twitter#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (twitter#173) e710712 use accept4 for tcp_accept when available (twitter#171) 21ba10e Remove cargo lock for shared lib, closes twitter#169 (twitter#172) 24660f1 update style guide (twitter#170) 17baf1e Per thread logging (twitter#168) git-subtree-dir: deps/ccommon git-subtree-split: 2a62281 * fix sarray bugs
8737d99 continue on server socket on non-blocking errors (twitter#209) 2a62281 add atoi64 to bstring (twitter#206) f71c657 cc_option simplify _allowed_in_name (twitter#205) 24e3131 Add ITT instrumentation option (twitter#204) 236c98d Fix docs (twitter#200) e58f6a8 cc_array and cc_ring_array NULL fixes (twitter#201) 1c8df42 Add basic support of build type (twitter#199) 7107988 Fix now_ns() (twitter#198) da240e5 cc: extend cc_util module (twitter#196) 4846b15 Fix TAILQ_REINIT (twitter#195) 4f5dbb0 Update Cmake version to 2.8 (twitter#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (twitter#194) 57acaf6 cc: extend queue module (twitter#193) a64ada2 cc: extend duration module (twitter#192) b117632 reverting CMake file changes (twitter#191) dea5bee backport changes made to ccommon in pelikan (twitter#190) a4c0334 add linebreak to stats_log() (twitter#188) 05eb03e fix inconsistent naming and bump version (twitter#187) 4acc53a Stats to file (twitter#186) 2168fec minimize osx build config (twitter#185) 42b24de Simplify rust options, specify fewer output targets (twitter#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (twitter#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (twitter#182) a6a54d9 remove endian-specific logic from str*cmp (twitter#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (twitter#179) c9c5ee5 improve cc_bstring string literal and cstring names (twitter#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (twitter#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (twitter#173) e710712 use accept4 for tcp_accept when available (twitter#171) 21ba10e Remove cargo lock for shared lib, closes twitter#169 (twitter#172) 24660f1 update style guide (twitter#170) 17baf1e Per thread logging (twitter#168) git-subtree-dir: deps/ccommon git-subtree-split: 8737d99
* Squashed 'deps/ccommon/' changes from f5efe29..4e99e63 4e99e63 fix a bug and change how check is found (twitter#214) 54067ef slightly simplify accept error-handling logic (twitter#210) e9fe980 Fix synchronize ccommon with pelikan deps/ccommon (twitter#212) 7eb6424 Cleanup libcheck related code (twitter#211) 683bc1a cc_bstring simplify and fix (twitter#207) 8737d99 continue on server socket on non-blocking errors (twitter#209) 2a62281 add atoi64 to bstring (twitter#206) f71c657 cc_option simplify _allowed_in_name (twitter#205) 24e3131 Add ITT instrumentation option (twitter#204) 236c98d Fix docs (twitter#200) e58f6a8 cc_array and cc_ring_array NULL fixes (twitter#201) 1c8df42 Add basic support of build type (twitter#199) 7107988 Fix now_ns() (twitter#198) da240e5 cc: extend cc_util module (twitter#196) 4846b15 Fix TAILQ_REINIT (twitter#195) 4f5dbb0 Update Cmake version to 2.8 (twitter#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (twitter#194) 57acaf6 cc: extend queue module (twitter#193) a64ada2 cc: extend duration module (twitter#192) b117632 reverting CMake file changes (twitter#191) dea5bee backport changes made to ccommon in pelikan (twitter#190) a4c0334 add linebreak to stats_log() (twitter#188) 05eb03e fix inconsistent naming and bump version (twitter#187) 4acc53a Stats to file (twitter#186) 2168fec minimize osx build config (twitter#185) 42b24de Simplify rust options, specify fewer output targets (twitter#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (twitter#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (twitter#182) a6a54d9 remove endian-specific logic from str*cmp (twitter#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (twitter#179) c9c5ee5 improve cc_bstring string literal and cstring names (twitter#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (twitter#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (twitter#173) e710712 use accept4 for tcp_accept when available (twitter#171) 21ba10e Remove cargo lock for shared lib, closes twitter#169 (twitter#172) 24660f1 update style guide (twitter#170) 17baf1e Per thread logging (twitter#168) git-subtree-dir: deps/ccommon git-subtree-split: 4e99e63 * fix check linkage problem * temp * missed one conflict * fix ci/run.sh * fix ci/run.sh more
6b1d8d5 Improve the Rust build story (twitter#240) 5955d6b move nodelay setting to the server socket, and accepted connections will inherit that (twitter#238) aafd20f formatting (twitter#237) 3b5c069 Update ccommon_rs to use bytes v5.0 (twitter#235) df74087 Address clippy lints in rust code (twitter#234) 7c5bbd1 Make metrics and options Send + Sync (twitter#233) c2e617e Ensure that manually implemented C options use the correct name (twitter#232) 6e76741 Add some docs b5b4c5a Change check_pipe to use nanosleep instead of usleep (twitter#231) eb0a389 Use name of field instead of description for C metrics (twitter#230) 16ddc76 Fix broken buf impls (twitter#229) eefcdcb Avoid redundant rebuilds of rust packages in CI (twitter#228) 33f62a8 Update bindgen to also generate bindings recursively (twitter#227) 27ffc7c Implement bytes::Buf and Bytes::ButMut on Buf and OwnedBuf (twitter#226) f873930 Various small bugfixes and usability improvements for rust code (twitter#225) 37a1ecd Port option parsing module to Rust (twitter#224) 38f7556 Fix failed test detection (twitter#215) 0ab1604 Conditionally use std::any::type_name if it's supported (twitter#223) 98176d3 Backport changes from twitter#265 (twitter#222) ba54096 Remove test for removed rust logging functionality (twitter#221) 519118d Rewrite cmake cargo build wrapper (twitter#220) 5d23b3a Fix some small typos found in twitter#263 (twitter#219) 475dda7 Clean up logging shim (twitter#218) 1d28dd2 Expand rust bindings to add options, metrics, and ccbox (twitter#217) 88b5400 Upstream changes from twitter#261 (twitter#216) 4e99e63 fix a bug and change how check is found (twitter#214) 54067ef slightly simplify accept error-handling logic (twitter#210) e9fe980 Fix synchronize ccommon with pelikan deps/ccommon (twitter#212) 7eb6424 Cleanup libcheck related code (twitter#211) 683bc1a cc_bstring simplify and fix (twitter#207) 8737d99 continue on server socket on non-blocking errors (twitter#209) 2a62281 add atoi64 to bstring (twitter#206) f71c657 cc_option simplify _allowed_in_name (twitter#205) 24e3131 Add ITT instrumentation option (twitter#204) 236c98d Fix docs (twitter#200) e58f6a8 cc_array and cc_ring_array NULL fixes (twitter#201) 1c8df42 Add basic support of build type (twitter#199) 7107988 Fix now_ns() (twitter#198) da240e5 cc: extend cc_util module (twitter#196) 4846b15 Fix TAILQ_REINIT (twitter#195) 4f5dbb0 Update Cmake version to 2.8 (twitter#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (twitter#194) 57acaf6 cc: extend queue module (twitter#193) a64ada2 cc: extend duration module (twitter#192) b117632 reverting CMake file changes (twitter#191) dea5bee backport changes made to ccommon in pelikan (twitter#190) a4c0334 add linebreak to stats_log() (twitter#188) 05eb03e fix inconsistent naming and bump version (twitter#187) 4acc53a Stats to file (twitter#186) 2168fec minimize osx build config (twitter#185) 42b24de Simplify rust options, specify fewer output targets (twitter#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (twitter#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (twitter#182) a6a54d9 remove endian-specific logic from str*cmp (twitter#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (twitter#179) c9c5ee5 improve cc_bstring string literal and cstring names (twitter#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (twitter#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (twitter#173) e710712 use accept4 for tcp_accept when available (twitter#171) 21ba10e Remove cargo lock for shared lib, closes twitter#169 (twitter#172) 24660f1 update style guide (twitter#170) 17baf1e Per thread logging (twitter#168) git-subtree-dir: deps/ccommon git-subtree-split: 6b1d8d56b214e2a9d448625fe53303d57b4ac6d1
55769cc restore cmake for rust libraries (twitter#241) 6b1d8d5 Improve the Rust build story (twitter#240) 5955d6b move nodelay setting to the server socket, and accepted connections will inherit that (twitter#238) aafd20f formatting (twitter#237) 3b5c069 Update ccommon_rs to use bytes v5.0 (twitter#235) df74087 Address clippy lints in rust code (twitter#234) 7c5bbd1 Make metrics and options Send + Sync (twitter#233) c2e617e Ensure that manually implemented C options use the correct name (twitter#232) 6e76741 Add some docs b5b4c5a Change check_pipe to use nanosleep instead of usleep (twitter#231) eb0a389 Use name of field instead of description for C metrics (twitter#230) 16ddc76 Fix broken buf impls (twitter#229) eefcdcb Avoid redundant rebuilds of rust packages in CI (twitter#228) 33f62a8 Update bindgen to also generate bindings recursively (twitter#227) 27ffc7c Implement bytes::Buf and Bytes::ButMut on Buf and OwnedBuf (twitter#226) f873930 Various small bugfixes and usability improvements for rust code (twitter#225) 37a1ecd Port option parsing module to Rust (twitter#224) 38f7556 Fix failed test detection (twitter#215) 0ab1604 Conditionally use std::any::type_name if it's supported (twitter#223) 98176d3 Backport changes from twitter#265 (twitter#222) ba54096 Remove test for removed rust logging functionality (twitter#221) 519118d Rewrite cmake cargo build wrapper (twitter#220) 5d23b3a Fix some small typos found in twitter#263 (twitter#219) 475dda7 Clean up logging shim (twitter#218) 1d28dd2 Expand rust bindings to add options, metrics, and ccbox (twitter#217) 88b5400 Upstream changes from twitter#261 (twitter#216) 4e99e63 fix a bug and change how check is found (twitter#214) 54067ef slightly simplify accept error-handling logic (twitter#210) e9fe980 Fix synchronize ccommon with pelikan deps/ccommon (twitter#212) 7eb6424 Cleanup libcheck related code (twitter#211) 683bc1a cc_bstring simplify and fix (twitter#207) 8737d99 continue on server socket on non-blocking errors (twitter#209) 2a62281 add atoi64 to bstring (twitter#206) f71c657 cc_option simplify _allowed_in_name (twitter#205) 24e3131 Add ITT instrumentation option (twitter#204) 236c98d Fix docs (twitter#200) e58f6a8 cc_array and cc_ring_array NULL fixes (twitter#201) 1c8df42 Add basic support of build type (twitter#199) 7107988 Fix now_ns() (twitter#198) da240e5 cc: extend cc_util module (twitter#196) 4846b15 Fix TAILQ_REINIT (twitter#195) 4f5dbb0 Update Cmake version to 2.8 (twitter#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (twitter#194) 57acaf6 cc: extend queue module (twitter#193) a64ada2 cc: extend duration module (twitter#192) b117632 reverting CMake file changes (twitter#191) dea5bee backport changes made to ccommon in pelikan (twitter#190) a4c0334 add linebreak to stats_log() (twitter#188) 05eb03e fix inconsistent naming and bump version (twitter#187) 4acc53a Stats to file (twitter#186) 2168fec minimize osx build config (twitter#185) 42b24de Simplify rust options, specify fewer output targets (twitter#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (twitter#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (twitter#182) a6a54d9 remove endian-specific logic from str*cmp (twitter#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (twitter#179) c9c5ee5 improve cc_bstring string literal and cstring names (twitter#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (twitter#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (twitter#173) e710712 use accept4 for tcp_accept when available (twitter#171) 21ba10e Remove cargo lock for shared lib, closes twitter#169 (twitter#172) 24660f1 update style guide (twitter#170) 17baf1e Per thread logging (twitter#168) git-subtree-dir: deps/ccommon git-subtree-split: 55769cc8ae9e7d5c9ceda0472498276aec1d1ed5
* Squashed 'deps/ccommon/' changes from f5efe29..55769cc 55769cc restore cmake for rust libraries (#241) 6b1d8d5 Improve the Rust build story (#240) 5955d6b move nodelay setting to the server socket, and accepted connections will inherit that (#238) aafd20f formatting (#237) 3b5c069 Update ccommon_rs to use bytes v5.0 (#235) df74087 Address clippy lints in rust code (#234) 7c5bbd1 Make metrics and options Send + Sync (#233) c2e617e Ensure that manually implemented C options use the correct name (#232) 6e76741 Add some docs b5b4c5a Change check_pipe to use nanosleep instead of usleep (#231) eb0a389 Use name of field instead of description for C metrics (#230) 16ddc76 Fix broken buf impls (#229) eefcdcb Avoid redundant rebuilds of rust packages in CI (#228) 33f62a8 Update bindgen to also generate bindings recursively (#227) 27ffc7c Implement bytes::Buf and Bytes::ButMut on Buf and OwnedBuf (#226) f873930 Various small bugfixes and usability improvements for rust code (#225) 37a1ecd Port option parsing module to Rust (#224) 38f7556 Fix failed test detection (#215) 0ab1604 Conditionally use std::any::type_name if it's supported (#223) 98176d3 Backport changes from #265 (#222) ba54096 Remove test for removed rust logging functionality (#221) 519118d Rewrite cmake cargo build wrapper (#220) 5d23b3a Fix some small typos found in #263 (#219) 475dda7 Clean up logging shim (#218) 1d28dd2 Expand rust bindings to add options, metrics, and ccbox (#217) 88b5400 Upstream changes from #261 (#216) 4e99e63 fix a bug and change how check is found (#214) 54067ef slightly simplify accept error-handling logic (#210) e9fe980 Fix synchronize ccommon with pelikan deps/ccommon (#212) 7eb6424 Cleanup libcheck related code (#211) 683bc1a cc_bstring simplify and fix (#207) 8737d99 continue on server socket on non-blocking errors (#209) 2a62281 add atoi64 to bstring (#206) f71c657 cc_option simplify _allowed_in_name (#205) 24e3131 Add ITT instrumentation option (#204) 236c98d Fix docs (#200) e58f6a8 cc_array and cc_ring_array NULL fixes (#201) 1c8df42 Add basic support of build type (#199) 7107988 Fix now_ns() (#198) da240e5 cc: extend cc_util module (#196) 4846b15 Fix TAILQ_REINIT (#195) 4f5dbb0 Update Cmake version to 2.8 (#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (#194) 57acaf6 cc: extend queue module (#193) a64ada2 cc: extend duration module (#192) b117632 reverting CMake file changes (#191) dea5bee backport changes made to ccommon in pelikan (#190) a4c0334 add linebreak to stats_log() (#188) 05eb03e fix inconsistent naming and bump version (#187) 4acc53a Stats to file (#186) 2168fec minimize osx build config (#185) 42b24de Simplify rust options, specify fewer output targets (#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (#182) a6a54d9 remove endian-specific logic from str*cmp (#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (#179) c9c5ee5 improve cc_bstring string literal and cstring names (#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (#173) e710712 use accept4 for tcp_accept when available (#171) 21ba10e Remove cargo lock for shared lib, closes #169 (#172) 24660f1 update style guide (#170) 17baf1e Per thread logging (#168) git-subtree-dir: deps/ccommon git-subtree-split: 55769cc8ae9e7d5c9ceda0472498276aec1d1ed5 * Fixes to work with newer ccommon and cargo for rust builds Fixes various places where ccommon rust libraries were renamed or have interface changes. Changes the rust builds to use cargo instead of cmake. This made it easier to integrate the changes and makes building the rust portion more intuitive for rust developers. * add cargo build on osx to ci * fix copy paste error in travis config * fix the cmake rust build * cleanup * remove scripts folder
5e64de2 WIP: add fluxcapacitor support for linux build (twitter#242) 55769cc restore cmake for rust libraries (twitter#241) 6b1d8d5 Improve the Rust build story (twitter#240) 5955d6b move nodelay setting to the server socket, and accepted connections will inherit that (twitter#238) aafd20f formatting (twitter#237) 3b5c069 Update ccommon_rs to use bytes v5.0 (twitter#235) df74087 Address clippy lints in rust code (twitter#234) 7c5bbd1 Make metrics and options Send + Sync (twitter#233) c2e617e Ensure that manually implemented C options use the correct name (twitter#232) 6e76741 Add some docs b5b4c5a Change check_pipe to use nanosleep instead of usleep (twitter#231) eb0a389 Use name of field instead of description for C metrics (twitter#230) 16ddc76 Fix broken buf impls (twitter#229) eefcdcb Avoid redundant rebuilds of rust packages in CI (twitter#228) 33f62a8 Update bindgen to also generate bindings recursively (twitter#227) 27ffc7c Implement bytes::Buf and Bytes::ButMut on Buf and OwnedBuf (twitter#226) f873930 Various small bugfixes and usability improvements for rust code (twitter#225) 37a1ecd Port option parsing module to Rust (twitter#224) 38f7556 Fix failed test detection (twitter#215) 0ab1604 Conditionally use std::any::type_name if it's supported (twitter#223) 98176d3 Backport changes from twitter#265 (twitter#222) ba54096 Remove test for removed rust logging functionality (twitter#221) 519118d Rewrite cmake cargo build wrapper (twitter#220) 5d23b3a Fix some small typos found in twitter#263 (twitter#219) 475dda7 Clean up logging shim (twitter#218) 1d28dd2 Expand rust bindings to add options, metrics, and ccbox (twitter#217) 88b5400 Upstream changes from twitter#261 (twitter#216) 4e99e63 fix a bug and change how check is found (twitter#214) 54067ef slightly simplify accept error-handling logic (twitter#210) e9fe980 Fix synchronize ccommon with pelikan deps/ccommon (twitter#212) 7eb6424 Cleanup libcheck related code (twitter#211) 683bc1a cc_bstring simplify and fix (twitter#207) 8737d99 continue on server socket on non-blocking errors (twitter#209) 2a62281 add atoi64 to bstring (twitter#206) f71c657 cc_option simplify _allowed_in_name (twitter#205) 24e3131 Add ITT instrumentation option (twitter#204) 236c98d Fix docs (twitter#200) e58f6a8 cc_array and cc_ring_array NULL fixes (twitter#201) 1c8df42 Add basic support of build type (twitter#199) 7107988 Fix now_ns() (twitter#198) da240e5 cc: extend cc_util module (twitter#196) 4846b15 Fix TAILQ_REINIT (twitter#195) 4f5dbb0 Update Cmake version to 2.8 (twitter#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (twitter#194) 57acaf6 cc: extend queue module (twitter#193) a64ada2 cc: extend duration module (twitter#192) b117632 reverting CMake file changes (twitter#191) dea5bee backport changes made to ccommon in pelikan (twitter#190) a4c0334 add linebreak to stats_log() (twitter#188) 05eb03e fix inconsistent naming and bump version (twitter#187) 4acc53a Stats to file (twitter#186) 2168fec minimize osx build config (twitter#185) 42b24de Simplify rust options, specify fewer output targets (twitter#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (twitter#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (twitter#182) a6a54d9 remove endian-specific logic from str*cmp (twitter#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (twitter#179) c9c5ee5 improve cc_bstring string literal and cstring names (twitter#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (twitter#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (twitter#173) e710712 use accept4 for tcp_accept when available (twitter#171) 21ba10e Remove cargo lock for shared lib, closes twitter#169 (twitter#172) 24660f1 update style guide (twitter#170) 17baf1e Per thread logging (twitter#168) git-subtree-dir: deps/ccommon git-subtree-split: 5e64de297dbf1d49b59746431448f5f4dfb5d640
… metrics (#289) * adding metrics to the hash module * Squashed 'deps/ccommon/' changes from f5efe29..5e64de2 5e64de2 WIP: add fluxcapacitor support for linux build (#242) 55769cc restore cmake for rust libraries (#241) 6b1d8d5 Improve the Rust build story (#240) 5955d6b move nodelay setting to the server socket, and accepted connections will inherit that (#238) aafd20f formatting (#237) 3b5c069 Update ccommon_rs to use bytes v5.0 (#235) df74087 Address clippy lints in rust code (#234) 7c5bbd1 Make metrics and options Send + Sync (#233) c2e617e Ensure that manually implemented C options use the correct name (#232) 6e76741 Add some docs b5b4c5a Change check_pipe to use nanosleep instead of usleep (#231) eb0a389 Use name of field instead of description for C metrics (#230) 16ddc76 Fix broken buf impls (#229) eefcdcb Avoid redundant rebuilds of rust packages in CI (#228) 33f62a8 Update bindgen to also generate bindings recursively (#227) 27ffc7c Implement bytes::Buf and Bytes::ButMut on Buf and OwnedBuf (#226) f873930 Various small bugfixes and usability improvements for rust code (#225) 37a1ecd Port option parsing module to Rust (#224) 38f7556 Fix failed test detection (#215) 0ab1604 Conditionally use std::any::type_name if it's supported (#223) 98176d3 Backport changes from #265 (#222) ba54096 Remove test for removed rust logging functionality (#221) 519118d Rewrite cmake cargo build wrapper (#220) 5d23b3a Fix some small typos found in #263 (#219) 475dda7 Clean up logging shim (#218) 1d28dd2 Expand rust bindings to add options, metrics, and ccbox (#217) 88b5400 Upstream changes from #261 (#216) 4e99e63 fix a bug and change how check is found (#214) 54067ef slightly simplify accept error-handling logic (#210) e9fe980 Fix synchronize ccommon with pelikan deps/ccommon (#212) 7eb6424 Cleanup libcheck related code (#211) 683bc1a cc_bstring simplify and fix (#207) 8737d99 continue on server socket on non-blocking errors (#209) 2a62281 add atoi64 to bstring (#206) f71c657 cc_option simplify _allowed_in_name (#205) 24e3131 Add ITT instrumentation option (#204) 236c98d Fix docs (#200) e58f6a8 cc_array and cc_ring_array NULL fixes (#201) 1c8df42 Add basic support of build type (#199) 7107988 Fix now_ns() (#198) da240e5 cc: extend cc_util module (#196) 4846b15 Fix TAILQ_REINIT (#195) 4f5dbb0 Update Cmake version to 2.8 (#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (#194) 57acaf6 cc: extend queue module (#193) a64ada2 cc: extend duration module (#192) b117632 reverting CMake file changes (#191) dea5bee backport changes made to ccommon in pelikan (#190) a4c0334 add linebreak to stats_log() (#188) 05eb03e fix inconsistent naming and bump version (#187) 4acc53a Stats to file (#186) 2168fec minimize osx build config (#185) 42b24de Simplify rust options, specify fewer output targets (#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (#182) a6a54d9 remove endian-specific logic from str*cmp (#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (#179) c9c5ee5 improve cc_bstring string literal and cstring names (#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (#173) e710712 use accept4 for tcp_accept when available (#171) 21ba10e Remove cargo lock for shared lib, closes #169 (#172) 24660f1 update style guide (#170) 17baf1e Per thread logging (#168) git-subtree-dir: deps/ccommon git-subtree-split: 5e64de297dbf1d49b59746431448f5f4dfb5d640 * clean up cmake file * rename findcheck cmake module * adding new metrics to rust wrapper * add ci/cargo.sh to pelikan for consistent invocation * Squashed 'deps/ccommon/' changes from 5e64de2..0db032a 0db032a tuning cmake / ci further (#243) 49dcaff improve cargo build script (#244) git-subtree-dir: deps/ccommon git-subtree-split: 0db032afcac0a75887281c3876ed9f7bb10391ce * update ci based on changes first tested in ccommon
45b7bac add new libraries to contain config structs (twitter#245) 0db032a tuning cmake / ci further (twitter#243) 49dcaff improve cargo build script (twitter#244) 5e64de2 WIP: add fluxcapacitor support for linux build (twitter#242) 55769cc restore cmake for rust libraries (twitter#241) 6b1d8d5 Improve the Rust build story (twitter#240) 5955d6b move nodelay setting to the server socket, and accepted connections will inherit that (twitter#238) aafd20f formatting (twitter#237) 3b5c069 Update ccommon_rs to use bytes v5.0 (twitter#235) df74087 Address clippy lints in rust code (twitter#234) 7c5bbd1 Make metrics and options Send + Sync (twitter#233) c2e617e Ensure that manually implemented C options use the correct name (twitter#232) 6e76741 Add some docs b5b4c5a Change check_pipe to use nanosleep instead of usleep (twitter#231) eb0a389 Use name of field instead of description for C metrics (twitter#230) 16ddc76 Fix broken buf impls (twitter#229) eefcdcb Avoid redundant rebuilds of rust packages in CI (twitter#228) 33f62a8 Update bindgen to also generate bindings recursively (twitter#227) 27ffc7c Implement bytes::Buf and Bytes::ButMut on Buf and OwnedBuf (twitter#226) f873930 Various small bugfixes and usability improvements for rust code (twitter#225) 37a1ecd Port option parsing module to Rust (twitter#224) 38f7556 Fix failed test detection (twitter#215) 0ab1604 Conditionally use std::any::type_name if it's supported (twitter#223) 98176d3 Backport changes from twitter#265 (twitter#222) ba54096 Remove test for removed rust logging functionality (twitter#221) 519118d Rewrite cmake cargo build wrapper (twitter#220) 5d23b3a Fix some small typos found in twitter#263 (twitter#219) 475dda7 Clean up logging shim (twitter#218) 1d28dd2 Expand rust bindings to add options, metrics, and ccbox (twitter#217) 88b5400 Upstream changes from twitter#261 (twitter#216) 4e99e63 fix a bug and change how check is found (twitter#214) 54067ef slightly simplify accept error-handling logic (twitter#210) e9fe980 Fix synchronize ccommon with pelikan deps/ccommon (twitter#212) 7eb6424 Cleanup libcheck related code (twitter#211) 683bc1a cc_bstring simplify and fix (twitter#207) 8737d99 continue on server socket on non-blocking errors (twitter#209) 2a62281 add atoi64 to bstring (twitter#206) f71c657 cc_option simplify _allowed_in_name (twitter#205) 24e3131 Add ITT instrumentation option (twitter#204) 236c98d Fix docs (twitter#200) e58f6a8 cc_array and cc_ring_array NULL fixes (twitter#201) 1c8df42 Add basic support of build type (twitter#199) 7107988 Fix now_ns() (twitter#198) da240e5 cc: extend cc_util module (twitter#196) 4846b15 Fix TAILQ_REINIT (twitter#195) 4f5dbb0 Update Cmake version to 2.8 (twitter#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (twitter#194) 57acaf6 cc: extend queue module (twitter#193) a64ada2 cc: extend duration module (twitter#192) b117632 reverting CMake file changes (twitter#191) dea5bee backport changes made to ccommon in pelikan (twitter#190) a4c0334 add linebreak to stats_log() (twitter#188) 05eb03e fix inconsistent naming and bump version (twitter#187) 4acc53a Stats to file (twitter#186) 2168fec minimize osx build config (twitter#185) 42b24de Simplify rust options, specify fewer output targets (twitter#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (twitter#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (twitter#182) a6a54d9 remove endian-specific logic from str*cmp (twitter#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (twitter#179) c9c5ee5 improve cc_bstring string literal and cstring names (twitter#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (twitter#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (twitter#173) e710712 use accept4 for tcp_accept when available (twitter#171) 21ba10e Remove cargo lock for shared lib, closes twitter#169 (twitter#172) 24660f1 update style guide (twitter#170) 17baf1e Per thread logging (twitter#168) git-subtree-dir: deps/ccommon git-subtree-split: 45b7bac29f7bddfbb7441d93f11f1d81c0dcb4e8
* Squashed 'deps/ccommon/' changes from f5efe29..45b7bac 45b7bac add new libraries to contain config structs (#245) 0db032a tuning cmake / ci further (#243) 49dcaff improve cargo build script (#244) 5e64de2 WIP: add fluxcapacitor support for linux build (#242) 55769cc restore cmake for rust libraries (#241) 6b1d8d5 Improve the Rust build story (#240) 5955d6b move nodelay setting to the server socket, and accepted connections will inherit that (#238) aafd20f formatting (#237) 3b5c069 Update ccommon_rs to use bytes v5.0 (#235) df74087 Address clippy lints in rust code (#234) 7c5bbd1 Make metrics and options Send + Sync (#233) c2e617e Ensure that manually implemented C options use the correct name (#232) 6e76741 Add some docs b5b4c5a Change check_pipe to use nanosleep instead of usleep (#231) eb0a389 Use name of field instead of description for C metrics (#230) 16ddc76 Fix broken buf impls (#229) eefcdcb Avoid redundant rebuilds of rust packages in CI (#228) 33f62a8 Update bindgen to also generate bindings recursively (#227) 27ffc7c Implement bytes::Buf and Bytes::ButMut on Buf and OwnedBuf (#226) f873930 Various small bugfixes and usability improvements for rust code (#225) 37a1ecd Port option parsing module to Rust (#224) 38f7556 Fix failed test detection (#215) 0ab1604 Conditionally use std::any::type_name if it's supported (#223) 98176d3 Backport changes from #265 (#222) ba54096 Remove test for removed rust logging functionality (#221) 519118d Rewrite cmake cargo build wrapper (#220) 5d23b3a Fix some small typos found in #263 (#219) 475dda7 Clean up logging shim (#218) 1d28dd2 Expand rust bindings to add options, metrics, and ccbox (#217) 88b5400 Upstream changes from #261 (#216) 4e99e63 fix a bug and change how check is found (#214) 54067ef slightly simplify accept error-handling logic (#210) e9fe980 Fix synchronize ccommon with pelikan deps/ccommon (#212) 7eb6424 Cleanup libcheck related code (#211) 683bc1a cc_bstring simplify and fix (#207) 8737d99 continue on server socket on non-blocking errors (#209) 2a62281 add atoi64 to bstring (#206) f71c657 cc_option simplify _allowed_in_name (#205) 24e3131 Add ITT instrumentation option (#204) 236c98d Fix docs (#200) e58f6a8 cc_array and cc_ring_array NULL fixes (#201) 1c8df42 Add basic support of build type (#199) 7107988 Fix now_ns() (#198) da240e5 cc: extend cc_util module (#196) 4846b15 Fix TAILQ_REINIT (#195) 4f5dbb0 Update Cmake version to 2.8 (#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (#194) 57acaf6 cc: extend queue module (#193) a64ada2 cc: extend duration module (#192) b117632 reverting CMake file changes (#191) dea5bee backport changes made to ccommon in pelikan (#190) a4c0334 add linebreak to stats_log() (#188) 05eb03e fix inconsistent naming and bump version (#187) 4acc53a Stats to file (#186) 2168fec minimize osx build config (#185) 42b24de Simplify rust options, specify fewer output targets (#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (#182) a6a54d9 remove endian-specific logic from str*cmp (#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (#179) c9c5ee5 improve cc_bstring string literal and cstring names (#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (#173) e710712 use accept4 for tcp_accept when available (#171) 21ba10e Remove cargo lock for shared lib, closes #169 (#172) 24660f1 update style guide (#170) 17baf1e Per thread logging (#168) git-subtree-dir: deps/ccommon git-subtree-split: 45b7bac29f7bddfbb7441d93f11f1d81c0dcb4e8 * update manifest to include new ccommon crates * Squashed 'deps/ccommon/' changes from 45b7bac..0094e2a 0094e2a add convenience array api (#239) 6024ef7 add pipe config to rust ccommon-channel (#247) eaf7f07 remove ccommon-time (#248) git-subtree-dir: deps/ccommon git-subtree-split: 0094e2a99e4d535f8dec590e8474e6e4686bda07 * remove dep ccommon-time Co-authored-by: Brian Martin <bmartin@twitter.com>
6af1821 Pthread name (twitter#251) e77471e cmake: gen config.h into include to support make install (twitter#249) 0094e2a add convenience array api (twitter#239) 6024ef7 add pipe config to rust ccommon-channel (twitter#247) eaf7f07 remove ccommon-time (twitter#248) 45b7bac add new libraries to contain config structs (twitter#245) 0db032a tuning cmake / ci further (twitter#243) 49dcaff improve cargo build script (twitter#244) 5e64de2 WIP: add fluxcapacitor support for linux build (twitter#242) 55769cc restore cmake for rust libraries (twitter#241) 6b1d8d5 Improve the Rust build story (twitter#240) 5955d6b move nodelay setting to the server socket, and accepted connections will inherit that (twitter#238) aafd20f formatting (twitter#237) 3b5c069 Update ccommon_rs to use bytes v5.0 (twitter#235) df74087 Address clippy lints in rust code (twitter#234) 7c5bbd1 Make metrics and options Send + Sync (twitter#233) c2e617e Ensure that manually implemented C options use the correct name (twitter#232) 6e76741 Add some docs b5b4c5a Change check_pipe to use nanosleep instead of usleep (twitter#231) eb0a389 Use name of field instead of description for C metrics (twitter#230) 16ddc76 Fix broken buf impls (twitter#229) eefcdcb Avoid redundant rebuilds of rust packages in CI (twitter#228) 33f62a8 Update bindgen to also generate bindings recursively (twitter#227) 27ffc7c Implement bytes::Buf and Bytes::ButMut on Buf and OwnedBuf (twitter#226) f873930 Various small bugfixes and usability improvements for rust code (twitter#225) 37a1ecd Port option parsing module to Rust (twitter#224) 38f7556 Fix failed test detection (twitter#215) 0ab1604 Conditionally use std::any::type_name if it's supported (twitter#223) 98176d3 Backport changes from twitter#265 (twitter#222) ba54096 Remove test for removed rust logging functionality (twitter#221) 519118d Rewrite cmake cargo build wrapper (twitter#220) 5d23b3a Fix some small typos found in twitter#263 (twitter#219) 475dda7 Clean up logging shim (twitter#218) 1d28dd2 Expand rust bindings to add options, metrics, and ccbox (twitter#217) 88b5400 Upstream changes from twitter#261 (twitter#216) 4e99e63 fix a bug and change how check is found (twitter#214) 54067ef slightly simplify accept error-handling logic (twitter#210) e9fe980 Fix synchronize ccommon with pelikan deps/ccommon (twitter#212) 7eb6424 Cleanup libcheck related code (twitter#211) 683bc1a cc_bstring simplify and fix (twitter#207) 8737d99 continue on server socket on non-blocking errors (twitter#209) 2a62281 add atoi64 to bstring (twitter#206) f71c657 cc_option simplify _allowed_in_name (twitter#205) 24e3131 Add ITT instrumentation option (twitter#204) 236c98d Fix docs (twitter#200) e58f6a8 cc_array and cc_ring_array NULL fixes (twitter#201) 1c8df42 Add basic support of build type (twitter#199) 7107988 Fix now_ns() (twitter#198) da240e5 cc: extend cc_util module (twitter#196) 4846b15 Fix TAILQ_REINIT (twitter#195) 4f5dbb0 Update Cmake version to 2.8 (twitter#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (twitter#194) 57acaf6 cc: extend queue module (twitter#193) a64ada2 cc: extend duration module (twitter#192) b117632 reverting CMake file changes (twitter#191) dea5bee backport changes made to ccommon in pelikan (twitter#190) a4c0334 add linebreak to stats_log() (twitter#188) 05eb03e fix inconsistent naming and bump version (twitter#187) 4acc53a Stats to file (twitter#186) 2168fec minimize osx build config (twitter#185) 42b24de Simplify rust options, specify fewer output targets (twitter#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (twitter#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (twitter#182) a6a54d9 remove endian-specific logic from str*cmp (twitter#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (twitter#179) c9c5ee5 improve cc_bstring string literal and cstring names (twitter#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (twitter#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (twitter#173) e710712 use accept4 for tcp_accept when available (twitter#171) 21ba10e Remove cargo lock for shared lib, closes twitter#169 (twitter#172) 24660f1 update style guide (twitter#170) 17baf1e Per thread logging (twitter#168) git-subtree-dir: deps/ccommon git-subtree-split: 6af182198babff2db218d0149e64ee2fe840dc72
* Squashed 'deps/ccommon/' changes from f5efe29..6af1821 6af1821 Pthread name (#251) e77471e cmake: gen config.h into include to support make install (#249) 0094e2a add convenience array api (#239) 6024ef7 add pipe config to rust ccommon-channel (#247) eaf7f07 remove ccommon-time (#248) 45b7bac add new libraries to contain config structs (#245) 0db032a tuning cmake / ci further (#243) 49dcaff improve cargo build script (#244) 5e64de2 WIP: add fluxcapacitor support for linux build (#242) 55769cc restore cmake for rust libraries (#241) 6b1d8d5 Improve the Rust build story (#240) 5955d6b move nodelay setting to the server socket, and accepted connections will inherit that (#238) aafd20f formatting (#237) 3b5c069 Update ccommon_rs to use bytes v5.0 (#235) df74087 Address clippy lints in rust code (#234) 7c5bbd1 Make metrics and options Send + Sync (#233) c2e617e Ensure that manually implemented C options use the correct name (#232) 6e76741 Add some docs b5b4c5a Change check_pipe to use nanosleep instead of usleep (#231) eb0a389 Use name of field instead of description for C metrics (#230) 16ddc76 Fix broken buf impls (#229) eefcdcb Avoid redundant rebuilds of rust packages in CI (#228) 33f62a8 Update bindgen to also generate bindings recursively (#227) 27ffc7c Implement bytes::Buf and Bytes::ButMut on Buf and OwnedBuf (#226) f873930 Various small bugfixes and usability improvements for rust code (#225) 37a1ecd Port option parsing module to Rust (#224) 38f7556 Fix failed test detection (#215) 0ab1604 Conditionally use std::any::type_name if it's supported (#223) 98176d3 Backport changes from #265 (#222) ba54096 Remove test for removed rust logging functionality (#221) 519118d Rewrite cmake cargo build wrapper (#220) 5d23b3a Fix some small typos found in #263 (#219) 475dda7 Clean up logging shim (#218) 1d28dd2 Expand rust bindings to add options, metrics, and ccbox (#217) 88b5400 Upstream changes from #261 (#216) 4e99e63 fix a bug and change how check is found (#214) 54067ef slightly simplify accept error-handling logic (#210) e9fe980 Fix synchronize ccommon with pelikan deps/ccommon (#212) 7eb6424 Cleanup libcheck related code (#211) 683bc1a cc_bstring simplify and fix (#207) 8737d99 continue on server socket on non-blocking errors (#209) 2a62281 add atoi64 to bstring (#206) f71c657 cc_option simplify _allowed_in_name (#205) 24e3131 Add ITT instrumentation option (#204) 236c98d Fix docs (#200) e58f6a8 cc_array and cc_ring_array NULL fixes (#201) 1c8df42 Add basic support of build type (#199) 7107988 Fix now_ns() (#198) da240e5 cc: extend cc_util module (#196) 4846b15 Fix TAILQ_REINIT (#195) 4f5dbb0 Update Cmake version to 2.8 (#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (#194) 57acaf6 cc: extend queue module (#193) a64ada2 cc: extend duration module (#192) b117632 reverting CMake file changes (#191) dea5bee backport changes made to ccommon in pelikan (#190) a4c0334 add linebreak to stats_log() (#188) 05eb03e fix inconsistent naming and bump version (#187) 4acc53a Stats to file (#186) 2168fec minimize osx build config (#185) 42b24de Simplify rust options, specify fewer output targets (#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (#182) a6a54d9 remove endian-specific logic from str*cmp (#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (#179) c9c5ee5 improve cc_bstring string literal and cstring names (#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (#173) e710712 use accept4 for tcp_accept when available (#171) 21ba10e Remove cargo lock for shared lib, closes #169 (#172) 24660f1 update style guide (#170) 17baf1e Per thread logging (#168) git-subtree-dir: deps/ccommon git-subtree-split: 6af182198babff2db218d0149e64ee2fe840dc72 * disable http target * pin http test to http target
9caf864 Delete flaky assert within check_tcp (twitter#253) 05eca7f Update LICENSE to use the full text (twitter#252) 6af1821 Pthread name (twitter#251) e77471e cmake: gen config.h into include to support make install (twitter#249) 0094e2a add convenience array api (twitter#239) 6024ef7 add pipe config to rust ccommon-channel (twitter#247) eaf7f07 remove ccommon-time (twitter#248) 45b7bac add new libraries to contain config structs (twitter#245) 0db032a tuning cmake / ci further (twitter#243) 49dcaff improve cargo build script (twitter#244) 5e64de2 WIP: add fluxcapacitor support for linux build (twitter#242) 55769cc restore cmake for rust libraries (twitter#241) 6b1d8d5 Improve the Rust build story (twitter#240) 5955d6b move nodelay setting to the server socket, and accepted connections will inherit that (twitter#238) aafd20f formatting (twitter#237) 3b5c069 Update ccommon_rs to use bytes v5.0 (twitter#235) df74087 Address clippy lints in rust code (twitter#234) 7c5bbd1 Make metrics and options Send + Sync (twitter#233) c2e617e Ensure that manually implemented C options use the correct name (twitter#232) 6e76741 Add some docs b5b4c5a Change check_pipe to use nanosleep instead of usleep (twitter#231) eb0a389 Use name of field instead of description for C metrics (twitter#230) 16ddc76 Fix broken buf impls (twitter#229) eefcdcb Avoid redundant rebuilds of rust packages in CI (twitter#228) 33f62a8 Update bindgen to also generate bindings recursively (twitter#227) 27ffc7c Implement bytes::Buf and Bytes::ButMut on Buf and OwnedBuf (twitter#226) f873930 Various small bugfixes and usability improvements for rust code (twitter#225) 37a1ecd Port option parsing module to Rust (twitter#224) 38f7556 Fix failed test detection (twitter#215) 0ab1604 Conditionally use std::any::type_name if it's supported (twitter#223) 98176d3 Backport changes from twitter#265 (twitter#222) ba54096 Remove test for removed rust logging functionality (twitter#221) 519118d Rewrite cmake cargo build wrapper (twitter#220) 5d23b3a Fix some small typos found in twitter#263 (twitter#219) 475dda7 Clean up logging shim (twitter#218) 1d28dd2 Expand rust bindings to add options, metrics, and ccbox (twitter#217) 88b5400 Upstream changes from twitter#261 (twitter#216) 4e99e63 fix a bug and change how check is found (twitter#214) 54067ef slightly simplify accept error-handling logic (twitter#210) e9fe980 Fix synchronize ccommon with pelikan deps/ccommon (twitter#212) 7eb6424 Cleanup libcheck related code (twitter#211) 683bc1a cc_bstring simplify and fix (twitter#207) 8737d99 continue on server socket on non-blocking errors (twitter#209) 2a62281 add atoi64 to bstring (twitter#206) f71c657 cc_option simplify _allowed_in_name (twitter#205) 24e3131 Add ITT instrumentation option (twitter#204) 236c98d Fix docs (twitter#200) e58f6a8 cc_array and cc_ring_array NULL fixes (twitter#201) 1c8df42 Add basic support of build type (twitter#199) 7107988 Fix now_ns() (twitter#198) da240e5 cc: extend cc_util module (twitter#196) 4846b15 Fix TAILQ_REINIT (twitter#195) 4f5dbb0 Update Cmake version to 2.8 (twitter#197) 2e6f78a cc_mm use OS_DARWIN macro to detect OS (twitter#194) 57acaf6 cc: extend queue module (twitter#193) a64ada2 cc: extend duration module (twitter#192) b117632 reverting CMake file changes (twitter#191) dea5bee backport changes made to ccommon in pelikan (twitter#190) a4c0334 add linebreak to stats_log() (twitter#188) 05eb03e fix inconsistent naming and bump version (twitter#187) 4acc53a Stats to file (twitter#186) 2168fec minimize osx build config (twitter#185) 42b24de Simplify rust options, specify fewer output targets (twitter#183) c9fa905 update CMakeRust used to latest version, tweaks to make build work (twitter#184) 2ef0163 Reorder dependency includes in cmake, don't parallel build (twitter#182) a6a54d9 remove endian-specific logic from str*cmp (twitter#177) 4c0668b epoll_create* ignores size hint in newer kernels, switch to new API (twitter#179) c9c5ee5 improve cc_bstring string literal and cstring names (twitter#176) 0184d73 Add unit tests for buffer, fix buf/dbuf bugs and refactor (twitter#174) d7dab43 create a .cargo/config so intellij uses the same target dir as cmake (twitter#173) e710712 use accept4 for tcp_accept when available (twitter#171) 21ba10e Remove cargo lock for shared lib, closes twitter#169 (twitter#172) 24660f1 update style guide (twitter#170) 17baf1e Per thread logging (twitter#168) git-subtree-dir: deps/ccommon git-subtree-split: 9caf864dca0d699b0cb25f2710ba5b5b76e7f691
This PR contains an implementation of a CDB reader in Rust that builds and is linked with pelikan to create a memcache-protocol based frontend with a CDB backend. This change includes cmake/cargo integration adapted from CMakeRust.
The implementation adds an embedded buffer to the memcache response struct that is reused on each request/response cycle. This buffer is linked to the value
bstring
struct, passed into the CDB reader, and therefore we are able to do a single copy into the buffer that will be used with the write call on the socket.