aurora-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bill Farner (JIRA)" <j...@apache.org>
Subject [jira] [Created] (AURORA-134) LogStorage store implementations internally invoke write
Date Tue, 28 Jan 2014 20:28:41 GMT
Bill Farner created AURORA-134:
----------------------------------

             Summary: LogStorage store implementations internally invoke write
                 Key: AURORA-134
                 URL: https://issues.apache.org/jira/browse/AURORA-134
             Project: Aurora
          Issue Type: Bug
          Components: Scheduler
            Reporter: Bill Farner
            Priority: Minor


{{LogStorage}} implements all of the *Store interfaces, and is the outer-most implementation
provided to callers throughout the scheduler (it delegates to MemStorage).  We recently noticed
that {{LogStorage}} implements all mutating store methods by immediately invoking write().,
which is odd since external callers should only gain access to these methods by first invoking
write().  This has the outcome of an additional write() call for all mutate operations.  For
example:

{code}
storage.write(new MutateWork.NoResult.Quiet() {
  @Override protected void execute(MutableStoreProvider storeProvider) {
    for (xx) {
      storeProvider.getAttributeStore().saveHostAttributes(..);
    }
  }
});
{code}

If the inner {{for}} loop executes N times, this block of code ends up invoking LogStorage.write
N+1 times because of this behavior.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Mime
View raw message