mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
78 lines
2.4 KiB
SQL
78 lines
2.4 KiB
SQL
-- Licensed to the Apache Software Foundation (ASF) under one
|
|
-- or more contributor license agreements. See the NOTICE file
|
|
-- distributed with this work for additional information
|
|
-- regarding copyright ownership. The ASF licenses this file
|
|
-- to you under the Apache License, Version 2.0 (the
|
|
-- "License"); you may not use this file except in compliance
|
|
-- with the License. You may obtain a copy of the License at
|
|
--
|
|
-- http://www.apache.org/licenses/LICENSE-2.0
|
|
--
|
|
-- Unless required by applicable law or agreed to in writing,
|
|
-- software distributed under the License is distributed on an
|
|
-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
-- KIND, either express or implied. See the License for the
|
|
-- specific language governing permissions and limitations
|
|
-- under the License.
|
|
|
|
USE cloudbridge;
|
|
|
|
-- This file can be applied to an existing cloudbridge database. It is used
|
|
-- to keep track of in progress multipart file uploads.
|
|
--
|
|
SET foreign_key_checks = 0;
|
|
|
|
DROP TABLE IF EXISTS multipart_uploads;
|
|
DROP TABLE IF EXISTS multipart_meta;
|
|
DROP TABLE IF EXISTS multipart_parts;
|
|
|
|
-- We need to keep track of the multipart uploads and all the parts of each upload until they
|
|
-- are completed or aborted.
|
|
-- The AccessKey is where we store the AWS account id
|
|
--
|
|
CREATE TABLE multipart_uploads (
|
|
ID BIGINT NOT NULL AUTO_INCREMENT,
|
|
|
|
AccessKey VARCHAR(150) NOT NULL, -- this is the initiator of the request
|
|
BucketName VARCHAR(64) NOT NULL,
|
|
NameKey VARCHAR(255) NOT NULL,
|
|
x_amz_acl VARCHAR(64) NULL,
|
|
|
|
CreateTime DATETIME,
|
|
|
|
PRIMARY KEY(ID)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
|
|
|
-- We need to store all the meta data for an object being mutlipart uploaded
|
|
-- UploadID is a foreign key to an entry in the mutipart_uploads table
|
|
--
|
|
CREATE TABLE multipart_meta (
|
|
ID BIGINT NOT NULL AUTO_INCREMENT,
|
|
|
|
UploadID BIGINT NOT NULL,
|
|
Name VARCHAR(64) NOT NULL,
|
|
Value VARCHAR(256),
|
|
|
|
PRIMARY KEY(ID)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
|
|
|
-- Each part of a multipart upload gets a row in this table
|
|
-- UploadId is a foreign key to an entry in the mutipart_uploads table
|
|
--
|
|
CREATE TABLE multipart_parts (
|
|
ID BIGINT NOT NULL AUTO_INCREMENT,
|
|
|
|
UploadID BIGINT NOT NULL,
|
|
partNumber INT NOT NULL,
|
|
MD5 VARCHAR(128),
|
|
StoredPath VARCHAR(256), -- relative to mount point of the root
|
|
StoredSize BIGINT NOT NULL DEFAULT 0,
|
|
|
|
CreateTime DATETIME,
|
|
|
|
PRIMARY KEY(ID)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
|
|
|
SET foreign_key_checks = 1;
|
|
|