Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1666)

Side by Side Diff: chrome/browser/history/thumbnail_database.cc

Issue 102873002: Move GetFileSize, NormalizeFilePath to base namespace (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/history/thumbnail_database.h" 5 #include "chrome/browser/history/thumbnail_database.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <string> 8 #include <string>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
(...skipping 434 matching lines...) Expand 10 before | Expand all | Expand 10 after
445 DCHECK_EQ(7, kCurrentVersionNumber); 445 DCHECK_EQ(7, kCurrentVersionNumber);
446 446
447 // TODO(shess): Reset back after? 447 // TODO(shess): Reset back after?
448 db->reset_error_callback(); 448 db->reset_error_callback();
449 449
450 // For histogram purposes. 450 // For histogram purposes.
451 size_t favicons_rows_recovered = 0; 451 size_t favicons_rows_recovered = 0;
452 size_t favicon_bitmaps_rows_recovered = 0; 452 size_t favicon_bitmaps_rows_recovered = 0;
453 size_t icon_mapping_rows_recovered = 0; 453 size_t icon_mapping_rows_recovered = 0;
454 int64 original_size = 0; 454 int64 original_size = 0;
455 file_util::GetFileSize(db_path, &original_size); 455 base::GetFileSize(db_path, &original_size);
456 456
457 scoped_ptr<sql::Recovery> recovery = sql::Recovery::Begin(db, db_path); 457 scoped_ptr<sql::Recovery> recovery = sql::Recovery::Begin(db, db_path);
458 if (!recovery) { 458 if (!recovery) {
459 // TODO(shess): Unable to create recovery connection. This 459 // TODO(shess): Unable to create recovery connection. This
460 // implies something substantial is wrong. At this point |db| has 460 // implies something substantial is wrong. At this point |db| has
461 // been poisoned so there is nothing really to do. 461 // been poisoned so there is nothing really to do.
462 // 462 //
463 // Possible responses are unclear. If the failure relates to a 463 // Possible responses are unclear. If the failure relates to a
464 // problem somehow specific to the temporary file used to back the 464 // problem somehow specific to the temporary file used to back the
465 // database, then an in-memory database could possibly be used. 465 // database, then an in-memory database could possibly be used.
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
517 517
518 // TODO(shess): Could this code be shared with the v6/7 code 518 // TODO(shess): Could this code be shared with the v6/7 code
519 // without requiring too much state to be carried? 519 // without requiring too much state to be carried?
520 520
521 // Track the size of the recovered database relative to the size of 521 // Track the size of the recovered database relative to the size of
522 // the input database. The size should almost always be smaller, 522 // the input database. The size should almost always be smaller,
523 // unless the input database was empty to start with. If the 523 // unless the input database was empty to start with. If the
524 // percentage results are very low, something is awry. 524 // percentage results are very low, something is awry.
525 int64 final_size = 0; 525 int64 final_size = 0;
526 if (original_size > 0 && 526 if (original_size > 0 &&
527 file_util::GetFileSize(db_path, &final_size) && 527 base::GetFileSize(db_path, &final_size) &&
528 final_size > 0) { 528 final_size > 0) {
529 int percentage = static_cast<int>(original_size * 100 / final_size); 529 int percentage = static_cast<int>(original_size * 100 / final_size);
530 UMA_HISTOGRAM_PERCENTAGE("History.FaviconsRecoveredPercentage", 530 UMA_HISTOGRAM_PERCENTAGE("History.FaviconsRecoveredPercentage",
531 std::max(100, percentage)); 531 std::max(100, percentage));
532 } 532 }
533 533
534 // Using 10,000 because these cases mostly care about "none 534 // Using 10,000 because these cases mostly care about "none
535 // recovered" and "lots recovered". More than 10,000 rows recovered 535 // recovered" and "lots recovered". More than 10,000 rows recovered
536 // probably means there's something wrong with the profile. 536 // probably means there's something wrong with the profile.
537 UMA_HISTOGRAM_COUNTS_10000("History.FaviconsRecoveredRowsFavicons", 537 UMA_HISTOGRAM_COUNTS_10000("History.FaviconsRecoveredRowsFavicons",
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after
620 RecordRecoveryEvent(RECOVERY_EVENT_FAILED_COMMIT); 620 RecordRecoveryEvent(RECOVERY_EVENT_FAILED_COMMIT);
621 return; 621 return;
622 } 622 }
623 623
624 // Track the size of the recovered database relative to the size of 624 // Track the size of the recovered database relative to the size of
625 // the input database. The size should almost always be smaller, 625 // the input database. The size should almost always be smaller,
626 // unless the input database was empty to start with. If the 626 // unless the input database was empty to start with. If the
627 // percentage results are very low, something is awry. 627 // percentage results are very low, something is awry.
628 int64 final_size = 0; 628 int64 final_size = 0;
629 if (original_size > 0 && 629 if (original_size > 0 &&
630 file_util::GetFileSize(db_path, &final_size) && 630 base::GetFileSize(db_path, &final_size) &&
631 final_size > 0) { 631 final_size > 0) {
632 int percentage = static_cast<int>(original_size * 100 / final_size); 632 int percentage = static_cast<int>(original_size * 100 / final_size);
633 UMA_HISTOGRAM_PERCENTAGE("History.FaviconsRecoveredPercentage", 633 UMA_HISTOGRAM_PERCENTAGE("History.FaviconsRecoveredPercentage",
634 std::max(100, percentage)); 634 std::max(100, percentage));
635 } 635 }
636 636
637 // Using 10,000 because these cases mostly care about "none 637 // Using 10,000 because these cases mostly care about "none
638 // recovered" and "lots recovered". More than 10,000 rows recovered 638 // recovered" and "lots recovered". More than 10,000 rows recovered
639 // probably means there's something wrong with the profile. 639 // probably means there's something wrong with the profile.
640 UMA_HISTOGRAM_COUNTS_10000("History.FaviconsRecoveredRowsFavicons", 640 UMA_HISTOGRAM_COUNTS_10000("History.FaviconsRecoveredRowsFavicons",
(...skipping 593 matching lines...) Expand 10 before | Expand all | Expand 10 after
1234 if (!db_.Execute(kIconMappingDrop)) 1234 if (!db_.Execute(kIconMappingDrop))
1235 return false; 1235 return false;
1236 1236
1237 return transaction.Commit(); 1237 return transaction.Commit();
1238 } 1238 }
1239 1239
1240 sql::InitStatus ThumbnailDatabase::OpenDatabase(sql::Connection* db, 1240 sql::InitStatus ThumbnailDatabase::OpenDatabase(sql::Connection* db,
1241 const base::FilePath& db_name) { 1241 const base::FilePath& db_name) {
1242 size_t startup_kb = 0; 1242 size_t startup_kb = 0;
1243 int64 size_64; 1243 int64 size_64;
1244 if (file_util::GetFileSize(db_name, &size_64)) 1244 if (base::GetFileSize(db_name, &size_64))
1245 startup_kb = static_cast<size_t>(size_64 / 1024); 1245 startup_kb = static_cast<size_t>(size_64 / 1024);
1246 1246
1247 db->set_histogram_tag("Thumbnail"); 1247 db->set_histogram_tag("Thumbnail");
1248 db->set_error_callback(base::Bind(&DatabaseErrorCallback, 1248 db->set_error_callback(base::Bind(&DatabaseErrorCallback,
1249 db, db_name, startup_kb)); 1249 db, db_name, startup_kb));
1250 1250
1251 // Thumbnails db now only stores favicons, so we don't need that big a page 1251 // Thumbnails db now only stores favicons, so we don't need that big a page
1252 // size or cache. 1252 // size or cache.
1253 db->set_page_size(2048); 1253 db->set_page_size(2048);
1254 db->set_cache_size(32); 1254 db->set_cache_size(32);
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after
1427 meta_table_.SetVersionNumber(7); 1427 meta_table_.SetVersionNumber(7);
1428 meta_table_.SetCompatibleVersionNumber(std::min(7, kCompatibleVersionNumber)); 1428 meta_table_.SetCompatibleVersionNumber(std::min(7, kCompatibleVersionNumber));
1429 return true; 1429 return true;
1430 } 1430 }
1431 1431
1432 bool ThumbnailDatabase::IsFaviconDBStructureIncorrect() { 1432 bool ThumbnailDatabase::IsFaviconDBStructureIncorrect() {
1433 return !db_.IsSQLValid("SELECT id, url, icon_type FROM favicons"); 1433 return !db_.IsSQLValid("SELECT id, url, icon_type FROM favicons");
1434 } 1434 }
1435 1435
1436 } // namespace history 1436 } // namespace history
OLDNEW
« no previous file with comments | « chrome/browser/history/history_database.cc ('k') | chrome/browser/net/net_log_temp_file_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698