Skip to content

Commit

Permalink
Fixed NPE in case of error on database open
Browse files Browse the repository at this point in the history
  • Loading branch information
lvca committed Dec 1, 2015
1 parent a81f9ce commit 922693d
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 23 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -507,6 +507,9 @@ public void deleteFile(long fileId, OWriteCache writeCache) throws IOException {

@Override
public void closeStorage(OWriteCache writeCache) throws IOException {
if( writeCache == null)
return;

cacheLock.acquireWriteLock();
try {
final long[] filesToClear = writeCache.close();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,24 +20,6 @@

package com.orientechnologies.orient.core.storage.impl.local.paginated;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.List;
import java.util.Map;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.ThreadFactory;
import java.util.concurrent.TimeUnit;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;

import com.orientechnologies.common.exception.OException;
import com.orientechnologies.common.io.OFileUtils;
import com.orientechnologies.common.io.OIOUtils;
Expand All @@ -63,6 +45,24 @@
import com.orientechnologies.orient.core.storage.impl.local.paginated.wal.OLogSequenceNumber;
import com.orientechnologies.orient.core.storage.impl.local.paginated.wal.OWriteAheadLog;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.List;
import java.util.Map;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.ThreadFactory;
import java.util.concurrent.TimeUnit;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;

/**
* @author Andrey Lomakin
* @since 28.03.13
Expand Down Expand Up @@ -344,11 +344,12 @@ protected void postCloseSteps(boolean onDelete) throws IOException {

@Override
protected void preCloseSteps() throws IOException {
try {
((OWOWCache) writeCache).unregisterMBean();
} catch (Exception e) {
OLogManager.instance().error(this, "MBean for write cache cannot be unregistered", e);
}
if (writeCache != null)
try {
((OWOWCache) writeCache).unregisterMBean();
} catch (Exception e) {
OLogManager.instance().error(this, "MBean for write cache cannot be unregistered", e);
}

try {
if (writeAheadLog != null) {
Expand Down

0 comments on commit 922693d

Please sign in to comment.