Table of Contents

Class GlobalSecondaryIndexDescription

Namespace
DynaSharp.Requests
Assembly
DynaSharp.dll

A global secondary index as DynamoDB reports it. Only the commonly needed subset of what DynamoDB returns.

public sealed record GlobalSecondaryIndexDescription : IEquatable<GlobalSecondaryIndexDescription>
Inheritance
GlobalSecondaryIndexDescription
Implements
Inherited Members

Remarks

Creating an index on a table that exists takes minutes, even on an empty table: DynamoDB provisions the index and then fills it from the table (Backfilling) before it is Active.

Constructors

GlobalSecondaryIndexDescription()

public GlobalSecondaryIndexDescription()

Properties

Backfilling

Gets a value indicating whether the index is still being filled from the table. While it is, queries on the index may miss items. false once the backfill is over and for an index that was created with the table.

public bool Backfilling { get; init; }

Property Value

bool

IndexName

Gets the index name. DynamoDB sends it with every index: null only if the response omits it.

public string? IndexName { get; init; }

Property Value

string

IndexStatus

Gets the lifecycle state. Poll DescribeTable until it is Active before querying the index. Unknown if DynamoDB reported none.

public IndexStatus IndexStatus { get; init; }

Property Value

IndexStatus

KeySchema

Gets the key of the index.

public IReadOnlyList<KeySchemaElement> KeySchema { get; init; }

Property Value

IReadOnlyList<KeySchemaElement>

OnDemandThroughput

Gets the maximum throughput of an index of a table with PayPerRequest capacity, or null if DynamoDB reported none, which it does for an index without a maximum.

public OnDemandThroughput? OnDemandThroughput { get; init; }

Property Value

OnDemandThroughput

Projection

Gets the projection, or null if DynamoDB did not report one.

public IndexProjection? Projection { get; init; }

Property Value

IndexProjection

ProvisionedThroughput

Gets the capacity of the index. null if DynamoDB did not report it; an index of a table with PayPerRequest capacity reports zero units.

public ProvisionedThroughputDescription? ProvisionedThroughput { get; init; }

Property Value

ProvisionedThroughputDescription

Methods

Equals(GlobalSecondaryIndexDescription?)

public bool Equals(GlobalSecondaryIndexDescription? other)

Parameters

other GlobalSecondaryIndexDescription

Returns

bool

Equals(object?)

public override bool Equals(object? obj)

Parameters

obj object

Returns

bool

GetHashCode()

public override int GetHashCode()

Returns

int

ToString()

public override string ToString()

Returns

string

Operators

operator ==(GlobalSecondaryIndexDescription?, GlobalSecondaryIndexDescription?)

public static bool operator ==(GlobalSecondaryIndexDescription? left, GlobalSecondaryIndexDescription? right)

Parameters

left GlobalSecondaryIndexDescription
right GlobalSecondaryIndexDescription

Returns

bool

operator !=(GlobalSecondaryIndexDescription?, GlobalSecondaryIndexDescription?)

public static bool operator !=(GlobalSecondaryIndexDescription? left, GlobalSecondaryIndexDescription? right)

Parameters

left GlobalSecondaryIndexDescription
right GlobalSecondaryIndexDescription

Returns

bool