We’ve developed some resources to help you work effectively from home during COVID-19 Click to learn more

Recycle Bin - what does the actual deletion?

Hi, question about the new Recycle Bin functionality in 8.3 R01.

Which process is in charge of the actual deletion of data when the grace-period is up? Is this done by ejscheduler? Or the BatchTaskService?

RE: Recycle Bin - what does the actual deletion?

+1 Would be interesting to know

Av: Matthijs Wagemakers 29. mai 2018

RE: Recycle Bin - what does the actual deletion?

The task is not quite ready, but will be released with the next release of CRM Online. It is done by ejScheduler, more specific ejournalcron.exe

Av: Margrethe Romnes 29. mai 2018

RE: Recycle Bin - what does the actual deletion?

Aha, ok. So for the onsite customers running 8.3 R01, where Recycle Bin is available already, the contacts won't be deleted until the next time they get upgraded to a new version, correct?

Av: Frode Lillerud 29. mai 2018

RE: Recycle Bin - what does the actual deletion?


Av: Margrethe Romnes 30. mai 2018

RE: Recycle Bin - what does the actual deletion?

Ok. Even though Online customers have a tight and predictable upgrade regime, let's not forget that OnSite customers do not. It is common for OnSite customers to go 1-2 years between upgrades. We still have lots of of customers back on 7.5. So preferrably there won't be too many of these half-completed features in in the future, I hope.

Av: Frode Lillerud 31. mai 2018

RE: Recycle Bin - what does the actual deletion?


To add to the comment of Frode, it would be great if things like this would be added to the release notes...

With the GDPR in effect this really is a bad experience for OnSite customers, it effectively means that contact and persons that you delete are never deleted from the system (until you upgrade to > 8.3 R02 which could be > 6 months later).

Luckily we have only upgraded our own installation to 8.3 R01, we will wait until R02 before upgrading any OnSite customer.


Av: David Hollegien 4. jun 2018

RE: Recycle Bin - what does the actual deletion?

Do you have some more information about how the deletion works? I've been running 8.3 R02 a little while now, and the preference is set to only 1 day. Still my Recycle Bin is full of companies and persons that I deleted weeks ago.

Does ejScheduler perform the check every minute? Or once per night?

Av: Frode Lillerud 26. jun 2018

RE: Recycle Bin - what does the actual deletion?

Hello Frode,

8.3 R02 only automatically delete's persons in the recycle bin, companies is next release (see release notes r04)

The ejournalcron does the deletion, we used the -force flag to force the deletion (since we had persons that where already deleted for some time in the recycle bin). Not sure what the timing is for deletion when running from the ejScheduler.

Av: David Hollegien 26. jun 2018

RE: Recycle Bin - what does the actual deletion?

The next release will delete companies (table contact) as well.

One reason we're releasing this "one step at a time" is that, as we consider it, it's no worse than before. In the past, if you deleted a person you would (from NetServer) just delete the person record and leave everything else dangling. With 8.3 R01, you actually see the same thing as long as you work through NetServer or COM, because all queries automatically get a WHERE addition that excludes soft-deleted rows. So even if you see them in the Recycle Bin, other parts of the system do not and you essentially get the same behaviour as before.

Then, when the deep-delete job comes along, it hard-deletes the overdue soft-deleted person records, and then it clears up broken relations. That part is not person-oriented ("let me clean up stuff left by person_id X"), it's the same logic that did the big consistency cleanup a couple of releases ago. Anyemail record that has person_id != AND person_id NOT IN (select person_id from person) gets deleted. When we release the contact deleter, it will be the same principle - follow broken relations and either delete records or set foreign keys to 0, depending on the table.

Thus, releasing soft-delete in one iteration and hard-delete later on, will result in much the same experience: until you upgrade to the version that has hard-delete, relations won't be cleaned, just like in the good old days. The difference in the meantime is that you actually get to see the persons in your Recycle Bin (and can Undelete), instead of them being gone but leaving a mess behind. It was also a requirement to be able to release Bulk Delete; we can't afford to spend the time deep-deleting during a bulk operation, so we needed soft-delete for that.

I appreciate that upgrading OnSite often is not feasible, which is why there is now a longer interval between designated OnSite versions. And we'll try to make sure that such versions contain consistent feature sets. I think the stagewise release of soft/hard delete is not ideal, but we did consider it and think it is not that bad.

By setting the preference to -1 you force deep-delete of everything that is in soft-delete status, regardless of age.

Av: Marek Vokáč 26. jun 2018

RE: Recycle Bin - what does the actual deletion?


Does this mean that when you delete a company in 8.3 R02, the system only sets DeletedDate on the row in CONTACT-table? So it hides the visibility but it still exist 'in the same way' in the database (?). Or is the row/information moved to a different table? 

Is it possible to disable this feature?
I'm thinking of the customers that just upgraded to 8.3 R02 and are going through their database to remove all companies they no longer are allowed to have any information on. If the row is not moved/deleted then how can they clean things up? 


Av: Eivind Johan Fasting 27. jun 2018