graphql-engine-1.0.0: GraphQL API over Postgres
Safe HaskellSafe-Inferred
LanguageHaskell2010

Hasura.RQL.DDL.Schema.Cache

Description

Top-level functions concerned specifically with operations on the schema cache, such as rebuilding it from the catalog and incorporating schema changes. See the module documentation for Hasura.RQL.DDL.Schema for more details.

Note: this module is mutually recursive with other Hasura.RQL.DDL.Schema.* modules, which both define pieces of the implementation of building the schema cache and define handlers that trigger schema cache rebuilds.

Documentation

data CacheRWT m a Source #

Instances

Instances details
MonadTrans CacheRWT Source # 
Instance details

Defined in Hasura.RQL.DDL.Schema.Cache

Methods

lift :: Monad m => m a -> CacheRWT m a #

MonadBaseControl b m => MonadBaseControl b (CacheRWT m) Source # 
Instance details

Defined in Hasura.RQL.DDL.Schema.Cache

Associated Types

type StM (CacheRWT m) a Source #

Methods

liftBaseWith :: (RunInBase (CacheRWT m) b -> b a) -> CacheRWT m a Source #

restoreM :: StM (CacheRWT m) a -> CacheRWT m a Source #

MonadError e m => MonadError e (CacheRWT m) Source # 
Instance details

Defined in Hasura.RQL.DDL.Schema.Cache

Methods

throwError :: e -> CacheRWT m a #

catchError :: CacheRWT m a -> (e -> CacheRWT m a) -> CacheRWT m a #

MonadReader r m => MonadReader r (CacheRWT m) Source # 
Instance details

Defined in Hasura.RQL.DDL.Schema.Cache

Methods

ask :: CacheRWT m r #

local :: (r -> r) -> CacheRWT m a -> CacheRWT m a #

reader :: (r -> a) -> CacheRWT m a #

MonadBase b m => MonadBase b (CacheRWT m) Source # 
Instance details

Defined in Hasura.RQL.DDL.Schema.Cache

Methods

liftBase :: b α -> CacheRWT m α Source #

MonadIO m => MonadIO (CacheRWT m) Source # 
Instance details

Defined in Hasura.RQL.DDL.Schema.Cache

Methods

liftIO :: IO a -> CacheRWT m a #

Monad m => Applicative (CacheRWT m) Source # 
Instance details

Defined in Hasura.RQL.DDL.Schema.Cache

Methods

pure :: a -> CacheRWT m a #

(<*>) :: CacheRWT m (a -> b) -> CacheRWT m a -> CacheRWT m b #

liftA2 :: (a -> b -> c) -> CacheRWT m a -> CacheRWT m b -> CacheRWT m c #

(*>) :: CacheRWT m a -> CacheRWT m b -> CacheRWT m b #

(<*) :: CacheRWT m a -> CacheRWT m b -> CacheRWT m a #

Functor m => Functor (CacheRWT m) Source # 
Instance details

Defined in Hasura.RQL.DDL.Schema.Cache

Methods

fmap :: (a -> b) -> CacheRWT m a -> CacheRWT m b #

(<$) :: a -> CacheRWT m b -> CacheRWT m a #

Monad m => Monad (CacheRWT m) Source # 
Instance details

Defined in Hasura.RQL.DDL.Schema.Cache

Methods

(>>=) :: CacheRWT m a -> (a -> CacheRWT m b) -> CacheRWT m b #

(>>) :: CacheRWT m a -> CacheRWT m b -> CacheRWT m b #

return :: a -> CacheRWT m a #

MonadMetadataStorage m => MonadMetadataStorage (CacheRWT m) Source # 
Instance details

Defined in Hasura.RQL.DDL.Schema.Cache

Methods

fetchMetadataResourceVersion :: CacheRWT m (Either QErr MetadataResourceVersion) Source #

fetchMetadata :: CacheRWT m (Either QErr MetadataWithResourceVersion) Source #

fetchMetadataNotifications :: MetadataResourceVersion -> InstanceId -> CacheRWT m (Either QErr [(MetadataResourceVersion, CacheInvalidations)]) Source #

setMetadata :: MetadataResourceVersion -> Metadata -> CacheRWT m (Either QErr MetadataResourceVersion) Source #

notifySchemaCacheSync :: MetadataResourceVersion -> InstanceId -> CacheInvalidations -> CacheRWT m (Either QErr ()) Source #

getCatalogState :: CacheRWT m (Either QErr CatalogState) Source #

setCatalogState :: CatalogStateType -> Value -> CacheRWT m (Either QErr ()) Source #

