dataCache = new LRDCache(dataBuffers);
dataCache = new LRUCache(dataBuffers);
    public BFile(BrokerPool pool, File file, int btreeBuffers, int dataBuffers) {        super(pool, file, btreeBuffers);        fileHeader = (BFileHeader) getFileHeader();        dataCache = new LRDCache(dataBuffers);        dataCache.setFileName(getFile().getName());        minFree = PAGE_MIN_FREE;        lock = new ReentrantReadWriteLock(file.getName());                Runnable syncAction = new Runnable() {            public void run() {                if(dataCache.hasDirtyItems()) {	                try {	                    lock.acquire(Lock.WRITE_LOCK);	                    dataCache.flush();	                } catch (LockException e) {	                    LOG.warn("Failed to acquire lock on dom.dbx");	                } finally {	                    lock.release();	                }                }            }        };        pool.getSyncDaemon().executePeriodically(getDataSyncPeriod(), syncAction, false);    }