[Checkins] SVN: Sandbox/adamg/ocql/branches/optimize-with-index/src/ocql/compiler/optimize_index.txt compiled optimized code hints

Adam Groszer agroszer at gmail.com
Thu Jul 10 05:18:57 EDT 2008


Log message for revision 88161:
  compiled optimized code hints

Changed:
  U   Sandbox/adamg/ocql/branches/optimize-with-index/src/ocql/compiler/optimize_index.txt

-=-
Modified: Sandbox/adamg/ocql/branches/optimize-with-index/src/ocql/compiler/optimize_index.txt
===================================================================
--- Sandbox/adamg/ocql/branches/optimize-with-index/src/ocql/compiler/optimize_index.txt	2008-07-10 09:02:50 UTC (rev 88160)
+++ Sandbox/adamg/ocql/branches/optimize-with-index/src/ocql/compiler/optimize_index.txt	2008-07-10 09:18:57 UTC (rev 88161)
@@ -28,6 +28,7 @@
     >>> setupCatalog(None)
 
 
+Simple thing:
 
     #>>> engine = OCQLEngine()
     #>>> run = engine.compile("set [ | 1 ]")
@@ -39,16 +40,21 @@
     #set([1])
 
 
+Let's use the IUnOptimizedClass:
 
-    #>>> engine = OCQLEngine()
-    #>>> run = engine.compile("set [ i in IUnOptimizedClass | i ]")
-    #>>> run
-    #RunnableQuery: reduce(set.union, map(lambda i: set([i]),set(metadata.getAll("IUnOptimizedClass"))), set())
+#    >>> engine = OCQLEngine()
+#    >>> run = engine.compile("set [ i in IUnOptimizedClass | i ]")
+#    >>> run
+#    RunnableQuery: reduce(set.union, map(lambda i: set([i]), set(metadata.getAll("IUnOptimizedClass"))), set())
+#
+##    >>> result = run.execute()
+##    >>> result
+##    set([UnOpt: 0, UnOpt: 1, UnOpt: 3, UnOpt: 4, UnOpt: 5, UnOpt: 6, UnOpt: 7, UnOpt: 2, UnOpt: 8, UnOpt: 9])
 
-#    >>> result = run.execute()
-#    >>> result
-#    set([UnOpt: 0, UnOpt: 1, UnOpt: 3, UnOpt: 4, UnOpt: 5, UnOpt: 6, UnOpt: 7, UnOpt: 2, UnOpt: 8, UnOpt: 9])
 
+IUnOptimizedClass with a filter condition:
+(parser is not working, therefore the complicated query definition)
+
     >>> from ocql.queryobject.queryobject import *
     >>> from ocql.interfaces import IDB
     >>> from ocql.parser.queryparser import SymbolContainer
@@ -83,6 +89,47 @@
     set([u'5'])
 
 
+
+IOptimizedClass with a filter condition:
+(parser is not working, therefore the complicated query definition)
+(compiles to an imaginery code at the moment!!!)
+
+    >>> from ocql.queryobject.queryobject import *
+    >>> from ocql.interfaces import IDB
+    >>> from ocql.parser.queryparser import SymbolContainer
+
+    >>> metadata = IDB(None)
+    >>> symbols = SymbolContainer()
+    >>> qo = Query(
+    ...         metadata, symbols,
+    ...         set,
+    ...         [
+    ...              In(
+    ...                 metadata, symbols,
+    ...                 Identifier(metadata,symbols,'i'),
+    ...                 Identifier(metadata,symbols, 'IOptimizedClass')),
+    ...              Eq(
+    ...                 metadata,symbols,
+    ...                 Identifier(metadata, symbols, 'i.value'),
+    ...                 Identifier(metadata, symbols, '5'))
+    ...         ], Identifier(metadata, symbols, 'i.name'))
+
+
+    >>> engine = OCQLEngine()
+    >>> run = engine.compile(qo)
+    >>> run
+    RunnableQuery:
+    reduce(set.union,
+    map(lambda i: set([i.name]),
+    set(metadata.getFromIndex("IUnOptimizedClass", "value", 5, 5))), set())
+
+    >>> result = run.execute()
+    >>> result
+    set([u'5'])
+
+
+
+
     #>>> engine = OCQLEngine()
     #>>> run = engine.compile("set [ i in IUnOptimizedClass; i.value==5 | i.name ]")
     #>>> run



More information about the Checkins mailing list