Skip to content

Legacy service does not work when an index claim is returned #81

@hannahhoward

Description

@hannahhoward

What

The current content claims service, when queried for a CID, will return results from BOTH the content claims DB and the block index table. (#80)

However, the current legacy indexing service (which materializes from block index) will NOT lookup generate claims if any claims are returned from the normal indexing service (which is connected to the legacy claim store) -- https://github.com/storacha/indexing-service/blob/main/pkg/service/legacy/service.go#L54

In the case of most existing content, there is an assert/index in the old content claims DB and no others (i.e. location claims). So, the normal indexer connected ot the content claims db will return a result like this:

{
   claims: [indexClaim],
   indexes: []
}

This will cause the legacy service not to generate claims from block index tables. This is essentially the problem of not publishing location claims until recently (addressed in storacha/blob-fetcher#14), except here it actually causes queries to not succeed at all as no location claims are returned at all.

The two ways to fix it are:

  1. to implement a car park fallback OR
  2. to fix the check in the legacy indexing service.

I wonder if there is a way to implement this legacy indexing service at a different level as a lower level dependency. (content claims store? not sure)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions