on master help sign in
fix warnings involved with new notifications
0bf7786AgentM
ProjectM36/StaticOptimizer.hs+12
@@ -121,6 +121,18 @@ applyStaticDatabaseOptimization dep@(AddInclusionDependency _ _) = return $ Righ
121
121
122applyStaticDatabaseOptimization (RemoveInclusionDependency name) = return $ Right (RemoveInclusionDependency name)
122applyStaticDatabaseOptimization (RemoveInclusionDependency name) = return $ Right (RemoveInclusionDependency name)
123
123
124+applyStaticDatabaseOptimization (AddNotification name triggerExpr resultExpr) = do
125+ eTriggerExprOpt <- applyStaticRelationalOptimization triggerExpr
126+ case eTriggerExprOpt of
127+ Left err -> pure $ Left err
128+ Right triggerExprOpt -> do
129+ eResultExprOpt <- applyStaticRelationalOptimization resultExpr
130+ case eResultExprOpt of
131+ Left err -> pure $ Left err
132+ Right resultExprOpt -> pure (Right (AddNotification name triggerExprOpt resultExprOpt))
133+
134+applyStaticDatabaseOptimization notif@(RemoveNotification _) = pure (Right notif)
135+
124--optimization: from pgsql lists- check for join condition referencing foreign key- if join projection project away the referenced table, then it does not need to be scanned
136--optimization: from pgsql lists- check for join condition referencing foreign key- if join projection project away the referenced table, then it does not need to be scanned
125
137
126--applyStaticDatabaseOptimization (MultipleExpr exprs) = return $ Right $ MultipleExpr exprs
138--applyStaticDatabaseOptimization (MultipleExpr exprs) = return $ Right $ MultipleExpr exprs
ProjectM36/Transaction/Persist.hs+1
@@ -50,6 +50,7 @@ readTransaction dbdir transUUID = do
50 let atomFuncs = basicAtomFunctions
50 let atomFuncs = basicAtomFunctions
51 let newContext = DatabaseContext { inclusionDependencies = incDeps,
51 let newContext = DatabaseContext { inclusionDependencies = incDeps,
52 relationVariables = relvars,
52 relationVariables = relvars,
53+ notifications = M.empty,
53 atomFunctions = atomFuncs }
54 atomFunctions = atomFuncs }
54
55
55 return $ Right $ Transaction transUUID transInfo newContext
56 return $ Right $ Transaction transUUID transInfo newContext
project-m36.cabalmode 100755 → 100644

Only the mode changed.