backend.setLength(reader.getEstimatedSize());
backend.setLength(rrdDef.getEstimatedSize());
private RrdDb(String rrdPath, URI rrdUri, String externalPath, DataImporter importer, RrdBackendFactory factory, RrdDbPool pool) throws IOException { this.pool = pool; rrdUri = Builder.buildUri(rrdPath, rrdUri, factory); factory = Builder.checkFactory(rrdUri, factory); backend = factory.getBackend(this, rrdUri, false); try (DataImporter reader = Builder.resoleImporter(externalPath, importer)) { backend.setLength(reader.getEstimatedSize()); // create header header = new Header(this, reader); // create datasources datasources = new Datasource[reader.getDsCount()]; for (int i = 0; i < datasources.length; i++) { datasources[i] = new Datasource(this, reader, i); } // create archives archives = new Archive[reader.getArcCount()]; for (int i = 0; i < archives.length; i++) { archives[i] = new Archive(this, reader, i); } } catch (IOException e) { backend.rrdClose(); throw e; } }
backend = factory.open(path, false); try { backend.setLength(rrdDef.getEstimatedSize());