private FileStoreOutputStream initLarge(DataHandler handler) throws IOException, SQLException { this.handler = handler; this.tableId = 0; this.linked = false; this.precision = 0; this.small = null; this.hash = 0; String compressionAlgorithm = handler.getLobCompressionAlgorithm(type); this.compression = compressionAlgorithm != null; synchronized (handler) { if (handler.getLobFilesInDirectories()) { objectId = getNewObjectId(handler); fileName = getFileNamePrefix(handler.getDatabasePath(), objectId) + ".temp.db"; } else { objectId = handler.allocateObjectId(false, true); fileName = handler.createTempFile(); } tempFile = handler.openFile(fileName, "rw", false); tempFile.autoDelete(); } FileStoreOutputStream out = new FileStoreOutputStream(tempFile, handler, compressionAlgorithm); return out; }
copy.objectId = getNewObjectId(handler); } else { copy.objectId = handler.allocateObjectId(false, true);