@@ -107,6 +107,7 @@ typedef struct rocksdb_slicetransform_t rocksdb_slicetransform_t;
107
107
typedef struct rocksdb_snapshot_t rocksdb_snapshot_t ;
108
108
typedef struct rocksdb_writablefile_t rocksdb_writablefile_t ;
109
109
typedef struct rocksdb_writebatch_t rocksdb_writebatch_t ;
110
+ typedef struct rocksdb_save_point_t rocksdb_save_point_t ;
110
111
typedef struct rocksdb_writebatch_wi_t rocksdb_writebatch_wi_t ;
111
112
typedef struct rocksdb_writeoptions_t rocksdb_writeoptions_t ;
112
113
typedef struct rocksdb_universal_compaction_options_t
@@ -872,6 +873,8 @@ extern ROCKSDB_LIBRARY_API void rocksdb_writebatch_iterate_cf(
872
873
const char * v , size_t vlen ));
873
874
extern ROCKSDB_LIBRARY_API const char * rocksdb_writebatch_data (
874
875
rocksdb_writebatch_t * , size_t * size );
876
+ extern ROCKSDB_LIBRARY_API size_t
877
+ rocksdb_writebatch_get_data_size (rocksdb_writebatch_t * );
875
878
extern ROCKSDB_LIBRARY_API void rocksdb_writebatch_set_save_point (
876
879
rocksdb_writebatch_t * );
877
880
extern ROCKSDB_LIBRARY_API void rocksdb_writebatch_rollback_to_save_point (
@@ -882,6 +885,33 @@ extern ROCKSDB_LIBRARY_API void rocksdb_writebatch_update_timestamps(
882
885
rocksdb_writebatch_t * wb , const char * ts , size_t tslen , void * state ,
883
886
size_t (* get_ts_size )(void * , uint32_t ), char * * errptr );
884
887
888
+ extern ROCKSDB_LIBRARY_API unsigned char rocksdb_writebatch_has_put (
889
+ rocksdb_writebatch_t * );
890
+ extern ROCKSDB_LIBRARY_API unsigned char rocksdb_writebatch_has_delete (
891
+ rocksdb_writebatch_t * );
892
+ extern ROCKSDB_LIBRARY_API unsigned char rocksdb_writebatch_has_single_delete (
893
+ rocksdb_writebatch_t * );
894
+ extern ROCKSDB_LIBRARY_API unsigned char rocksdb_writebatch_has_delete_range (
895
+ rocksdb_writebatch_t * );
896
+ extern ROCKSDB_LIBRARY_API unsigned char rocksdb_writebatch_has_merge (
897
+ rocksdb_writebatch_t * );
898
+ extern ROCKSDB_LIBRARY_API unsigned char rocksdb_writebatch_has_begin_prepare (
899
+ rocksdb_writebatch_t * );
900
+ extern ROCKSDB_LIBRARY_API unsigned char rocksdb_writebatch_has_end_prepare (
901
+ rocksdb_writebatch_t * );
902
+ extern ROCKSDB_LIBRARY_API unsigned char rocksdb_writebatch_has_commit (
903
+ rocksdb_writebatch_t * );
904
+ extern ROCKSDB_LIBRARY_API unsigned char rocksdb_writebatch_has_rollback (
905
+ rocksdb_writebatch_t * );
906
+
907
+ extern ROCKSDB_LIBRARY_API void rocksdb_writebatch_set_max_bytes (
908
+ rocksdb_writebatch_t * b , size_t max_bytes );
909
+
910
+ extern ROCKSDB_LIBRARY_API void rocksdb_writebatch_mark_wal_termination_point (
911
+ rocksdb_writebatch_t * b );
912
+ extern ROCKSDB_LIBRARY_API rocksdb_save_point_t *
913
+ rocksdb_writebatch_get_wal_termination_point (rocksdb_writebatch_t * b );
914
+
885
915
/* Write batch with index */
886
916
887
917
extern ROCKSDB_LIBRARY_API rocksdb_writebatch_wi_t *
@@ -974,6 +1004,8 @@ extern ROCKSDB_LIBRARY_API void rocksdb_writebatch_wi_iterate(
974
1004
void (* deleted )(void * , const char * k , size_t klen ));
975
1005
extern ROCKSDB_LIBRARY_API const char * rocksdb_writebatch_wi_data (
976
1006
rocksdb_writebatch_wi_t * b , size_t * size );
1007
+ extern ROCKSDB_LIBRARY_API size_t
1008
+ rocksdb_writebatch_wi_get_data_size (rocksdb_writebatch_wi_t * b );
977
1009
extern ROCKSDB_LIBRARY_API void rocksdb_writebatch_wi_set_save_point (
978
1010
rocksdb_writebatch_wi_t * );
979
1011
extern ROCKSDB_LIBRARY_API void rocksdb_writebatch_wi_rollback_to_save_point (
@@ -1008,6 +1040,21 @@ extern ROCKSDB_LIBRARY_API void rocksdb_writebatch_wi_update_timestamps(
1008
1040
rocksdb_writebatch_wi_t * wbwi , const char * ts , size_t tslen , void * state ,
1009
1041
size_t (* get_ts_size )(void * , uint32_t ), char * * errptr );
1010
1042
1043
+ /* Save point */
1044
+
1045
+ extern ROCKSDB_LIBRARY_API size_t
1046
+ rocksdb_save_point_get_size (rocksdb_save_point_t * sp );
1047
+ extern ROCKSDB_LIBRARY_API uint32_t
1048
+ rocksdb_save_point_get_count (rocksdb_save_point_t * sp );
1049
+ extern ROCKSDB_LIBRARY_API uint32_t
1050
+ rocksdb_save_point_get_content_flags (rocksdb_save_point_t * sp );
1051
+ extern ROCKSDB_LIBRARY_API void rocksdb_save_point_clear (
1052
+ rocksdb_save_point_t * sp );
1053
+ extern ROCKSDB_LIBRARY_API bool rocksdb_save_point_is_cleared (
1054
+ rocksdb_save_point_t * sp );
1055
+ extern ROCKSDB_LIBRARY_API void rocksdb_save_point_destroy (
1056
+ rocksdb_save_point_t * sp );
1057
+
1011
1058
/* Options utils */
1012
1059
1013
1060
// Load the latest rocksdb options from the specified db_path.
0 commit comments