if (getSession().getObjectMap(o).getKeyProperties().isEmpty()) {
if (!getSession().getObjectType(o).hasKey()) {
    private void checkLiveness(Object o) {        if (o == null) {            return;        }        if (getSession().getObjectMap(o).getKeyProperties().isEmpty()) {            return;        }        EventList[] els = {m_uncomitted, DATA};        for (int j = 0; j < els.length; j++) {            for (int i = els[j].size() - 1; i >= 0; i--) {                Event ev = els[j].getEvent(i);                if (ev.getObject().equals(o)) {                    if (ev instanceof DeleteEvent) {                        throw new Error("dead object:" + o);                    } else if (ev instanceof CreateEvent) {                        return;                    }                }            }        }        throw new Error("dead object:" + o);    }