# Persisted Deletes as an Option (AER-1226) (3.10.0)

**URL:** https://discuss.aerospike.com/t/persisted-deletes-as-an-option-aer-1226-3-10-0/2741
**Category:** Delivered Requests
**Tags:** deletion, durable-deletion
**Created:** [March 28, 2016, 8:45pm UTC](https://discuss.aerospike.com/t/persisted-deletes-as-an-option-aer-1226-3-10-0/2741 "2016-03-28T20:45:16Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![ronny1204](https://avatars.discourse-cdn.com/v4/letter/r/6de8d8/32.png) [@ronny1204](https://discuss.aerospike.com/u/ronny1204)
#### Post date: [March 28, 2016, 8:45pm UTC](https://discuss.aerospike.com/t/persisted-deletes-as-an-option-aer-1226-3-10-0/2741/1 "2016-03-28T20:45:16Z")

</div>

Deletes are not currently persisted:

> [@Expired/Deleted data reappears after server is restarted](https://discuss.aerospike.com/t/expired-deleted-data-reappears-after-server-is-restarted/470/28):
>
> Only if your TTLs are never expire, and even then you can set a large TTL on tombstones so that the record is almost certainly gone from drive when it is expired. But as you say, the memory cost here is a bit high for data by definition we no longer want.

I read the above thread and know the Aerospike product prioritizes performance over persisted deletes, but some work loads involve infrequent deletes, so persisted delete support from the database (instead of Client-side workarounds, which can be even slower) can make a lot of sense.

I suggest adding support for persisted deletes at either:

1. In aerospike.conf, at the namespace level, or;  
2. In the various clients with an overloaded `delete()` function that accepts a `persist=true` flag AND UDF support

---

<div class="post-metadata">

### Author: ![kporter](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.aerospike.com/kporter/32/515_2.png) [@kporter](https://discuss.aerospike.com/u/kporter)
#### Post date: [October 11, 2016, 7:08pm UTC](https://discuss.aerospike.com/t/persisted-deletes-as-an-option-aer-1226-3-10-0/2741/2 "2016-10-11T19:08:36Z")

</div>

Aerospike 3.10.0 introduces [durable deletes](http://www.aerospike.com/docs/guide/durable_deletes.html) for Aerospike Enterprise. Learn more about how they work here: [www.aerospike.com/docs/guide/durable\_deletes.html](http://www.aerospike.com/docs/guide/durable_deletes.html).

---

<div class="post-metadata">

### Author: ![ronny1204](https://avatars.discourse-cdn.com/v4/letter/r/6de8d8/32.png) [@ronny1204](https://discuss.aerospike.com/u/ronny1204)
#### Post date: [January 23, 2017, 7:51am UTC](https://discuss.aerospike.com/t/persisted-deletes-as-an-option-aer-1226-3-10-0/2741/3 "2017-01-23T07:51:26Z")

</div>

I request that Durable Deletes be made available for the Community Edition and believe that this is beneficial for both the clients as well as Aerospike.

Free/Community editions (e.g. some other DB products) typically provide a solid, convenient foundation in order to make it easy for users to work with the product. Then, as the developer’s web service grows and requires more advanced features, higher capacities, or better support, paid subscriptions are available. Usually, such advanced features refer to things like cross-site replication, partitioning, detailed monitoring/analyses, and other enhancements whose price is then easily justified by the user, who is likely generating more/enough revenue by then.

On the other hand, I view durable deletes as a more fundamental feature, crucial to attract users to trying out Aerospike in the first place. The current, nondurable deletes forces the user to choose between one of several unfavourable scenarios: (1) living with reappearing data (whose records may no longer be referenced, resulting in a permanent storage leak), (2) an empty cold start requiring GBs of data reads upon every restart, or (3) using a clumsy, not-bullet-proof tombstone workaround that also eats away at expensive RAM (due to otherwise-unnecessary indexing of tombstone records).

I have written thousands of lines of Aerospike code (Java and Lua code) and otherwise love the product so far. Down the road, should my service grow popular and generate revenue, a paid subscription might even make more sense from a business perspective. But for now I am still debating what path I should go down.

I’m sure there are other prospective users who feel the same, that they’d love to get started on solid footing first, and desire fundamental functionality to be available at the free tier. If users cannot start comfortably at the low end of the scale, they may be prevented from growing with the system and eventually becoming paying supporters.

Is Aerospike considering releasing Durable Deletes for the Community Edition? I would love to hear how the Aerospike team feels about the situation.

---

<div class="post-metadata">

### Author: ![kporter](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.aerospike.com/kporter/32/515_2.png) [@kporter](https://discuss.aerospike.com/u/kporter)
#### Post date: [February 20, 2020, 6:28pm UTC](https://discuss.aerospike.com/t/persisted-deletes-as-an-option-aer-1226-3-10-0/2741/4 "2020-02-20T18:28:57Z")

</div>