fetchSourceIntrospection :: MetadataResourceVersion -> CacheRWT m (Either QErr (Maybe StoredIntrospection)) Source #

storeSourceIntrospection :: StoredIntrospection -> MetadataResourceVersion -> CacheRWT m (Either QErr ()) Source #

getMetadataDbUid :: CacheRWT m (Either QErr MetadataDbId) Source #

checkMetadataStorageHealth :: CacheRWT m (Either QErr ()) Source #

getDeprivedCronTriggerStats :: [TriggerName] -> CacheRWT m (Either QErr [CronTriggerStats]) Source #

getScheduledEventsForDelivery :: [TriggerName] -> CacheRWT m (Either QErr ([CronEvent], [OneOffScheduledEvent])) Source #

insertCronEvents :: [CronEventSeed] -> CacheRWT m (Either QErr ()) Source #

insertOneOffScheduledEvent :: OneOffEvent -> CacheRWT m (Either QErr EventId) Source #

insertScheduledEventInvocation :: Invocation 'ScheduledType -> ScheduledEventType -> CacheRWT m (Either QErr ()) Source #

setScheduledEventOp :: ScheduledEventId -> ScheduledEventOp -> ScheduledEventType -> CacheRWT m (Either QErr ()) Source #

unlockScheduledEvents :: ScheduledEventType -> [ScheduledEventId] -> CacheRWT m (Either QErr Int) Source #

unlockAllLockedScheduledEvents :: CacheRWT m (Either QErr ()) Source #

clearFutureCronEvents :: ClearCronEvents -> CacheRWT m (Either QErr ()) Source #

getOneOffScheduledEvents :: ScheduledEventPagination -> [ScheduledEventStatus] -> RowsCountOption -> CacheRWT m (Either QErr (WithOptionalTotalCount [OneOffScheduledEvent])) Source #

getCronEvents :: TriggerName -> ScheduledEventPagination -> [ScheduledEventStatus] -> RowsCountOption -> CacheRWT m (Either QErr (WithOptionalTotalCount [CronEvent])) Source #

getScheduledEventInvocations :: GetScheduledEventInvocations -> CacheRWT m (Either QErr (WithOptionalTotalCount [ScheduledEventInvocation])) Source #

deleteScheduledEvent :: ScheduledEventId -> ScheduledEventType -> CacheRWT m (Either QErr ()) Source #

insertAction :: ActionName -> SessionVariables -> [Header] -> Value -> CacheRWT m (Either QErr ActionId) Source #

fetchUndeliveredActionEvents :: CacheRWT m (Either QErr [ActionLogItem]) Source #

setActionStatus :: ActionId -> AsyncActionStatus -> CacheRWT m (Either QErr ()) Source #

fetchActionResponse :: ActionId -> CacheRWT m (Either QErr ActionLogResponse) Source #

clearActionData :: ActionName -> CacheRWT m (Either QErr ()) Source #

setProcessingActionLogsToPending :: LockedActionIdArray -> CacheRWT m (Either QErr ()) Source #

MonadQueryTags m => MonadQueryTags (CacheRWT m) Source # 
Instance details

Defined in Hasura.RQL.DDL.Schema.Cache

MonadEventLogCleanup m => MonadEventLogCleanup (CacheRWT m) Source # 
Instance details

Defined in Hasura.RQL.DDL.Schema.Cache

Monad m => CacheRM (CacheRWT m) Source # 
Instance details

Defined in Hasura.RQL.DDL.Schema.Cache

(MonadIO m, MonadError QErr m, ProvidesNetwork m, MonadResolveSource m, HasCacheStaticConfig m, MonadMetadataStorage m) => CacheRWM (CacheRWT m) Source # 
Instance details

Defined in Hasura.RQL.DDL.Schema.Cache

UserInfoM m => UserInfoM (CacheRWT m) Source # 
Instance details

Defined in Hasura.RQL.DDL.Schema.Cache

HasFeatureFlagChecker m => HasFeatureFlagChecker (CacheRWT m) Source # 
Instance details

Defined in Hasura.RQL.DDL.Schema.Cache

MonadGetPolicies m => MonadGetPolicies (CacheRWT m) Source # 
Instance details

Defined in Hasura.RQL.DDL.Schema.Cache

ProvidesNetwork m => ProvidesNetwork (CacheRWT m) Source # 
Instance details

Defined in Hasura.RQL.DDL.Schema.Cache

MonadTrace m => MonadTrace (CacheRWT m) Source # 
Instance details

Defined in Hasura.RQL.DDL.Schema.Cache

type StM (CacheRWT m) a Source # 
Instance details

Defined in Hasura.RQL.DDL.Schema.Cache