@Override
 public void lock(
     Serializable id, Object version, Object object, int timeout, SessionImplementor session)
     throws StaleObjectStateException, JDBCException {
   MapDatastoreProvider dataStore = getProvider(session);
   EntityKey key =
       EntityKeyBuilder.fromData(
           ((OgmEntityPersister) lockable).getRootEntityKeyMetadata(),
           identifierGridType,
           id,
           session);
   dataStore.writeLock(key, timeout);
   // FIXME check the version number as well and raise an optimistic lock exception if there is an
   // issue JPA 2 spec: 3.4.4.2
   // (Comment by Emmanuel)
 }