mirror of
https://github.com/google/nomulus.git
synced 2025-07-14 23:15:18 +02:00
Remove datastore related code (#1906)
This commit is contained in:
parent
913edb23ee
commit
e41fd7877e
152 changed files with 886 additions and 4460 deletions
|
@ -77,14 +77,14 @@ The following cursor types are defined:
|
|||
* **`SYNC_REGISTRAR_SHEET`** - Tracks the last time the registrar spreadsheet
|
||||
was successfully synced.
|
||||
|
||||
All `Cursor` entities in Datastore contain a `DateTime` that represents the next
|
||||
timestamp at which an operation should resume processing and a `CursorType` that
|
||||
identifies which operation the cursor is associated with. In many cases, there
|
||||
are multiple cursors per operation; for instance, the cursors related to RDE
|
||||
reporting, staging, and upload are per-TLD cursors. To accomplish this, each
|
||||
All `Cursor` entities in the database contain a `DateTime` that represents the
|
||||
next timestamp at which an operation should resume processing and a `CursorType`
|
||||
that identifies which operation the cursor is associated with. In many cases,
|
||||
there are multiple cursors per operation; for instance, the cursors related to
|
||||
RDE reporting, staging, and upload are per-TLD cursors. To accomplish this, each
|
||||
`Cursor` also has a scope, a `Key<ImmutableObject>` to which the particular
|
||||
cursor applies (this can be e.g. a `Registry` or any other `ImmutableObject` in
|
||||
Datastore, depending on the operation). If the `Cursor` applies to the entire
|
||||
the database, depending on the operation). If the `Cursor` applies to the entire
|
||||
registry environment, it is considered a global cursor and has a scope of
|
||||
`EntityGroupRoot.getCrossTldKey()`.
|
||||
|
||||
|
@ -172,27 +172,14 @@ objects by their unique IDs:
|
|||
* `Host`: fully-qualified host name
|
||||
|
||||
Since all `EppResource` entities are indexed on ROID (which is also unique, but
|
||||
not as useful as the resource's name), a `ForeignKeyIndex` provides a way to
|
||||
not as useful as the resource's name), the `ForeignKeyUtils` provides a way to
|
||||
look up the resources using another key which is also unique during the lifetime
|
||||
of the resource (though not for all time).
|
||||
|
||||
A `ForeignKeyIndex` is updated as a resource is created or deleted. It is
|
||||
important to note that throughout the lifecycle of an `EppResource`, the
|
||||
underlying Datastore entity is never hard-deleted; its deletion time is set to
|
||||
the time at which the EPP command to delete the resource was set, and it remains
|
||||
in Datastore. Other resources with that same name can then be created.
|
||||
|
||||
## EPP resource index
|
||||
|
||||
An `EppResourceIndex` is an index that allows for quick enumeration of all
|
||||
`EppResource` entities in Datastore. Datastore does not otherwise provide an
|
||||
easy way to efficiently and strongly consistently enumerate all entities of a
|
||||
given type. Each `EppResourceIndex` is assigned randomly to an
|
||||
`EppResourceIndexBucket` upon creation, the number of which is configured to be
|
||||
greater than the number of shards typically used for Mapreduces that enumerate
|
||||
these entities. Mapreduces that process all `EppResource` entities (or
|
||||
subclasses thereof) distribute each `EppResourceIndexBucket` to available
|
||||
shards.
|
||||
It is important to note that throughout the lifecycle of an `EppResource`, the
|
||||
underlying entity is never hard-deleted; its deletion time is set to the time at
|
||||
which the EPP command to delete the resource was set, and it remains in the
|
||||
database. Other resources with that same name can then be created.
|
||||
|
||||
## History entries
|
||||
|
||||
|
@ -232,7 +219,7 @@ between the registry and registrars. Refer to [RFC 5730 Section
|
|||
2.9.2.3](https://tools.ietf.org/html/rfc5730#section-2.9.2.3) for their protocol
|
||||
specification.
|
||||
|
||||
Poll messages are stored by the system as entities in Datastore. All poll
|
||||
Poll messages are stored by the system as entities in the database. All poll
|
||||
messages have an event time at which they become active; any poll request before
|
||||
that time will not return the poll message. For example, every domain when
|
||||
created enqueues a speculative poll message for the automatic renewal of the
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue