app/imageoper, app/maindb: one image - one arch; app/storage: blob to name subdir
This commit is contained in:
+3
-3
@@ -103,12 +103,12 @@ func (db *Database) GetBlobsByReferense(ctx context.Context, name, reference str
|
||||
return blobs, err
|
||||
}
|
||||
|
||||
func (db *Database) GetBlobUsage(ctx context.Context, digest string) (int64, error) {
|
||||
func (db *Database) GetBlobUsage(ctx context.Context, name, digest string) (int64, error) {
|
||||
var err error
|
||||
var usage int64
|
||||
count := make([]int64, 0)
|
||||
request := `SELECT count(id) AS count FROM blobs WHERE digest = $1`
|
||||
err = db.db.Select(&count, request, digest)
|
||||
request := `SELECT count(id) AS count FROM blobs WHERE name = $1 AND digest = $2`
|
||||
err = db.db.Select(&count, request, name, digest)
|
||||
if err != nil {
|
||||
return usage, err
|
||||
}
|
||||
|
||||
@@ -209,23 +209,24 @@ func (db *Database) GetManifestByDigest(ctx context.Context, name, digest string
|
||||
return exists, manifest, err
|
||||
}
|
||||
|
||||
func (db *Database) GetManifestsByReference(ctx context.Context, name, reference string) (bool, []descr.Manifest, error) {
|
||||
func (db *Database) GetManifestByReference(ctx context.Context, name, reference string) (bool, descr.Manifest, error) {
|
||||
var err error
|
||||
exists := false
|
||||
manifest := descr.Manifest{}
|
||||
manifests := make([]descr.Manifest, 0)
|
||||
request := `SELECT * FROM manifests WHERE name = $1 AND reference = $2 LIMIT 1`
|
||||
err = db.db.Select(&manifests, request, name, reference)
|
||||
if err != nil {
|
||||
return exists, manifests, err
|
||||
return exists, manifest, err
|
||||
}
|
||||
|
||||
if len(manifests) > 0 {
|
||||
manifest = manifests[0]
|
||||
exists = true
|
||||
}
|
||||
return exists, manifests, err
|
||||
return exists, manifest, err
|
||||
}
|
||||
|
||||
func (db *Database) GetManifestsByReferenceArchitecture(ctx context.Context, name, reference, architecture, os, variant string) (bool, descr.Manifest, error) {
|
||||
func (db *Database) xxxGetManifestsByReferenceArchitecture(ctx context.Context, name, reference, architecture, os, variant string) (bool, descr.Manifest, error) {
|
||||
var err error
|
||||
exists := false
|
||||
manifest := descr.Manifest{}
|
||||
|
||||
@@ -43,8 +43,11 @@ const schema = `
|
||||
os VARCHAR(255) NOT NULL,
|
||||
variant VARCHAR(255) NOT NULL
|
||||
);
|
||||
CREATE UNIQUE INDEX IF NOT EXISTS manifests_index
|
||||
CREATE UNIQUE INDEX IF NOT EXISTS manifests_index01
|
||||
ON manifests(name, reference, architecture, os, variant);
|
||||
CREATE UNIQUE INDEX IF NOT EXISTS manifests_index02
|
||||
ON manifests(name, reference);
|
||||
|
||||
|
||||
CREATE TABLE IF NOT EXISTS blobs (
|
||||
id VARCHAR(255) NOT NULL,
|
||||
|
||||
Reference in New Issue
Block a user