I found the solution to this problem.
The issue is that I was DaoSession.clear() inside delete activity, call activity.finish() then go back to list item activity.
It was clearly activity management issue as I designed each activity to have its own DaoSession. Each instance of DaoSession will contain session cache of GreenDao objects.
More information of GreenDao's session cache can be read here
So the solution is clearing List Item activity's DaoSession after delete activity is finished.