Author: solomax
Date: Fri Feb 6 10:16:30 2015
New Revision: 1657771
URL: http://svn.apache.org/r1657771
Log:
Infinite loop while recording conversion is fixed
Modified:
openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/converter/BaseConverter.java
openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/BaseConverter.java
Modified:
openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/converter/BaseConverter.java
URL:
http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/converter/BaseConverter.java?rev=1657771&r1=1657770&r2=1657771&view=diff
==============================================================================
---
openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/converter/BaseConverter.java
(original)
+++
openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/converter/BaseConverter.java
Fri Feb 6 10:16:30 2015
@@ -176,10 +176,9 @@ public abstract class BaseConverter {
FlvRecordingMetaData metaData = metaDataDao.get(metaId);
if (metaData.getStreamStatus() != Status.STOPPED) {
log.debug("### meta Stream not yet written to disk " +
metaId);
- boolean doWait = true;
long counter = 0;
long maxTimestamp = 0;
- while(doWait) {
+ while(true) {
log.trace("### Stream not yet written Thread
Sleep - " + metaId);
metaData = metaDataDao.get(metaId);
@@ -187,7 +186,6 @@ public abstract class BaseConverter {
if (metaData.getStreamStatus() ==
Status.STOPPED) {
printMetaInfo(metaData, "Stream now
written");
log.debug("### Thread continue ... " );
- doWait = false;
break;
} else {
File metaFlv =
getRecordingMetaData(metaData.getFlvRecording().getRoom_id(),
metaData.getStreamName());
@@ -203,17 +201,19 @@ public abstract class BaseConverter {
log.debug("### long
time without any update, trying to repair ... ");
try {
if
(FLVWriter.repair(metaSer.getCanonicalPath(), null, null) && !metaSer.exists())
{
-
metaData.setStreamStatus(Status.STOPPED);
-
metaDataDao.update(metaData);
+
log.debug("### Repairing was successful ... ");
+ } else {
+
log.debug("### Repairing was NOT successful ... ");
}
} catch (IOException e)
{
log.error("###
Error while file repairing ... ", e);
}
} else {
log.debug("### long
time without any update, closing ... ");
-
metaData.setStreamStatus(Status.STOPPED);
-
metaDataDao.update(metaData);
}
+
metaData.setStreamStatus(Status.STOPPED);
+ metaDataDao.update(metaData);
+ break;
}
}
if (++counter % 1000 == 0) {
Modified:
openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/BaseConverter.java
URL:
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/BaseConverter.java?rev=1657771&r1=1657770&r2=1657771&view=diff
==============================================================================
---
openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/BaseConverter.java
(original)
+++
openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/BaseConverter.java
Fri Feb 6 10:16:30 2015
@@ -176,10 +176,9 @@ public abstract class BaseConverter {
FlvRecordingMetaData metaData = metaDataDao.get(metaId);
if (metaData.getStreamStatus() != Status.STOPPED) {
log.debug("### meta Stream not yet written to disk " +
metaId);
- boolean doWait = true;
long counter = 0;
long maxTimestamp = 0;
- while(doWait) {
+ while(true) {
log.trace("### Stream not yet written Thread
Sleep - " + metaId);
metaData = metaDataDao.get(metaId);
@@ -187,7 +186,6 @@ public abstract class BaseConverter {
if (metaData.getStreamStatus() ==
Status.STOPPED) {
printMetaInfo(metaData, "Stream now
written");
log.debug("### Thread continue ... " );
- doWait = false;
break;
} else {
File metaFlv =
getRecordingMetaData(metaData.getFlvRecording().getRoomId(),
metaData.getStreamName());
@@ -203,17 +201,19 @@ public abstract class BaseConverter {
log.debug("### long
time without any update, trying to repair ... ");
try {
if
(FLVWriter.repair(metaSer.getCanonicalPath(), null, null) && !metaSer.exists())
{
-
metaData.setStreamStatus(Status.STOPPED);
-
metaDataDao.update(metaData);
+
log.debug("### Repairing was successful ... ");
+ } else {
+
log.debug("### Repairing was NOT successful ... ");
}
} catch (IOException e)
{
log.error("###
Error while file repairing ... ", e);
}
} else {
log.debug("### long
time without any update, closing ... ");
-
metaData.setStreamStatus(Status.STOPPED);
-
metaDataDao.update(metaData);
}
+
metaData.setStreamStatus(Status.STOPPED);
+ metaDataDao.update(metaData);
+ break;
}
}
if (++counter % 1000 == 0) {