| 109 | } |
| 110 | |
| 111 | int main(int argc, char* argv[]) { |
| 112 | string usage = Flags::Usage(argv[0], {}); |
| 113 | bool parse_result = Flags::Parse(&argc, argv, {}); |
| 114 | if (!parse_result) { |
| 115 | std::cerr << "The vacuum tool rebuilds SQLite database files created by\n" |
| 116 | << "SummaryDbWriter, which makes them smaller.\n\n" |
| 117 | << "This means deleting orphaned rows and rebuilding b-tree\n" |
| 118 | << "pages so empty space from deleted rows is cleared. Any\n" |
| 119 | << "superfluous padding of Tensor BLOBs is also removed.\n\n" |
| 120 | << usage; |
| 121 | return -1; |
| 122 | } |
| 123 | port::InitMain(argv[0], &argc, &argv); |
| 124 | if (argc < 2 || argv[1][0] == '-') { |
| 125 | std::cerr << "Need at least one SQLite DB path.\n"; |
| 126 | return -1; |
| 127 | } |
| 128 | for (int i = 1; i < argc; ++i) { |
| 129 | Vacuum(argv[i]); |
| 130 | } |
| 131 | return 0; |
| 132 | } |
| 133 | |
| 134 | } // namespace |
| 135 | } // namespace tensorflow |