@@ -55,15 +55,12 @@ napi_value Database::Constructor(napi_env env, napi_callback_info info) {
5555}
5656
5757/* *
58- * Removes all entries from the RocksDB database by dropping the column family
59- * and recreating it.
58+ * Removes all entries in a RocksDB database column family using an uncapped range.
6059 *
6160 * @example
6261 * ```typescript
6362 * const db = new NativeDatabase();
64- * await db.clear(); // default batch size of 10000
65- *
66- * await db.clear(1000); // batch size of 1000
63+ * await db.clear();
6764 * ```
6865 */
6966napi_value Database::Clear (napi_env env, napi_callback_info info) {
@@ -72,12 +69,6 @@ napi_value Database::Clear(napi_env env, napi_callback_info info) {
7269
7370 napi_value resolve = argv[0 ];
7471 napi_value reject = argv[1 ];
75- uint32_t batchSize = 10000 ;
76- napi_valuetype batchSizeType;
77- NAPI_STATUS_THROWS (::napi_typeof (env, argv[2 ], &batchSizeType));
78- if (batchSizeType == napi_number) {
79- NAPI_STATUS_THROWS (::napi_get_value_uint32 (env, argv[2 ], &batchSize));
80- }
8172
8273 napi_value name;
8374 NAPI_STATUS_THROWS (::napi_create_string_utf8 (
@@ -87,7 +78,7 @@ napi_value Database::Clear(napi_env env, napi_callback_info info) {
8778 &name
8879 ))
8980
90- auto state = new AsyncClearState (env, *dbHandle, batchSize );
81+ auto state = new AsyncClearState (env, *dbHandle);
9182 NAPI_STATUS_THROWS (::napi_create_reference (env, resolve, 1 , &state->resolveRef ))
9283 NAPI_STATUS_THROWS (::napi_create_reference (env, reject, 1 , &state->rejectRef ))
9384
@@ -101,7 +92,7 @@ napi_value Database::Clear(napi_env env, napi_callback_info info) {
10192 if (!state->handle || !state->handle ->opened () || state->handle ->isCancelled ()) {
10293 state->status = rocksdb::Status::Aborted (" Database closed during clear operation" );
10394 } else {
104- state->status = state->handle ->clear (state-> batchSize , state-> deleted );
95+ state->status = state->handle ->clear ();
10596 }
10697 // signal that execute handler is complete
10798 state->signalExecuteCompleted ();
@@ -116,9 +107,9 @@ napi_value Database::Clear(napi_env env, napi_callback_info info) {
116107 NAPI_STATUS_THROWS_VOID (::napi_get_global (env, &global))
117108
118109 if (state->status .ok ()) {
119- napi_value result ;
120- NAPI_STATUS_THROWS_VOID (::napi_create_int64 (env, state-> deleted , &result ))
121- state->callResolve (result );
110+ napi_value undefined ;
111+ NAPI_STATUS_THROWS_VOID (::napi_get_undefined (env, &undefined ))
112+ state->callResolve (undefined );
122113 } else {
123114 ROCKSDB_STATUS_CREATE_NAPI_ERROR_VOID (state->status , " Clear failed" )
124115 state->callReject (error);
@@ -140,40 +131,24 @@ napi_value Database::Clear(napi_env env, napi_callback_info info) {
140131}
141132
142133/* *
143- * Removes all entries from the RocksDB database by dropping the column family
144- * and recreating it.
134+ * Removes all entries in a RocksDB database column family using an uncapped range (synchronously).
145135 *
146136 * @example
147137 * ```typescript
148138 * const db = new NativeDatabase();
149- * db.clearSync(); // default batch size of 10000
150- *
151- * db.clearSync(1000); // batch size of 1000
139+ * db.clearSync();
152140 * ```
153141 */
154142napi_value Database::ClearSync (napi_env env, napi_callback_info info) {
155143 NAPI_METHOD_ARGV (1 )
156144 UNWRAP_DB_HANDLE_AND_OPEN ()
157-
158- // get the batch size
159- uint32_t batchSize = 10000 ;
160- napi_valuetype batchSizeType;
161- NAPI_STATUS_THROWS (::napi_typeof (env, argv[0 ], &batchSizeType));
162- if (batchSizeType == napi_number) {
163- NAPI_STATUS_THROWS (::napi_get_value_uint32 (env, argv[0 ], &batchSize));
164- }
165-
166- uint64_t deleted = 0 ;
167- rocksdb::Status status = (*dbHandle)->clear (batchSize, deleted);
145+ rocksdb::Status status = (*dbHandle)->clear ();
168146 if (!status.ok ()) {
169147 ROCKSDB_STATUS_CREATE_NAPI_ERROR (status, " Clear failed to write batch" )
170148 ::napi_throw (env, error);
171149 return nullptr ;
172150 }
173-
174- napi_value result;
175- NAPI_STATUS_THROWS (::napi_create_int64 (env, deleted, &result))
176- return result;
151+ NAPI_RETURN_UNDEFINED ()
177152}
178153
179154/* *
@@ -864,6 +839,7 @@ napi_value Database::PutSync(napi_env env, napi_callback_info info) {
864839 NAPI_RETURN_UNDEFINED ()
865840}
866841
842+
867843/* *
868844 * Removes a key from the RocksDB database.
869845 */
0 commit comments