[rhmessaging-commits] rhmessaging commits: r2476 - in store/trunk/cpp/lib: gen and 5 other directories.
rhmessaging-commits at lists.jboss.org
rhmessaging-commits at lists.jboss.org
Mon Sep 15 15:24:38 EDT 2008
Author: tedross
Date: 2008-09-15 15:24:38 -0400 (Mon, 15 Sep 2008)
New Revision: 2476
Added:
store/trunk/cpp/lib/gen/qmf/
store/trunk/cpp/lib/gen/qmf/com/
store/trunk/cpp/lib/gen/qmf/com/redhat/
store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/
store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/
store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/ArgsJournalExpand.h
store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Journal.cpp
store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Journal.h
store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Package.cpp
store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Package.h
store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Store.cpp
store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Store.h
Removed:
store/trunk/cpp/lib/gen/com/
Modified:
store/trunk/cpp/lib/JournalImpl.cpp
store/trunk/cpp/lib/JournalImpl.h
store/trunk/cpp/lib/Makefile.am
store/trunk/cpp/lib/MessageStoreImpl.cpp
store/trunk/cpp/lib/MessageStoreImpl.h
Log:
Fixed usage of generated include files from qpid
Modified: store/trunk/cpp/lib/JournalImpl.cpp
===================================================================
--- store/trunk/cpp/lib/JournalImpl.cpp 2008-09-15 16:04:28 UTC (rev 2475)
+++ store/trunk/cpp/lib/JournalImpl.cpp 2008-09-15 19:24:38 UTC (rev 2476)
@@ -28,7 +28,7 @@
#include "jrnl/slock.hpp"
#include "qpid/log/Statement.h"
#include "qpid/agent/ManagementAgent.h"
-#include "com/redhat/rhm/store/ArgsJournalExpand.h"
+#include "qmf/com/redhat/rhm/store/ArgsJournalExpand.h"
#include "qpid/sys/Monitor.h"
#include "StoreException.h"
Modified: store/trunk/cpp/lib/JournalImpl.h
===================================================================
--- store/trunk/cpp/lib/JournalImpl.h 2008-09-15 16:04:28 UTC (rev 2475)
+++ store/trunk/cpp/lib/JournalImpl.h 2008-09-15 19:24:38 UTC (rev 2476)
@@ -34,7 +34,7 @@
#include <boost/ptr_container/ptr_list.hpp>
#include <boost/intrusive_ptr.hpp>
#include "qpid/management/Manageable.h"
-#include "com/redhat/rhm/store/Journal.h"
+#include "qmf/com/redhat/rhm/store/Journal.h"
namespace mrg {
namespace msgstore {
Modified: store/trunk/cpp/lib/Makefile.am
===================================================================
--- store/trunk/cpp/lib/Makefile.am 2008-09-15 16:04:28 UTC (rev 2475)
+++ store/trunk/cpp/lib/Makefile.am 2008-09-15 19:24:38 UTC (rev 2476)
@@ -97,13 +97,13 @@
jrnl/txn_rec.hpp \
jrnl/wmgr.hpp \
jrnl/wrfc.hpp \
- gen/com/redhat/rhm/store/Package.cpp \
- gen/com/redhat/rhm/store/Package.h \
- gen/com/redhat/rhm/store/Journal.cpp \
- gen/com/redhat/rhm/store/Journal.h \
- gen/com/redhat/rhm/store/Store.cpp \
- gen/com/redhat/rhm/store/Store.h \
- gen/com/redhat/rhm/store/ArgsJournalExpand.h
+ gen/qmf/com/redhat/rhm/store/Package.cpp \
+ gen/qmf/com/redhat/rhm/store/Package.h \
+ gen/qmf/com/redhat/rhm/store/Journal.cpp \
+ gen/qmf/com/redhat/rhm/store/Journal.h \
+ gen/qmf/com/redhat/rhm/store/Store.cpp \
+ gen/qmf/com/redhat/rhm/store/Store.h \
+ gen/qmf/com/redhat/rhm/store/ArgsJournalExpand.h
BUILT_SOURCES = db-inc.h
Modified: store/trunk/cpp/lib/MessageStoreImpl.cpp
===================================================================
--- store/trunk/cpp/lib/MessageStoreImpl.cpp 2008-09-15 16:04:28 UTC (rev 2475)
+++ store/trunk/cpp/lib/MessageStoreImpl.cpp 2008-09-15 19:24:38 UTC (rev 2476)
@@ -28,7 +28,7 @@
#include "IdPairDbt.h"
#include "jrnl/txn_map.hpp"
#include "qpid/log/Statement.h"
-#include "com/redhat/rhm/store/Package.h"
+#include "qmf/com/redhat/rhm/store/Package.h"
#define MAX_AIO_SLEEPS 1000 // ~1 second
#define AIO_SLEEP_TIME 1000 // 1 milisecond
Modified: store/trunk/cpp/lib/MessageStoreImpl.h
===================================================================
--- store/trunk/cpp/lib/MessageStoreImpl.h 2008-09-15 16:04:28 UTC (rev 2475)
+++ store/trunk/cpp/lib/MessageStoreImpl.h 2008-09-15 19:24:38 UTC (rev 2476)
@@ -36,7 +36,7 @@
#include "qpid/broker/Broker.h"
#include "qpid/broker/MessageStore.h"
#include "qpid/management/Manageable.h"
-#include "com/redhat/rhm/store/Store.h"
+#include "qmf/com/redhat/rhm/store/Store.h"
#include "TxnCtxt.h"
// Assume DB_VERSION_MAJOR == 4
Added: store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/ArgsJournalExpand.h
===================================================================
--- store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/ArgsJournalExpand.h (rev 0)
+++ store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/ArgsJournalExpand.h 2008-09-15 19:24:38 UTC (rev 2476)
@@ -0,0 +1,46 @@
+
+#ifndef _ARGS_JOURNALEXPAND_
+#define _ARGS_JOURNALEXPAND_
+
+//
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+//
+
+// This source file was created by a code generator.
+// Please do not edit.
+
+#include "qpid/management/Args.h"
+#include <string>
+
+namespace qmf {
+namespace com {
+namespace redhat {
+namespace rhm {
+namespace store {
+
+
+ class ArgsJournalExpand : public ::qpid::management::Args
+{
+ public:
+ uint32_t i_by;
+
+};
+
+}}}}}
+
+#endif /*!_ARGS_JOURNALEXPAND_*/
Added: store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Journal.cpp
===================================================================
--- store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Journal.cpp (rev 0)
+++ store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Journal.cpp 2008-09-15 19:24:38 UTC (rev 2476)
@@ -0,0 +1,576 @@
+
+//
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+//
+
+// This source file was created by a code generator.
+// Please do not edit.
+
+#include "qpid/log/Statement.h"
+#include "qpid/framing/FieldTable.h"
+#include "qpid/management/Manageable.h"
+#include "qpid/agent/ManagementAgent.h"
+#include "Journal.h"
+#include "ArgsJournalExpand.h"
+
+
+using namespace qmf::com::redhat::rhm::store;
+using namespace qpid::framing;
+using qpid::management::ManagementAgent;
+using qpid::management::Manageable;
+using qpid::management::ManagementObject;
+using qpid::management::Args;
+using std::string;
+
+string Journal::packageName = string ("com.redhat.rhm.store");
+string Journal::className = string ("journal");
+uint8_t Journal::md5Sum[16] =
+ {0x1e,0x63,0xa4,0x3d,0xa3,0x1b,0xc0,0x1,0x1,0x70,0x5a,0x2a,0xb4,0xa,0x1b,0x4e};
+
+Journal::Journal (ManagementAgent* _agent, Manageable* _core) :
+ ManagementObject(_agent, _core)
+{
+
+ recordDepth = 0;
+ recordDepthHigh = 0;
+ recordDepthLow = 0;
+ outstandingAIOs = 0;
+ outstandingAIOsHigh = 0;
+ outstandingAIOsLow = 0;
+ freeFileCount = 0;
+ freeFileCountHigh = 0;
+ freeFileCountLow = 0;
+ availableFileCount = 0;
+ availableFileCountHigh = 0;
+ availableFileCountLow = 0;
+ writePageCacheDepth = 0;
+ writePageCacheDepthHigh = 0;
+ writePageCacheDepthLow = 0;
+ readPageCacheDepth = 0;
+ readPageCacheDepthHigh = 0;
+ readPageCacheDepthLow = 0;
+
+
+
+ maxThreads = agent->getMaxThreads();
+ perThreadStatsArray = new struct PerThreadStats*[maxThreads];
+ for (int idx = 0; idx < maxThreads; idx++)
+ perThreadStatsArray[idx] = 0;
+
+}
+
+Journal::~Journal ()
+{
+
+ for (int idx = 0; idx < maxThreads; idx++)
+ if (perThreadStatsArray[idx] != 0)
+ delete perThreadStatsArray[idx];
+ delete[] perThreadStatsArray;
+
+}
+
+namespace {
+ const string NAME("name");
+ const string TYPE("type");
+ const string ACCESS("access");
+ const string INDEX("index");
+ const string OPTIONAL("optional");
+ const string UNIT("unit");
+ const string MIN("min");
+ const string MAX("max");
+ const string MAXLEN("maxlen");
+ const string DESC("desc");
+ const string ARGCOUNT("argCount");
+ const string ARGS("args");
+ const string DIR("dir");
+ const string DEFAULT("default");
+}
+
+void Journal::registerClass(ManagementAgent* agent)
+{
+ agent->RegisterClass(packageName, className, md5Sum, writeSchema);
+}
+
+void Journal::writeSchema (Buffer& buf)
+{
+ FieldTable ft;
+
+ // Schema class header:
+ buf.putShortString (packageName); // Package Name
+ buf.putShortString (className); // Class Name
+ buf.putBin128 (md5Sum); // Schema Hash
+ buf.putShort (11); // Config Element Count
+ buf.putShort (28); // Inst Element Count
+ buf.putShort (1); // Method Count
+ buf.putShort (0); // Event Count
+
+ // Properties
+ ft = FieldTable ();
+ ft.setString (NAME, "queueRef");
+ ft.setInt (TYPE, TYPE_REF);
+ ft.setInt (ACCESS, ACCESS_RO);
+ ft.setInt (INDEX, 0);
+ ft.setInt (OPTIONAL, 0);
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "name");
+ ft.setInt (TYPE, TYPE_SSTR);
+ ft.setInt (ACCESS, ACCESS_RO);
+ ft.setInt (INDEX, 1);
+ ft.setInt (OPTIONAL, 0);
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "directory");
+ ft.setInt (TYPE, TYPE_SSTR);
+ ft.setInt (ACCESS, ACCESS_RO);
+ ft.setInt (INDEX, 0);
+ ft.setInt (OPTIONAL, 0);
+ ft.setString (DESC, "Directory containing journal files");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "baseFileName");
+ ft.setInt (TYPE, TYPE_SSTR);
+ ft.setInt (ACCESS, ACCESS_RO);
+ ft.setInt (INDEX, 0);
+ ft.setInt (OPTIONAL, 0);
+ ft.setString (DESC, "Base filename prefix for journal");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "writePageSize");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setInt (ACCESS, ACCESS_RO);
+ ft.setInt (INDEX, 0);
+ ft.setInt (OPTIONAL, 0);
+ ft.setString (UNIT, "byte");
+ ft.setString (DESC, "Page size in write-page-cache");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "writePages");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setInt (ACCESS, ACCESS_RO);
+ ft.setInt (INDEX, 0);
+ ft.setInt (OPTIONAL, 0);
+ ft.setString (UNIT, "wpage");
+ ft.setString (DESC, "Number of pages in write-page-cache");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "readPageSize");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setInt (ACCESS, ACCESS_RO);
+ ft.setInt (INDEX, 0);
+ ft.setInt (OPTIONAL, 0);
+ ft.setString (UNIT, "byte");
+ ft.setString (DESC, "Page size in read-page-cache");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "readPages");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setInt (ACCESS, ACCESS_RO);
+ ft.setInt (INDEX, 0);
+ ft.setInt (OPTIONAL, 0);
+ ft.setString (UNIT, "rpage");
+ ft.setString (DESC, "Number of pages in read-page-cache");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "initialFileCount");
+ ft.setInt (TYPE, TYPE_U16);
+ ft.setInt (ACCESS, ACCESS_RO);
+ ft.setInt (INDEX, 0);
+ ft.setInt (OPTIONAL, 0);
+ ft.setString (UNIT, "file");
+ ft.setString (DESC, "Number of files initially allocated to this journal");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "dataFileSize");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setInt (ACCESS, ACCESS_RO);
+ ft.setInt (INDEX, 0);
+ ft.setInt (OPTIONAL, 0);
+ ft.setString (UNIT, "byte");
+ ft.setString (DESC, "Size of each journal data file");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "currentFileCount");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setInt (ACCESS, ACCESS_RO);
+ ft.setInt (INDEX, 0);
+ ft.setInt (OPTIONAL, 0);
+ ft.setString (UNIT, "file");
+ ft.setString (DESC, "Number of files currently allocated to this journal");
+ buf.put (ft);
+
+
+ // Statistics
+ ft = FieldTable ();
+ ft.setString (NAME, "recordDepth");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "record");
+ ft.setString (DESC, "Number of currently enqueued records (durable messages)");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "recordDepthHigh");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "record");
+ ft.setString (DESC, "Number of currently enqueued records (durable messages) (High)");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "recordDepthLow");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "record");
+ ft.setString (DESC, "Number of currently enqueued records (durable messages) (Low)");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "enqueues");
+ ft.setInt (TYPE, TYPE_U64);
+ ft.setString (UNIT, "record");
+ ft.setString (DESC, "Total enqueued records on journal");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "dequeues");
+ ft.setInt (TYPE, TYPE_U64);
+ ft.setString (UNIT, "record");
+ ft.setString (DESC, "Total dequeued records on journal");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "txnEnqueues");
+ ft.setInt (TYPE, TYPE_U64);
+ ft.setString (UNIT, "record");
+ ft.setString (DESC, "Total transactional enqueued records on journal");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "txnDequeues");
+ ft.setInt (TYPE, TYPE_U64);
+ ft.setString (UNIT, "record");
+ ft.setString (DESC, "Total transactional dequeued records on journal");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "txnCommits");
+ ft.setInt (TYPE, TYPE_U64);
+ ft.setString (UNIT, "record");
+ ft.setString (DESC, "Total transactional commit records on journal");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "txnAborts");
+ ft.setInt (TYPE, TYPE_U64);
+ ft.setString (UNIT, "record");
+ ft.setString (DESC, "Total transactional abort records on journal");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "outstandingAIOs");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "aio_op");
+ ft.setString (DESC, "Number of currently outstanding AIO requests in Async IO system");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "outstandingAIOsHigh");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "aio_op");
+ ft.setString (DESC, "Number of currently outstanding AIO requests in Async IO system (High)");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "outstandingAIOsLow");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "aio_op");
+ ft.setString (DESC, "Number of currently outstanding AIO requests in Async IO system (Low)");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "freeFileCount");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "file");
+ ft.setString (DESC, "Number of files free on this journal. Includes free files trapped in holes.");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "freeFileCountHigh");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "file");
+ ft.setString (DESC, "Number of files free on this journal. Includes free files trapped in holes. (High)");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "freeFileCountLow");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "file");
+ ft.setString (DESC, "Number of files free on this journal. Includes free files trapped in holes. (Low)");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "availableFileCount");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "file");
+ ft.setString (DESC, "Number of files available to be written. Excluding holes");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "availableFileCountHigh");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "file");
+ ft.setString (DESC, "Number of files available to be written. Excluding holes (High)");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "availableFileCountLow");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "file");
+ ft.setString (DESC, "Number of files available to be written. Excluding holes (Low)");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "writeWaitFailures");
+ ft.setInt (TYPE, TYPE_U64);
+ ft.setString (UNIT, "record");
+ ft.setString (DESC, "AIO Wait failures on write");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "writeBusyFailures");
+ ft.setInt (TYPE, TYPE_U64);
+ ft.setString (UNIT, "record");
+ ft.setString (DESC, "AIO Busy failures on write");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "readRecordCount");
+ ft.setInt (TYPE, TYPE_U64);
+ ft.setString (UNIT, "record");
+ ft.setString (DESC, "Records read from the journal");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "readBusyFailures");
+ ft.setInt (TYPE, TYPE_U64);
+ ft.setString (UNIT, "record");
+ ft.setString (DESC, "AIO Busy failures on read");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "writePageCacheDepth");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "wpage");
+ ft.setString (DESC, "Current depth of write-page-cache");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "writePageCacheDepthHigh");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "wpage");
+ ft.setString (DESC, "Current depth of write-page-cache (High)");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "writePageCacheDepthLow");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "wpage");
+ ft.setString (DESC, "Current depth of write-page-cache (Low)");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "readPageCacheDepth");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "rpage");
+ ft.setString (DESC, "Current depth of read-page-cache");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "readPageCacheDepthHigh");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "rpage");
+ ft.setString (DESC, "Current depth of read-page-cache (High)");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "readPageCacheDepthLow");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "rpage");
+ ft.setString (DESC, "Current depth of read-page-cache (Low)");
+ buf.put (ft);
+
+
+ // Methods
+ ft = FieldTable ();
+ ft.setString (NAME, "expand");
+ ft.setInt (ARGCOUNT, 1);
+ ft.setString (DESC, "Increase number of files allocated for this journal");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "by");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (DIR, "I");
+ ft.setString (DESC, "Number of files to increase journal size by");
+ buf.put (ft);
+
+
+ // Events
+
+}
+
+
+void Journal::aggregatePerThreadStats(struct PerThreadStats* totals)
+{
+ totals->enqueues = 0;
+ totals->dequeues = 0;
+ totals->txnEnqueues = 0;
+ totals->txnDequeues = 0;
+ totals->txnCommits = 0;
+ totals->txnAborts = 0;
+ totals->writeWaitFailures = 0;
+ totals->writeBusyFailures = 0;
+ totals->readRecordCount = 0;
+ totals->readBusyFailures = 0;
+
+ for (int idx = 0; idx < maxThreads; idx++) {
+ struct PerThreadStats* threadStats = perThreadStatsArray[idx];
+ if (threadStats != 0) {
+ totals->enqueues += threadStats->enqueues;
+ totals->dequeues += threadStats->dequeues;
+ totals->txnEnqueues += threadStats->txnEnqueues;
+ totals->txnDequeues += threadStats->txnDequeues;
+ totals->txnCommits += threadStats->txnCommits;
+ totals->txnAborts += threadStats->txnAborts;
+ totals->writeWaitFailures += threadStats->writeWaitFailures;
+ totals->writeBusyFailures += threadStats->writeBusyFailures;
+ totals->readRecordCount += threadStats->readRecordCount;
+ totals->readBusyFailures += threadStats->readBusyFailures;
+
+ }
+ }
+}
+
+
+void Journal::writeProperties (Buffer& buf)
+{
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ configChanged = false;
+
+ writeTimestamps (buf);
+
+ queueRef.encode(buf);
+ buf.putShortString(name);
+ buf.putShortString(directory);
+ buf.putShortString(baseFileName);
+ buf.putLong(writePageSize);
+ buf.putLong(writePages);
+ buf.putLong(readPageSize);
+ buf.putLong(readPages);
+ buf.putShort(initialFileCount);
+ buf.putLong(dataFileSize);
+ buf.putLong(currentFileCount);
+
+}
+
+void Journal::writeStatistics (Buffer& buf, bool skipHeaders)
+{
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ instChanged = false;
+
+
+ struct PerThreadStats totals;
+ aggregatePerThreadStats(&totals);
+
+
+ if (!skipHeaders)
+ writeTimestamps (buf);
+ buf.putLong(recordDepth);
+ buf.putLong(recordDepthHigh);
+ buf.putLong(recordDepthLow);
+ buf.putLongLong(totals.enqueues);
+ buf.putLongLong(totals.dequeues);
+ buf.putLongLong(totals.txnEnqueues);
+ buf.putLongLong(totals.txnDequeues);
+ buf.putLongLong(totals.txnCommits);
+ buf.putLongLong(totals.txnAborts);
+ buf.putLong(outstandingAIOs);
+ buf.putLong(outstandingAIOsHigh);
+ buf.putLong(outstandingAIOsLow);
+ buf.putLong(freeFileCount);
+ buf.putLong(freeFileCountHigh);
+ buf.putLong(freeFileCountLow);
+ buf.putLong(availableFileCount);
+ buf.putLong(availableFileCountHigh);
+ buf.putLong(availableFileCountLow);
+ buf.putLongLong(totals.writeWaitFailures);
+ buf.putLongLong(totals.writeBusyFailures);
+ buf.putLongLong(totals.readRecordCount);
+ buf.putLongLong(totals.readBusyFailures);
+ buf.putLong(writePageCacheDepth);
+ buf.putLong(writePageCacheDepthHigh);
+ buf.putLong(writePageCacheDepthLow);
+ buf.putLong(readPageCacheDepth);
+ buf.putLong(readPageCacheDepthHigh);
+ buf.putLong(readPageCacheDepthLow);
+
+
+ // Maintenance of hi-lo statistics
+ recordDepthHigh = recordDepth;
+ recordDepthLow = recordDepth;
+ outstandingAIOsHigh = outstandingAIOs;
+ outstandingAIOsLow = outstandingAIOs;
+ freeFileCountHigh = freeFileCount;
+ freeFileCountLow = freeFileCount;
+ availableFileCountHigh = availableFileCount;
+ availableFileCountLow = availableFileCount;
+ writePageCacheDepthHigh = writePageCacheDepth;
+ writePageCacheDepthLow = writePageCacheDepth;
+ readPageCacheDepthHigh = readPageCacheDepth;
+ readPageCacheDepthLow = readPageCacheDepth;
+
+
+}
+
+void Journal::doMethod (string methodName, Buffer& inBuf, Buffer& outBuf)
+{
+ Manageable::status_t status = Manageable::STATUS_UNKNOWN_METHOD;
+ std::string text;
+
+ if (methodName == "expand") {
+ ArgsJournalExpand ioArgs;
+ ioArgs.i_by = inBuf.getLong();
+ status = coreObject->ManagementMethod (METHOD_EXPAND, ioArgs, text);
+ outBuf.putLong (status);
+ outBuf.putShortString (::qpid::management::Manageable::StatusText (status, text));
+ return;
+ }
+
+ outBuf.putLong(status);
+ outBuf.putShortString(Manageable::StatusText(status, text));
+}
+
+
Added: store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Journal.h
===================================================================
--- store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Journal.h (rev 0)
+++ store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Journal.h 2008-09-15 19:24:38 UTC (rev 2476)
@@ -0,0 +1,419 @@
+
+#ifndef _MANAGEMENT_JOURNAL_
+#define _MANAGEMENT_JOURNAL_
+
+//
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+//
+
+// This source file was created by a code generator.
+// Please do not edit.
+
+#include "qpid/management/ManagementObject.h"
+#include "qpid/framing/FieldTable.h"
+#include "qpid/framing/Uuid.h"
+
+namespace qmf {
+namespace com {
+namespace redhat {
+namespace rhm {
+namespace store {
+
+
+class Journal : public ::qpid::management::ManagementObject
+{
+ private:
+
+ static std::string packageName;
+ static std::string className;
+ static uint8_t md5Sum[16];
+
+
+ // Properties
+ ::qpid::management::ObjectId queueRef;
+ std::string name;
+ std::string directory;
+ std::string baseFileName;
+ uint32_t writePageSize;
+ uint32_t writePages;
+ uint32_t readPageSize;
+ uint32_t readPages;
+ uint16_t initialFileCount;
+ uint32_t dataFileSize;
+ uint32_t currentFileCount;
+
+ // Statistics
+ uint32_t recordDepth;
+ uint32_t recordDepthHigh;
+ uint32_t recordDepthLow;
+ uint32_t outstandingAIOs;
+ uint32_t outstandingAIOsHigh;
+ uint32_t outstandingAIOsLow;
+ uint32_t freeFileCount;
+ uint32_t freeFileCountHigh;
+ uint32_t freeFileCountLow;
+ uint32_t availableFileCount;
+ uint32_t availableFileCountHigh;
+ uint32_t availableFileCountLow;
+ uint32_t writePageCacheDepth;
+ uint32_t writePageCacheDepthHigh;
+ uint32_t writePageCacheDepthLow;
+ uint32_t readPageCacheDepth;
+ uint32_t readPageCacheDepthHigh;
+ uint32_t readPageCacheDepthLow;
+
+
+ // Per-Thread Statistics
+ struct PerThreadStats {
+ uint64_t enqueues;
+ uint64_t dequeues;
+ uint64_t txnEnqueues;
+ uint64_t txnDequeues;
+ uint64_t txnCommits;
+ uint64_t txnAborts;
+ uint64_t writeWaitFailures;
+ uint64_t writeBusyFailures;
+ uint64_t readRecordCount;
+ uint64_t readBusyFailures;
+
+ };
+
+ struct PerThreadStats** perThreadStatsArray;
+
+ inline struct PerThreadStats* getThreadStats() {
+ int index = getThreadIndex();
+ struct PerThreadStats* threadStats = perThreadStatsArray[index];
+ if (threadStats == 0) {
+ threadStats = new(PerThreadStats);
+ perThreadStatsArray[index] = threadStats;
+ threadStats->enqueues = 0;
+ threadStats->dequeues = 0;
+ threadStats->txnEnqueues = 0;
+ threadStats->txnDequeues = 0;
+ threadStats->txnCommits = 0;
+ threadStats->txnAborts = 0;
+ threadStats->writeWaitFailures = 0;
+ threadStats->writeBusyFailures = 0;
+ threadStats->readRecordCount = 0;
+ threadStats->readBusyFailures = 0;
+
+ }
+ return threadStats;
+ }
+
+ void aggregatePerThreadStats(struct PerThreadStats*);
+
+ // Private Methods
+ static void writeSchema (::qpid::framing::Buffer& buf);
+ void writeProperties (::qpid::framing::Buffer& buf);
+ void writeStatistics (::qpid::framing::Buffer& buf,
+ bool skipHeaders = false);
+ void doMethod (std::string methodName,
+ ::qpid::framing::Buffer& inBuf,
+ ::qpid::framing::Buffer& outBuf);
+ writeSchemaCall_t getWriteSchemaCall(void) { return writeSchema; }
+
+ public:
+
+ Journal (::qpid::management::ManagementAgent* agent,
+ ::qpid::management::Manageable* coreObject);
+ ~Journal (void);
+
+ void setReference(::qpid::management::ObjectId objectId) { queueRef = objectId; }
+
+
+ static void registerClass (::qpid::management::ManagementAgent* agent);
+ std::string& getPackageName (void) { return packageName; }
+ std::string& getClassName (void) { return className; }
+ uint8_t* getMd5Sum (void) { return md5Sum; }
+
+ // Method IDs
+ static const uint32_t METHOD_EXPAND = 1;
+
+ // Accessor Methods
+ inline void set_queueRef (const ::qpid::management::ObjectId& val) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ queueRef = val;
+ configChanged = true;
+ }
+ inline const ::qpid::management::ObjectId& get_queueRef() {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ return queueRef;
+ }
+ inline void set_name (const std::string& val) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ name = val;
+ configChanged = true;
+ }
+ inline const std::string& get_name() {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ return name;
+ }
+ inline void set_directory (const std::string& val) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ directory = val;
+ configChanged = true;
+ }
+ inline const std::string& get_directory() {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ return directory;
+ }
+ inline void set_baseFileName (const std::string& val) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ baseFileName = val;
+ configChanged = true;
+ }
+ inline const std::string& get_baseFileName() {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ return baseFileName;
+ }
+ inline void set_writePageSize (uint32_t val) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ writePageSize = val;
+ configChanged = true;
+ }
+ inline uint32_t get_writePageSize() {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ return writePageSize;
+ }
+ inline void set_writePages (uint32_t val) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ writePages = val;
+ configChanged = true;
+ }
+ inline uint32_t get_writePages() {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ return writePages;
+ }
+ inline void set_readPageSize (uint32_t val) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ readPageSize = val;
+ configChanged = true;
+ }
+ inline uint32_t get_readPageSize() {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ return readPageSize;
+ }
+ inline void set_readPages (uint32_t val) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ readPages = val;
+ configChanged = true;
+ }
+ inline uint32_t get_readPages() {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ return readPages;
+ }
+ inline void set_initialFileCount (uint16_t val) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ initialFileCount = val;
+ configChanged = true;
+ }
+ inline uint16_t get_initialFileCount() {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ return initialFileCount;
+ }
+ inline void set_dataFileSize (uint32_t val) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ dataFileSize = val;
+ configChanged = true;
+ }
+ inline uint32_t get_dataFileSize() {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ return dataFileSize;
+ }
+ inline void set_currentFileCount (uint32_t val) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ currentFileCount = val;
+ configChanged = true;
+ }
+ inline uint32_t get_currentFileCount() {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ return currentFileCount;
+ }
+ inline void inc_recordDepth (uint32_t by = 1) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ recordDepth += by;
+ if (recordDepthHigh < recordDepth)
+ recordDepthHigh = recordDepth;
+ instChanged = true;
+ }
+ inline void dec_recordDepth (uint32_t by = 1) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ recordDepth -= by;
+ if (recordDepthLow > recordDepth)
+ recordDepthLow = recordDepth;
+ instChanged = true;
+ }
+ inline void inc_enqueues (uint64_t by = 1) {
+ getThreadStats()->enqueues += by;
+ instChanged = true;
+ }
+ inline void dec_enqueues (uint64_t by = 1) {
+ getThreadStats()->enqueues -= by;
+ instChanged = true;
+ }
+ inline void inc_dequeues (uint64_t by = 1) {
+ getThreadStats()->dequeues += by;
+ instChanged = true;
+ }
+ inline void dec_dequeues (uint64_t by = 1) {
+ getThreadStats()->dequeues -= by;
+ instChanged = true;
+ }
+ inline void inc_txnEnqueues (uint64_t by = 1) {
+ getThreadStats()->txnEnqueues += by;
+ instChanged = true;
+ }
+ inline void dec_txnEnqueues (uint64_t by = 1) {
+ getThreadStats()->txnEnqueues -= by;
+ instChanged = true;
+ }
+ inline void inc_txnDequeues (uint64_t by = 1) {
+ getThreadStats()->txnDequeues += by;
+ instChanged = true;
+ }
+ inline void dec_txnDequeues (uint64_t by = 1) {
+ getThreadStats()->txnDequeues -= by;
+ instChanged = true;
+ }
+ inline void inc_txnCommits (uint64_t by = 1) {
+ getThreadStats()->txnCommits += by;
+ instChanged = true;
+ }
+ inline void dec_txnCommits (uint64_t by = 1) {
+ getThreadStats()->txnCommits -= by;
+ instChanged = true;
+ }
+ inline void inc_txnAborts (uint64_t by = 1) {
+ getThreadStats()->txnAborts += by;
+ instChanged = true;
+ }
+ inline void dec_txnAborts (uint64_t by = 1) {
+ getThreadStats()->txnAborts -= by;
+ instChanged = true;
+ }
+ inline void inc_outstandingAIOs (uint32_t by = 1) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ outstandingAIOs += by;
+ if (outstandingAIOsHigh < outstandingAIOs)
+ outstandingAIOsHigh = outstandingAIOs;
+ instChanged = true;
+ }
+ inline void dec_outstandingAIOs (uint32_t by = 1) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ outstandingAIOs -= by;
+ if (outstandingAIOsLow > outstandingAIOs)
+ outstandingAIOsLow = outstandingAIOs;
+ instChanged = true;
+ }
+ inline void inc_freeFileCount (uint32_t by = 1) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ freeFileCount += by;
+ if (freeFileCountHigh < freeFileCount)
+ freeFileCountHigh = freeFileCount;
+ instChanged = true;
+ }
+ inline void dec_freeFileCount (uint32_t by = 1) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ freeFileCount -= by;
+ if (freeFileCountLow > freeFileCount)
+ freeFileCountLow = freeFileCount;
+ instChanged = true;
+ }
+ inline void inc_availableFileCount (uint32_t by = 1) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ availableFileCount += by;
+ if (availableFileCountHigh < availableFileCount)
+ availableFileCountHigh = availableFileCount;
+ instChanged = true;
+ }
+ inline void dec_availableFileCount (uint32_t by = 1) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ availableFileCount -= by;
+ if (availableFileCountLow > availableFileCount)
+ availableFileCountLow = availableFileCount;
+ instChanged = true;
+ }
+ inline void inc_writeWaitFailures (uint64_t by = 1) {
+ getThreadStats()->writeWaitFailures += by;
+ instChanged = true;
+ }
+ inline void dec_writeWaitFailures (uint64_t by = 1) {
+ getThreadStats()->writeWaitFailures -= by;
+ instChanged = true;
+ }
+ inline void inc_writeBusyFailures (uint64_t by = 1) {
+ getThreadStats()->writeBusyFailures += by;
+ instChanged = true;
+ }
+ inline void dec_writeBusyFailures (uint64_t by = 1) {
+ getThreadStats()->writeBusyFailures -= by;
+ instChanged = true;
+ }
+ inline void inc_readRecordCount (uint64_t by = 1) {
+ getThreadStats()->readRecordCount += by;
+ instChanged = true;
+ }
+ inline void dec_readRecordCount (uint64_t by = 1) {
+ getThreadStats()->readRecordCount -= by;
+ instChanged = true;
+ }
+ inline void inc_readBusyFailures (uint64_t by = 1) {
+ getThreadStats()->readBusyFailures += by;
+ instChanged = true;
+ }
+ inline void dec_readBusyFailures (uint64_t by = 1) {
+ getThreadStats()->readBusyFailures -= by;
+ instChanged = true;
+ }
+ inline void inc_writePageCacheDepth (uint32_t by = 1) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ writePageCacheDepth += by;
+ if (writePageCacheDepthHigh < writePageCacheDepth)
+ writePageCacheDepthHigh = writePageCacheDepth;
+ instChanged = true;
+ }
+ inline void dec_writePageCacheDepth (uint32_t by = 1) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ writePageCacheDepth -= by;
+ if (writePageCacheDepthLow > writePageCacheDepth)
+ writePageCacheDepthLow = writePageCacheDepth;
+ instChanged = true;
+ }
+ inline void inc_readPageCacheDepth (uint32_t by = 1) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ readPageCacheDepth += by;
+ if (readPageCacheDepthHigh < readPageCacheDepth)
+ readPageCacheDepthHigh = readPageCacheDepth;
+ instChanged = true;
+ }
+ inline void dec_readPageCacheDepth (uint32_t by = 1) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ readPageCacheDepth -= by;
+ if (readPageCacheDepthLow > readPageCacheDepth)
+ readPageCacheDepthLow = readPageCacheDepth;
+ instChanged = true;
+ }
+
+ // Event Methods
+
+};
+
+}}}}}
+
+#endif /*!_MANAGEMENT_JOURNAL_*/
Added: store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Package.cpp
===================================================================
--- store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Package.cpp (rev 0)
+++ store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Package.cpp 2008-09-15 19:24:38 UTC (rev 2476)
@@ -0,0 +1,37 @@
+
+//
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+//
+
+// This source file was created by a code generator.
+// Please do not edit.
+
+#include "Package.h"
+#include "Store.h"
+#include "Journal.h"
+
+
+using namespace qmf::com::redhat::rhm::store;
+
+Package::Package (::qpid::management::ManagementAgent* agent)
+{
+ Store::registerClass(agent);
+ Journal::registerClass(agent);
+
+}
+
Added: store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Package.h
===================================================================
--- store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Package.h (rev 0)
+++ store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Package.h 2008-09-15 19:24:38 UTC (rev 2476)
@@ -0,0 +1,46 @@
+
+#ifndef _MANAGEMENT_PACKAGE_COM_REDHAT_RHM_STORE_
+#define _MANAGEMENT_PACKAGE_COM_REDHAT_RHM_STORE_
+
+//
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+//
+
+// This source file was created by a code generator.
+// Please do not edit.
+
+#include "qpid/agent/ManagementAgent.h"
+
+namespace qmf {
+namespace com {
+namespace redhat {
+namespace rhm {
+namespace store {
+
+
+class Package
+{
+ public:
+ Package (::qpid::management::ManagementAgent* agent);
+ ~Package () {}
+};
+
+}}}}}
+
+
+#endif /*!_MANAGEMENT_PACKAGE_COM_REDHAT_RHM_STORE_*/
Added: store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Store.cpp
===================================================================
--- store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Store.cpp (rev 0)
+++ store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Store.cpp 2008-09-15 19:24:38 UTC (rev 2476)
@@ -0,0 +1,368 @@
+
+//
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+//
+
+// This source file was created by a code generator.
+// Please do not edit.
+
+#include "qpid/log/Statement.h"
+#include "qpid/framing/FieldTable.h"
+#include "qpid/management/Manageable.h"
+#include "qpid/agent/ManagementAgent.h"
+#include "Store.h"
+
+
+using namespace qmf::com::redhat::rhm::store;
+using namespace qpid::framing;
+using qpid::management::ManagementAgent;
+using qpid::management::Manageable;
+using qpid::management::ManagementObject;
+using qpid::management::Args;
+using std::string;
+
+string Store::packageName = string ("com.redhat.rhm.store");
+string Store::className = string ("store");
+uint8_t Store::md5Sum[16] =
+ {0x18,0xd,0xd4,0x15,0xd3,0x9a,0xf,0xbe,0x3a,0x40,0xe1,0x1b,0x9e,0x5b,0x7e,0x86};
+
+Store::Store (ManagementAgent* _agent, Manageable* _core, ::qpid::management::Manageable* _parent) :
+ ManagementObject(_agent, _core)
+{
+ brokerRef = _parent->GetManagementObject ()->getObjectId ();
+ tplTransactionDepth = 0;
+ tplTransactionDepthHigh = 0;
+ tplTransactionDepthLow = 0;
+ tplOutstandingAIOs = 0;
+ tplOutstandingAIOsHigh = 0;
+ tplOutstandingAIOsLow = 0;
+
+
+
+ maxThreads = agent->getMaxThreads();
+ perThreadStatsArray = new struct PerThreadStats*[maxThreads];
+ for (int idx = 0; idx < maxThreads; idx++)
+ perThreadStatsArray[idx] = 0;
+
+}
+
+Store::~Store ()
+{
+
+ for (int idx = 0; idx < maxThreads; idx++)
+ if (perThreadStatsArray[idx] != 0)
+ delete perThreadStatsArray[idx];
+ delete[] perThreadStatsArray;
+
+}
+
+namespace {
+ const string NAME("name");
+ const string TYPE("type");
+ const string ACCESS("access");
+ const string INDEX("index");
+ const string OPTIONAL("optional");
+ const string UNIT("unit");
+ const string MIN("min");
+ const string MAX("max");
+ const string MAXLEN("maxlen");
+ const string DESC("desc");
+ const string ARGCOUNT("argCount");
+ const string ARGS("args");
+ const string DIR("dir");
+ const string DEFAULT("default");
+}
+
+void Store::registerClass(ManagementAgent* agent)
+{
+ agent->RegisterClass(packageName, className, md5Sum, writeSchema);
+}
+
+void Store::writeSchema (Buffer& buf)
+{
+ FieldTable ft;
+
+ // Schema class header:
+ buf.putShortString (packageName); // Package Name
+ buf.putShortString (className); // Class Name
+ buf.putBin128 (md5Sum); // Schema Hash
+ buf.putShort (11); // Config Element Count
+ buf.putShort (9); // Inst Element Count
+ buf.putShort (0); // Method Count
+ buf.putShort (0); // Event Count
+
+ // Properties
+ ft = FieldTable ();
+ ft.setString (NAME, "brokerRef");
+ ft.setInt (TYPE, TYPE_REF);
+ ft.setInt (ACCESS, ACCESS_RO);
+ ft.setInt (INDEX, 1);
+ ft.setInt (OPTIONAL, 0);
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "location");
+ ft.setInt (TYPE, TYPE_SSTR);
+ ft.setInt (ACCESS, ACCESS_RO);
+ ft.setInt (INDEX, 0);
+ ft.setInt (OPTIONAL, 0);
+ ft.setString (DESC, "Logical directory on disk");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "defaultInitialFileCount");
+ ft.setInt (TYPE, TYPE_U16);
+ ft.setInt (ACCESS, ACCESS_RO);
+ ft.setInt (INDEX, 0);
+ ft.setInt (OPTIONAL, 0);
+ ft.setString (UNIT, "file");
+ ft.setString (DESC, "Default number of files initially allocated to each journal");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "defaultDataFileSize");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setInt (ACCESS, ACCESS_RO);
+ ft.setInt (INDEX, 0);
+ ft.setInt (OPTIONAL, 0);
+ ft.setString (UNIT, "RdPg");
+ ft.setString (DESC, "Default size of each journal data file");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "tplIsInitialized");
+ ft.setInt (TYPE, TYPE_BOOL);
+ ft.setInt (ACCESS, ACCESS_RO);
+ ft.setInt (INDEX, 0);
+ ft.setInt (OPTIONAL, 0);
+ ft.setString (DESC, "Transaction prepared list has been initialized by a transactional prepare");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "tplDirectory");
+ ft.setInt (TYPE, TYPE_SSTR);
+ ft.setInt (ACCESS, ACCESS_RO);
+ ft.setInt (INDEX, 0);
+ ft.setInt (OPTIONAL, 0);
+ ft.setString (DESC, "Transaction prepared list directory");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "tplWritePageSize");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setInt (ACCESS, ACCESS_RO);
+ ft.setInt (INDEX, 0);
+ ft.setInt (OPTIONAL, 0);
+ ft.setString (UNIT, "byte");
+ ft.setString (DESC, "Page size in transaction prepared list write-page-cache");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "tplWritePages");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setInt (ACCESS, ACCESS_RO);
+ ft.setInt (INDEX, 0);
+ ft.setInt (OPTIONAL, 0);
+ ft.setString (UNIT, "wpage");
+ ft.setString (DESC, "Number of pages in transaction prepared list write-page-cache");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "tplInitialFileCount");
+ ft.setInt (TYPE, TYPE_U16);
+ ft.setInt (ACCESS, ACCESS_RO);
+ ft.setInt (INDEX, 0);
+ ft.setInt (OPTIONAL, 0);
+ ft.setString (UNIT, "file");
+ ft.setString (DESC, "Number of files initially allocated to transaction prepared list journal");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "tplDataFileSize");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setInt (ACCESS, ACCESS_RO);
+ ft.setInt (INDEX, 0);
+ ft.setInt (OPTIONAL, 0);
+ ft.setString (UNIT, "byte");
+ ft.setString (DESC, "Size of each journal data file in transaction prepared list journal");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "tplCurrentFileCount");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setInt (ACCESS, ACCESS_RO);
+ ft.setInt (INDEX, 0);
+ ft.setInt (OPTIONAL, 0);
+ ft.setString (UNIT, "file");
+ ft.setString (DESC, "Number of files currently allocated to transaction prepared list journal");
+ buf.put (ft);
+
+
+ // Statistics
+ ft = FieldTable ();
+ ft.setString (NAME, "tplTransactionDepth");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "txn");
+ ft.setString (DESC, "Number of currently enqueued prepared transactions");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "tplTransactionDepthHigh");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "txn");
+ ft.setString (DESC, "Number of currently enqueued prepared transactions (High)");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "tplTransactionDepthLow");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "txn");
+ ft.setString (DESC, "Number of currently enqueued prepared transactions (Low)");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "tplTxnPrepares");
+ ft.setInt (TYPE, TYPE_U64);
+ ft.setString (UNIT, "record");
+ ft.setString (DESC, "Total transaction prepares on transaction prepared list");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "tplTxnCommits");
+ ft.setInt (TYPE, TYPE_U64);
+ ft.setString (UNIT, "record");
+ ft.setString (DESC, "Total transaction commits on transaction prepared list");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "tplTxnAborts");
+ ft.setInt (TYPE, TYPE_U64);
+ ft.setString (UNIT, "record");
+ ft.setString (DESC, "Total transaction aborts on transaction prepared list");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "tplOutstandingAIOs");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "aio_op");
+ ft.setString (DESC, "Number of currently outstanding AIO requests in Async IO system");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "tplOutstandingAIOsHigh");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "aio_op");
+ ft.setString (DESC, "Number of currently outstanding AIO requests in Async IO system (High)");
+ buf.put (ft);
+
+ ft = FieldTable ();
+ ft.setString (NAME, "tplOutstandingAIOsLow");
+ ft.setInt (TYPE, TYPE_U32);
+ ft.setString (UNIT, "aio_op");
+ ft.setString (DESC, "Number of currently outstanding AIO requests in Async IO system (Low)");
+ buf.put (ft);
+
+
+ // Methods
+
+ // Events
+
+}
+
+
+void Store::aggregatePerThreadStats(struct PerThreadStats* totals)
+{
+ totals->tplTxnPrepares = 0;
+ totals->tplTxnCommits = 0;
+ totals->tplTxnAborts = 0;
+
+ for (int idx = 0; idx < maxThreads; idx++) {
+ struct PerThreadStats* threadStats = perThreadStatsArray[idx];
+ if (threadStats != 0) {
+ totals->tplTxnPrepares += threadStats->tplTxnPrepares;
+ totals->tplTxnCommits += threadStats->tplTxnCommits;
+ totals->tplTxnAborts += threadStats->tplTxnAborts;
+
+ }
+ }
+}
+
+
+void Store::writeProperties (Buffer& buf)
+{
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ configChanged = false;
+
+ writeTimestamps (buf);
+
+ brokerRef.encode(buf);
+ buf.putShortString(location);
+ buf.putShort(defaultInitialFileCount);
+ buf.putLong(defaultDataFileSize);
+ buf.putOctet(tplIsInitialized?1:0);
+ buf.putShortString(tplDirectory);
+ buf.putLong(tplWritePageSize);
+ buf.putLong(tplWritePages);
+ buf.putShort(tplInitialFileCount);
+ buf.putLong(tplDataFileSize);
+ buf.putLong(tplCurrentFileCount);
+
+}
+
+void Store::writeStatistics (Buffer& buf, bool skipHeaders)
+{
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ instChanged = false;
+
+
+ struct PerThreadStats totals;
+ aggregatePerThreadStats(&totals);
+
+
+ if (!skipHeaders)
+ writeTimestamps (buf);
+ buf.putLong(tplTransactionDepth);
+ buf.putLong(tplTransactionDepthHigh);
+ buf.putLong(tplTransactionDepthLow);
+ buf.putLongLong(totals.tplTxnPrepares);
+ buf.putLongLong(totals.tplTxnCommits);
+ buf.putLongLong(totals.tplTxnAborts);
+ buf.putLong(tplOutstandingAIOs);
+ buf.putLong(tplOutstandingAIOsHigh);
+ buf.putLong(tplOutstandingAIOsLow);
+
+
+ // Maintenance of hi-lo statistics
+ tplTransactionDepthHigh = tplTransactionDepth;
+ tplTransactionDepthLow = tplTransactionDepth;
+ tplOutstandingAIOsHigh = tplOutstandingAIOs;
+ tplOutstandingAIOsLow = tplOutstandingAIOs;
+
+
+}
+
+void Store::doMethod (string, Buffer&, Buffer& outBuf)
+{
+ Manageable::status_t status = Manageable::STATUS_UNKNOWN_METHOD;
+ std::string text;
+
+ outBuf.putLong(status);
+ outBuf.putShortString(Manageable::StatusText(status, text));
+}
+
+
Added: store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Store.h
===================================================================
--- store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Store.h (rev 0)
+++ store/trunk/cpp/lib/gen/qmf/com/redhat/rhm/store/Store.h 2008-09-15 19:24:38 UTC (rev 2476)
@@ -0,0 +1,279 @@
+
+#ifndef _MANAGEMENT_STORE_
+#define _MANAGEMENT_STORE_
+
+//
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+//
+
+// This source file was created by a code generator.
+// Please do not edit.
+
+#include "qpid/management/ManagementObject.h"
+#include "qpid/framing/FieldTable.h"
+#include "qpid/framing/Uuid.h"
+
+namespace qmf {
+namespace com {
+namespace redhat {
+namespace rhm {
+namespace store {
+
+
+class Store : public ::qpid::management::ManagementObject
+{
+ private:
+
+ static std::string packageName;
+ static std::string className;
+ static uint8_t md5Sum[16];
+
+
+ // Properties
+ ::qpid::management::ObjectId brokerRef;
+ std::string location;
+ uint16_t defaultInitialFileCount;
+ uint32_t defaultDataFileSize;
+ uint8_t tplIsInitialized;
+ std::string tplDirectory;
+ uint32_t tplWritePageSize;
+ uint32_t tplWritePages;
+ uint16_t tplInitialFileCount;
+ uint32_t tplDataFileSize;
+ uint32_t tplCurrentFileCount;
+
+ // Statistics
+ uint32_t tplTransactionDepth;
+ uint32_t tplTransactionDepthHigh;
+ uint32_t tplTransactionDepthLow;
+ uint32_t tplOutstandingAIOs;
+ uint32_t tplOutstandingAIOsHigh;
+ uint32_t tplOutstandingAIOsLow;
+
+
+ // Per-Thread Statistics
+ struct PerThreadStats {
+ uint64_t tplTxnPrepares;
+ uint64_t tplTxnCommits;
+ uint64_t tplTxnAborts;
+
+ };
+
+ struct PerThreadStats** perThreadStatsArray;
+
+ inline struct PerThreadStats* getThreadStats() {
+ int index = getThreadIndex();
+ struct PerThreadStats* threadStats = perThreadStatsArray[index];
+ if (threadStats == 0) {
+ threadStats = new(PerThreadStats);
+ perThreadStatsArray[index] = threadStats;
+ threadStats->tplTxnPrepares = 0;
+ threadStats->tplTxnCommits = 0;
+ threadStats->tplTxnAborts = 0;
+
+ }
+ return threadStats;
+ }
+
+ void aggregatePerThreadStats(struct PerThreadStats*);
+
+ // Private Methods
+ static void writeSchema (::qpid::framing::Buffer& buf);
+ void writeProperties (::qpid::framing::Buffer& buf);
+ void writeStatistics (::qpid::framing::Buffer& buf,
+ bool skipHeaders = false);
+ void doMethod (std::string methodName,
+ ::qpid::framing::Buffer& inBuf,
+ ::qpid::framing::Buffer& outBuf);
+ writeSchemaCall_t getWriteSchemaCall(void) { return writeSchema; }
+
+ public:
+
+ Store (::qpid::management::ManagementAgent* agent,
+ ::qpid::management::Manageable* coreObject, ::qpid::management::Manageable* _parent);
+ ~Store (void);
+
+
+
+ static void registerClass (::qpid::management::ManagementAgent* agent);
+ std::string& getPackageName (void) { return packageName; }
+ std::string& getClassName (void) { return className; }
+ uint8_t* getMd5Sum (void) { return md5Sum; }
+
+ // Method IDs
+
+ // Accessor Methods
+ inline void set_brokerRef (const ::qpid::management::ObjectId& val) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ brokerRef = val;
+ configChanged = true;
+ }
+ inline const ::qpid::management::ObjectId& get_brokerRef() {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ return brokerRef;
+ }
+ inline void set_location (const std::string& val) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ location = val;
+ configChanged = true;
+ }
+ inline const std::string& get_location() {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ return location;
+ }
+ inline void set_defaultInitialFileCount (uint16_t val) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ defaultInitialFileCount = val;
+ configChanged = true;
+ }
+ inline uint16_t get_defaultInitialFileCount() {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ return defaultInitialFileCount;
+ }
+ inline void set_defaultDataFileSize (uint32_t val) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ defaultDataFileSize = val;
+ configChanged = true;
+ }
+ inline uint32_t get_defaultDataFileSize() {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ return defaultDataFileSize;
+ }
+ inline void set_tplIsInitialized (uint8_t val) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ tplIsInitialized = val;
+ configChanged = true;
+ }
+ inline uint8_t get_tplIsInitialized() {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ return tplIsInitialized;
+ }
+ inline void set_tplDirectory (const std::string& val) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ tplDirectory = val;
+ configChanged = true;
+ }
+ inline const std::string& get_tplDirectory() {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ return tplDirectory;
+ }
+ inline void set_tplWritePageSize (uint32_t val) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ tplWritePageSize = val;
+ configChanged = true;
+ }
+ inline uint32_t get_tplWritePageSize() {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ return tplWritePageSize;
+ }
+ inline void set_tplWritePages (uint32_t val) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ tplWritePages = val;
+ configChanged = true;
+ }
+ inline uint32_t get_tplWritePages() {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ return tplWritePages;
+ }
+ inline void set_tplInitialFileCount (uint16_t val) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ tplInitialFileCount = val;
+ configChanged = true;
+ }
+ inline uint16_t get_tplInitialFileCount() {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ return tplInitialFileCount;
+ }
+ inline void set_tplDataFileSize (uint32_t val) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ tplDataFileSize = val;
+ configChanged = true;
+ }
+ inline uint32_t get_tplDataFileSize() {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ return tplDataFileSize;
+ }
+ inline void set_tplCurrentFileCount (uint32_t val) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ tplCurrentFileCount = val;
+ configChanged = true;
+ }
+ inline uint32_t get_tplCurrentFileCount() {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ return tplCurrentFileCount;
+ }
+ inline void inc_tplTransactionDepth (uint32_t by = 1) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ tplTransactionDepth += by;
+ if (tplTransactionDepthHigh < tplTransactionDepth)
+ tplTransactionDepthHigh = tplTransactionDepth;
+ instChanged = true;
+ }
+ inline void dec_tplTransactionDepth (uint32_t by = 1) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ tplTransactionDepth -= by;
+ if (tplTransactionDepthLow > tplTransactionDepth)
+ tplTransactionDepthLow = tplTransactionDepth;
+ instChanged = true;
+ }
+ inline void inc_tplTxnPrepares (uint64_t by = 1) {
+ getThreadStats()->tplTxnPrepares += by;
+ instChanged = true;
+ }
+ inline void dec_tplTxnPrepares (uint64_t by = 1) {
+ getThreadStats()->tplTxnPrepares -= by;
+ instChanged = true;
+ }
+ inline void inc_tplTxnCommits (uint64_t by = 1) {
+ getThreadStats()->tplTxnCommits += by;
+ instChanged = true;
+ }
+ inline void dec_tplTxnCommits (uint64_t by = 1) {
+ getThreadStats()->tplTxnCommits -= by;
+ instChanged = true;
+ }
+ inline void inc_tplTxnAborts (uint64_t by = 1) {
+ getThreadStats()->tplTxnAborts += by;
+ instChanged = true;
+ }
+ inline void dec_tplTxnAborts (uint64_t by = 1) {
+ getThreadStats()->tplTxnAborts -= by;
+ instChanged = true;
+ }
+ inline void inc_tplOutstandingAIOs (uint32_t by = 1) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ tplOutstandingAIOs += by;
+ if (tplOutstandingAIOsHigh < tplOutstandingAIOs)
+ tplOutstandingAIOsHigh = tplOutstandingAIOs;
+ instChanged = true;
+ }
+ inline void dec_tplOutstandingAIOs (uint32_t by = 1) {
+ ::qpid::sys::Mutex::ScopedLock mutex(accessLock);
+ tplOutstandingAIOs -= by;
+ if (tplOutstandingAIOsLow > tplOutstandingAIOs)
+ tplOutstandingAIOsLow = tplOutstandingAIOs;
+ instChanged = true;
+ }
+
+ // Event Methods
+
+};
+
+}}}}}
+
+#endif /*!_MANAGEMENT_STORE_*/
More information about the rhmessaging-commits
mailing list