Kouhei Sutou
null+****@clear*****
Thu Nov 3 16:37:00 JST 2016
Kouhei Sutou 2016-11-03 16:37:00 +0900 (Thu, 03 Nov 2016) New Revision: fa640094073311b541ea5829ece5e21346ab9106 https://github.com/pgroonga/pgroonga/commit/fa640094073311b541ea5829ece5e21346ab9106 Message: wal: add raw interface Modified files: src/pgrn_wal.c src/pgrn_wal.h Modified: src/pgrn_wal.c (+16 -3) =================================================================== --- src/pgrn_wal.c 2016-11-03 16:36:34 +0900 (6a81c45) +++ src/pgrn_wal.c 2016-11-03 16:37:00 +0900 (39810e3) @@ -635,7 +635,7 @@ PGrnWALInsertColumn(PGrnWALData *data, } void -PGrnWALInsertKey(PGrnWALData *data, grn_obj *key) +PGrnWALInsertKeyRaw(PGrnWALData *data, const void *key, size_t keySize) { #ifdef PGRN_SUPPORT_WAL msgpack_packer *packer; @@ -648,13 +648,26 @@ PGrnWALInsertKey(PGrnWALData *data, grn_obj *key) PGrnWALInsertColumnStart(data, GRN_COLUMN_NAME_KEY, GRN_COLUMN_NAME_KEY_LEN); - msgpack_pack_bin(packer, GRN_BULK_VSIZE(key)); - msgpack_pack_bin_body(packer, GRN_BULK_HEAD(key), GRN_BULK_VSIZE(key)); + msgpack_pack_bin(packer, keySize); + msgpack_pack_bin_body(packer, key, keySize); PGrnWALInsertColumnFinish(data); #endif } void +PGrnWALInsertKey(PGrnWALData *data, grn_obj *key) +{ +#ifdef PGRN_SUPPORT_WAL + if (!data) + return; + + PGrnWALInsertKeyRaw(data, + GRN_BULK_HEAD(key), + GRN_BULK_VSIZE(key)); +#endif +} + +void PGrnWALCreateTable(Relation index, const char *name, size_t nameSize, Modified: src/pgrn_wal.h (+3 -0) =================================================================== --- src/pgrn_wal.h 2016-11-03 16:36:34 +0900 (c56a4e8) +++ src/pgrn_wal.h 2016-11-03 16:37:00 +0900 (00a2404) @@ -26,6 +26,9 @@ void PGrnWALInsertColumnFinish(PGrnWALData *data); void PGrnWALInsertColumn(PGrnWALData *data, grn_obj *column, grn_obj *value); +void PGrnWALInsertKeyRaw(PGrnWALData *data, + const void *key, + size_t keySize); void PGrnWALInsertKey(PGrnWALData *data, grn_obj *key); -------------- next part -------------- HTML����������������������������...下載