Adding JMCR-Stable version
[Benchmarks_CSolver.git] / JMCR-Stable / real-world application / derby-10.3.2.1 / java / engine / org / apache / derby / iapi / store / access / DynamicCompiledOpenConglomInfo.java
diff --git a/JMCR-Stable/real-world application/derby-10.3.2.1/java/engine/org/apache/derby/iapi/store/access/DynamicCompiledOpenConglomInfo.java b/JMCR-Stable/real-world application/derby-10.3.2.1/java/engine/org/apache/derby/iapi/store/access/DynamicCompiledOpenConglomInfo.java
new file mode 100644 (file)
index 0000000..57ac1be
--- /dev/null
@@ -0,0 +1,54 @@
+/*\r
+\r
+   Derby - Class org.apache.derby.iapi.store.access.DynamicCompiledOpenConglomInfo\r
+\r
+   Licensed to the Apache Software Foundation (ASF) under one or more\r
+   contributor license agreements.  See the NOTICE file distributed with\r
+   this work for additional information regarding copyright ownership.\r
+   The ASF licenses this file to you under the Apache License, Version 2.0\r
+   (the "License"); you may not use this file except in compliance with\r
+   the License.  You may obtain a copy of the License at\r
+\r
+      http://www.apache.org/licenses/LICENSE-2.0\r
+\r
+   Unless required by applicable law or agreed to in writing, software\r
+   distributed under the License is distributed on an "AS IS" BASIS,\r
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+   See the License for the specific language governing permissions and\r
+   limitations under the License.\r
+\r
+ */\r
+\r
+package org.apache.derby.iapi.store.access;\r
+\r
+import org.apache.derby.iapi.error.StandardException;\r
+\r
+\r
+/**\r
+\r
+  Information that can be "compiled" and reused per transaction per \r
+  open operation.  This information is read only by the caller and\r
+  written by user.  Likely information kept in this object is a set of\r
+  scratch buffers which will be used by openScan() and thus must not be\r
+  shared across multiple threads/openScan()'s/openConglomerate()'s.  The\r
+  goal is to optimize repeated operations like btree inserts, by allowing a\r
+  set of scratch buffers to be reused across a repeated execution of a statement\r
+  like an insert/delete/update.\r
+\r
+  This information is obtained from the getDynamicCompiledConglomInfo(conglomid)\r
+  method call.  It can then be used in openConglomerate() and openScan() calls\r
+  for increased performance.  The information is only valid until the next\r
+  ddl operation is performed on the conglomerate.  It is up to the caller to\r
+  provide an invalidation methodology.\r
+  \r
+  The dynamic info is a set of variables to be used in a given ScanController\r
+  or ConglomerateController.  It can only be used in one controller at a time.\r
+  It is up to the caller to insure the correct thread access to this info.  The\r
+  type of info in this is a scratch template for btree traversal, other scratch\r
+  variables for qualifier evaluation, ...\r
+\r
+**/\r
+\r
+public interface DynamicCompiledOpenConglomInfo\r
+{\r
+}\r