}
void LocalDb::Open(const char *path, const char *snapshot_name,
- const char *snapshot_scheme, double intent)
+ const char *snapshot_scheme)
{
int rc;
/* Insert this snapshot into the database, and determine the integer key
* which will be used to identify it. */
- stmt = Prepare("insert into snapshots(name, scheme, timestamp, intent) "
- "values (?, ?, julianday('now'), ?)");
+ stmt = Prepare("insert into snapshots(name, scheme, timestamp) "
+ "values (?, ?, julianday('now'))");
sqlite3_bind_text(stmt, 1, snapshot_name, strlen(snapshot_name),
SQLITE_TRANSIENT);
sqlite3_bind_text(stmt, 2, snapshot_scheme, strlen(snapshot_scheme),
SQLITE_TRANSIENT);
- sqlite3_bind_double(stmt, 3, intent);
rc = sqlite3_step(stmt);
if (rc != SQLITE_DONE) {
sqlite3_stmt *stmt;
bool found = false;
- stmt = Prepare("select segmentid, object, timestamp, expired "
+ stmt = Prepare("select segmentid, object, julianday(timestamp), expired "
"from block_index where checksum = ? and size = ?");
sqlite3_bind_text(stmt, 1, checksum.c_str(), checksum.size(),
SQLITE_TRANSIENT);
// size will have a reference size capped at just less than the full object
// size (we can't tell if some bytes were referenced multiple times, and
// thus we conservatively assume some bytes might still be unreferenced).
- int64_t new_refs = old_size;
+ int64_t new_refs;
if (ref.has_range()) {
new_refs = ref.get_range_length();
} else {
stmt = Prepare("update segments set path = ?, checksum = ?, "
"type = ?, data_size = ?, disk_size = ?, "
- "mtime = coalesce(mtime, julianday('now')) "
+ "timestamp = coalesce(julianday(timestamp), "
+ " julianday('now')) "
"where segmentid = ?");
sqlite3_bind_text(stmt, 1, path.c_str(), path.size(),
SQLITE_TRANSIENT);