Module: Igniter::Store
- Defined in:
- lib/igniter/store.rb,
lib/igniter/store.rb,
lib/igniter/store/fact.rb,
lib/igniter/store/codecs.rb,
lib/igniter/store/fact_log.rb,
lib/igniter/store/protocol.rb,
lib/igniter/store/read_cache.rb,
lib/igniter/store/access_path.rb,
lib/igniter/store/mcp_adapter.rb,
lib/igniter/store/tcp_adapter.rb,
lib/igniter/store/change_event.rb,
lib/igniter/store/file_backend.rb,
lib/igniter/store/http_adapter.rb,
lib/igniter/store/schema_graph.rb,
lib/igniter/store/store_server.rb,
lib/igniter/store/igniter_store.rb,
lib/igniter/store/server_config.rb,
lib/igniter/store/server_logger.rb,
lib/igniter/store/wire_protocol.rb,
lib/igniter/store/server_metrics.rb,
lib/igniter/store/network_backend.rb,
lib/igniter/store/protocol/receipt.rb,
lib/igniter/store/changefeed_buffer.rb,
lib/igniter/store/protocol/interpreter.rb,
lib/igniter/store/protocol/sync_profile.rb,
lib/igniter/store/subscription_registry.rb,
lib/igniter/store/protocol/wire_envelope.rb,
lib/igniter/store/segmented_file_backend.rb,
lib/igniter/store/contractable_receipt_sink.rb,
lib/igniter/store/tbackend_adapter_descriptor.rb,
lib/igniter/store/protocol/handlers/store_handler.rb,
lib/igniter/store/protocol/handlers/effect_handler.rb,
lib/igniter/store/protocol/handlers/command_handler.rb,
lib/igniter/store/protocol/handlers/history_handler.rb,
lib/igniter/store/protocol/handlers/relation_handler.rb,
lib/igniter/store/protocol/handlers/derivation_handler.rb,
lib/igniter/store/protocol/handlers/projection_handler.rb,
lib/igniter/store/protocol/handlers/access_path_handler.rb,
lib/igniter/store/protocol/handlers/subscription_handler.rb
Defined Under Namespace
Modules: Codecs, NativeFileBackendSnapshotSupport, Protocol, WireProtocol Classes: AccessPath, ChangeEvent, ChangefeedBuffer, CoercedFact, ContractableReceiptSink, DerivationRule, EventRing, Fact, FactLog, FileBackend, HTTPAdapter, IgniterStore, MCPAdapter, NetworkBackend, ProjectionPath, ReadCache, RelationRule, RetentionPolicy, ScatterRule, SchemaGraph, SegmentedFileBackend, ServerConfig, ServerLogger, ServerMetrics, StoreServer, SubscriptionRegistry, TBackendAdapterDescriptor, TCPAdapter
Constant Summary collapse
- NATIVE =
overwritten by native.rb when extension loads
false- LedgerStore =
IgniterStore- LedgerServer =
StoreServer- LedgerNetworkBackend =
NetworkBackend
Class Method Summary collapse
- .access_path ⇒ Object
- .memory ⇒ Object
- .open(path) ⇒ Object
-
.segmented(root_dir, **opts) ⇒ Object
Open (or create) a segmented WAL store at
root_dir.
Class Method Details
.access_path ⇒ Object
55 56 57 |
# File 'lib/igniter/store.rb', line 55 def access_path(...) AccessPath.new(...) end |
.memory ⇒ Object
37 38 39 |
# File 'lib/igniter/store.rb', line 37 def memory IgniterStore.new end |
.open(path) ⇒ Object
41 42 43 |
# File 'lib/igniter/store.rb', line 41 def open(path) IgniterStore.open(path) end |
.segmented(root_dir, **opts) ⇒ Object
Open (or create) a segmented WAL store at root_dir. Facts from all stores are partitioned into per-store, per-time-bucket segment files under root_dir/wal/.
48 49 50 51 52 53 |
# File 'lib/igniter/store.rb', line 48 def segmented(root_dir, **opts) backend = SegmentedFileBackend.new(root_dir, **opts) store = IgniterStore.new(backend: backend) backend.replay.each { |fact| store.__send__(:replay, fact) } store end |