On the decidability and complexity of query answering over inconsistent and incomplete databases