The boolean variable DBupdated in your activity is probably different from the one in your AsyncTask. Are you using a static reference to UpdateDB? What you could do is just create a new task. Do you really need that boolean? Otherwise you can add parameters to the asynctask constructor. Or keep the variable in the activity and call the asynctask only when needed.
Also you can use while (true) instead of 1+1=2
and ! DBupdated instead of DBupdated ==false.
Why are you sleeping so long?