()
| 34 | } |
| 35 | |
| 36 | @Override |
| 37 | protected boolean run() { |
| 38 | final Data data = context.data(); |
| 39 | if(!update(data, () -> { |
| 40 | try { |
| 41 | optimizeAll(data, context, options, this); |
| 42 | return true; |
| 43 | } finally { |
| 44 | context.closeDB(); |
| 45 | } |
| 46 | })) return false; |
| 47 | |
| 48 | final Open open = new Open(data.meta.name); |
| 49 | return open.run(context) ? info(DB_OPTIMIZED_X, data.meta.name, jc().performance) : |
| 50 | error(open.info()); |
| 51 | } |
| 52 | |
| 53 | @Override |
| 54 | public boolean newData(final Context ctx) { |