code: public void onCommit()
     {
        ChangesItem changesItem = pendingChanges.get();
        try
        {
           pushChangesToCoordinator(changesItem.extractSyncChanges());
           changesLog.add(changesItem);
        }
        catch (SecurityException e)
        {
           throw new IllegalStateException("Can't push changes to coordinator", e.getCause());
        }
        catch (RPCException e)
        {
           throw new IllegalStateException("Can't push changes to coordinator", e.getCause());
        }
        finally
        {
           pendingChanges.remove();
        }
     }
docs: {@inheritDoc}