The following document contains the results of FindBugs
FindBugs Version is 3.0.0
Threshold is
Effort is min
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Inconsistent synchronization of org.apache.oodt.cas.workflow.engine.IterativeWorkflowProcessorThread.currentJobId; locked 60% of time | MT_CORRECTNESS | IS2_INCONSISTENT_SYNC | 270 | Medium |
Inconsistent synchronization of org.apache.oodt.cas.workflow.engine.IterativeWorkflowProcessorThread.pause; locked 50% of time | MT_CORRECTNESS | IS2_INCONSISTENT_SYNC | 385 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Load of known null value in new org.apache.oodt.cas.workflow.engine.PrioritizedQueueBasedWorkflowEngine(WorkflowInstanceRepository, PrioritySorter, WorkflowLifecycleManager, EngineRunner, WorkflowRepository, long) | STYLE | NP_LOAD_OF_KNOWN_NULL_VALUE | 73 | Medium |
new org.apache.oodt.cas.workflow.engine.PrioritizedQueueBasedWorkflowEngine(WorkflowInstanceRepository, PrioritySorter, WorkflowLifecycleManager, EngineRunner, WorkflowRepository, long) invokes Thread.start() | MT_CORRECTNESS | SC_START_IN_CTOR | 85 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Synchronization on TaskQuerier.runnableProcessors in futile attempt to guard it | MT_CORRECTNESS | ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD | 142 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Inconsistent synchronization of org.apache.oodt.cas.workflow.engine.ThreadPoolWorkflowEngine.wmgrUrl; locked 50% of time | MT_CORRECTNESS | IS2_INCONSISTENT_SYNC | 276 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Possible null pointer dereference of WorkflowProcessor.workflowInstance in org.apache.oodt.cas.workflow.engine.processor.WorkflowProcessor.nextState() | CORRECTNESS | NP_NULL_ON_SOME_PATH | 316 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Call to org.apache.oodt.cas.workflow.lifecycle.WorkflowState.equals(String) in org.apache.oodt.cas.workflow.engine.processor.WorkflowProcessorHelper.getWorkflowProcessorsByState(List, String) | CORRECTNESS | EC_UNRELATED_TYPES | 286 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Synchronization on interned String in org.apache.oodt.cas.workflow.engine.runner.AsynchronousLocalEngineRunner.execute(TaskProcessor) | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_SHARED_CONSTANT | 120 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Found reliance on default encoding in org.apache.oodt.cas.workflow.examples.ExternScriptTaskInstance.run(Metadata, WorkflowTaskConfiguration): new java.io.InputStreamReader(InputStream) | I18N | DM_DEFAULT_ENCODING | 98 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Synchronization on interned String in org.apache.oodt.cas.workflow.instrepo.DataSourceWorkflowInstanceRepository.addWorkflowInstance(WorkflowInstance) | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_SHARED_CONSTANT | 118 | Medium |
Exception is caught when Exception is not thrown in org.apache.oodt.cas.workflow.instrepo.DataSourceWorkflowInstanceRepository.addWorkflowInstance(WorkflowInstance) | STYLE | REC_CATCH_EXCEPTION | 134 | Medium |
org.apache.oodt.cas.workflow.instrepo.DataSourceWorkflowInstanceRepository.addMetadataValue(String, String, String) passes a nonconstant String to an execute method on an SQL statement | SECURITY | SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE | 980 | High |
org.apache.oodt.cas.workflow.instrepo.DataSourceWorkflowInstanceRepository.addWorkflowInstance(WorkflowInstance) passes a nonconstant String to an execute method on an SQL statement | SECURITY | SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE | 114 | High |
org.apache.oodt.cas.workflow.instrepo.DataSourceWorkflowInstanceRepository.getNumWorkflowInstancesByStatus(String) passes a nonconstant String to an execute method on an SQL statement | SECURITY | SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE | 709 | High |
org.apache.oodt.cas.workflow.instrepo.DataSourceWorkflowInstanceRepository.getWorkflowInstancesByStatus(String) passes a nonconstant String to an execute method on an SQL statement | SECURITY | SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE | 558 | High |
org.apache.oodt.cas.workflow.instrepo.DataSourceWorkflowInstanceRepository.paginateWorkflows(int, String) passes a nonconstant String to an execute method on an SQL statement | SECURITY | SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE | 793 | High |
org.apache.oodt.cas.workflow.instrepo.DataSourceWorkflowInstanceRepository.updateWorkflowInstance(WorkflowInstance) passes a nonconstant String to an execute method on an SQL statement | SECURITY | SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE | 274 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to jdbcUrl in new org.apache.oodt.cas.workflow.instrepo.DataSourceWorkflowInstanceRepositoryFactory() | STYLE | DLS_DEAD_LOCAL_STORE | 60 | Medium |
Dead store to pass in new org.apache.oodt.cas.workflow.instrepo.DataSourceWorkflowInstanceRepositoryFactory() | STYLE | DLS_DEAD_LOCAL_STORE | 66 | Medium |
Dead store to user in new org.apache.oodt.cas.workflow.instrepo.DataSourceWorkflowInstanceRepositoryFactory() | STYLE | DLS_DEAD_LOCAL_STORE | 63 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Equals method for org.apache.oodt.cas.workflow.lifecycle.WorkflowLifecycleStage assumes the argument is of type WorkflowLifecycleStage | BAD_PRACTICE | BC_EQUALS_METHOD_SHOULD_WORK_FOR_ALL_OBJECTS | 129 | Medium |
org.apache.oodt.cas.workflow.lifecycle.WorkflowLifecycleStage.equals(Object) does not check for null argument | BAD_PRACTICE | NP_EQUALS_SHOULD_HANDLE_NULL_ARGUMENT | 129 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.apache.oodt.cas.workflow.lifecycle.WorkflowState.getStartTime() may expose internal representation by returning WorkflowState.startTime | MALICIOUS_CODE | EI_EXPOSE_REP | 69 | Medium |
org.apache.oodt.cas.workflow.lifecycle.WorkflowState.setStartTime(Date) may expose internal representation by storing an externally mutable object into WorkflowState.startTime | MALICIOUS_CODE | EI_EXPOSE_REP2 | 61 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.apache.oodt.cas.workflow.policy.TaskPolicyWriter.getTaskXmlDocument(Map) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 97 | Medium |
org.apache.oodt.cas.workflow.policy.TaskPolicyWriter.subsetByPolicyDirPath(Map, String) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 212 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Boxing/unboxing to parse a primitive org.apache.oodt.cas.workflow.repository.DataSourceWorkflowRepository.commitTask(Workflow, WorkflowTask) | PERFORMANCE | DM_BOXED_PRIMITIVE_FOR_PARSING | 1499 | High |
Exception is caught when Exception is not thrown in org.apache.oodt.cas.workflow.repository.DataSourceWorkflowRepository.commitTask(Workflow, WorkflowTask) | STYLE | REC_CATCH_EXCEPTION | 1523 | Medium |
org.apache.oodt.cas.workflow.repository.DataSourceWorkflowRepository.commitTask(Workflow, WorkflowTask) passes a nonconstant String to an execute method on an SQL statement | SECURITY | SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE | 1511 | High |
org.apache.oodt.cas.workflow.repository.DataSourceWorkflowRepository.commitWorkflow(Workflow) passes a nonconstant String to an execute method on an SQL statement | SECURITY | SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE | 1414 | High |
org.apache.oodt.cas.workflow.repository.DataSourceWorkflowRepository.getConditionsByTaskName(String) passes a nonconstant String to an execute method on an SQL statement | SECURITY | SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE | 628 | High |
org.apache.oodt.cas.workflow.repository.DataSourceWorkflowRepository.getTasksByWorkflowName(String) passes a nonconstant String to an execute method on an SQL statement | SECURITY | SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE | 449 | High |
org.apache.oodt.cas.workflow.repository.DataSourceWorkflowRepository.getWorkflowById(String, boolean, boolean) passes a nonconstant String to an execute method on an SQL statement | SECURITY | SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE | 188 | High |
org.apache.oodt.cas.workflow.repository.DataSourceWorkflowRepository.getWorkflowByName(String, boolean, boolean) passes a nonconstant String to an execute method on an SQL statement | SECURITY | SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE | 95 | High |
org.apache.oodt.cas.workflow.repository.DataSourceWorkflowRepository.getWorkflowsForEvent(String, boolean, boolean) passes a nonconstant String to an execute method on an SQL statement | SECURITY | SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE | 532 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to poolableConnectionFactory in new org.apache.oodt.cas.workflow.repository.DataSourceWorkflowRepositoryFactory() | STYLE | DLS_DEAD_LOCAL_STORE | 76 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Sequence of calls to java.util.concurrent.ConcurrentHashMap may not be atomic in org.apache.oodt.cas.workflow.repository.XMLWorkflowRepository.loadWorkflows(List) | MT_CORRECTNESS | AT_OPERATION_SEQUENCE_ON_CONCURRENT_ABSTRACTION | 565 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Boxing/unboxing to parse a primitive new org.apache.oodt.cas.workflow.structs.Graph(Element, Metadata) | PERFORMANCE | DM_BOXED_PRIMITIVE_FOR_PARSING | 90 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Exception is caught when Exception is not thrown in org.apache.oodt.cas.workflow.structs.TaskJob.setWorkflowInstanceCurrentTaskEndDateTime(String, Metadata) | STYLE | REC_CATCH_EXCEPTION | 174 | Medium |
Exception is caught when Exception is not thrown in org.apache.oodt.cas.workflow.structs.TaskJob.setWorkflowInstanceCurrentTaskStartDateTime(String, Metadata) | STYLE | REC_CATCH_EXCEPTION | 158 | Medium |
Exception is caught when Exception is not thrown in org.apache.oodt.cas.workflow.structs.TaskJob.updateMetadata(Metadata) | STYLE | REC_CATCH_EXCEPTION | 142 | Medium |
Exception is caught when Exception is not thrown in org.apache.oodt.cas.workflow.structs.TaskJob.updateStatus(String, Metadata) | STYLE | REC_CATCH_EXCEPTION | 128 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.apache.oodt.cas.workflow.structs.TaskJobInput.configure(Properties) may fail to clean up java.io.InputStream | EXPERIMENTAL | OBL_UNSATISFIED_OBLIGATION | 167 | Medium |
org.apache.oodt.cas.workflow.structs.TaskJobInput.configure(Properties) may fail to close stream | BAD_PRACTICE | OS_OPEN_STREAM | 167 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.apache.oodt.cas.workflow.structs.WorkflowInstance.getCreationDate() may expose internal representation by returning WorkflowInstance.startDate | MALICIOUS_CODE | EI_EXPOSE_REP | 253 | Medium |
org.apache.oodt.cas.workflow.structs.WorkflowInstance.getEndDate() may expose internal representation by returning WorkflowInstance.endDate | MALICIOUS_CODE | EI_EXPOSE_REP | 286 | Medium |
org.apache.oodt.cas.workflow.structs.WorkflowInstance.getFinishDate() may expose internal representation by returning WorkflowInstance.endDate | MALICIOUS_CODE | EI_EXPOSE_REP | 264 | Medium |
org.apache.oodt.cas.workflow.structs.WorkflowInstance.getStartDate() may expose internal representation by returning WorkflowInstance.startDate | MALICIOUS_CODE | EI_EXPOSE_REP | 271 | Medium |
new org.apache.oodt.cas.workflow.structs.WorkflowInstance(Workflow, String, WorkflowState, String, Date, Date, Metadata, int, Priority) may expose internal representation by storing an externally mutable object into WorkflowInstance.endDate | MALICIOUS_CODE | EI_EXPOSE_REP2 | 101 | Medium |
new org.apache.oodt.cas.workflow.structs.WorkflowInstance(Workflow, String, WorkflowState, String, Date, Date, Metadata, int, Priority) may expose internal representation by storing an externally mutable object into WorkflowInstance.startDate | MALICIOUS_CODE | EI_EXPOSE_REP2 | 100 | Medium |
org.apache.oodt.cas.workflow.structs.WorkflowInstance.setEndDate(Date) may expose internal representation by storing an externally mutable object into WorkflowInstance.endDate | MALICIOUS_CODE | EI_EXPOSE_REP2 | 294 | Medium |
org.apache.oodt.cas.workflow.structs.WorkflowInstance.setStartDate(Date) may expose internal representation by storing an externally mutable object into WorkflowInstance.startDate | MALICIOUS_CODE | EI_EXPOSE_REP2 | 279 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.apache.oodt.cas.workflow.structs.WorkflowTask.getEndDate() may expose internal representation by returning WorkflowTask.endDate | MALICIOUS_CODE | EI_EXPOSE_REP | 330 | Medium |
org.apache.oodt.cas.workflow.structs.WorkflowTask.getStartDate() may expose internal representation by returning WorkflowTask.startDate | MALICIOUS_CODE | EI_EXPOSE_REP | 315 | Medium |
new org.apache.oodt.cas.workflow.structs.WorkflowTask(String, String, WorkflowTaskConfiguration, List, List, List, String, Date, Date, int) may expose internal representation by storing an externally mutable object into WorkflowTask.endDate | MALICIOUS_CODE | EI_EXPOSE_REP2 | 143 | Medium |
new org.apache.oodt.cas.workflow.structs.WorkflowTask(String, String, WorkflowTaskConfiguration, List, List, List, String, Date, Date, int) may expose internal representation by storing an externally mutable object into WorkflowTask.startDate | MALICIOUS_CODE | EI_EXPOSE_REP2 | 142 | Medium |
org.apache.oodt.cas.workflow.structs.WorkflowTask.setEndDate(Date) may expose internal representation by storing an externally mutable object into WorkflowTask.endDate | MALICIOUS_CODE | EI_EXPOSE_REP2 | 338 | Medium |
org.apache.oodt.cas.workflow.structs.WorkflowTask.setStartDate(Date) may expose internal representation by storing an externally mutable object into WorkflowTask.startDate | MALICIOUS_CODE | EI_EXPOSE_REP2 | 323 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.apache.oodt.cas.workflow.system.XmlRpcWorkflowManager.loadProperties() may fail to clean up java.io.InputStream | EXPERIMENTAL | OBL_UNSATISFIED_OBLIGATION | 665 | Medium |
org.apache.oodt.cas.workflow.system.XmlRpcWorkflowManager.loadProperties() may fail to close stream | BAD_PRACTICE | OS_OPEN_STREAM | 665 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Found reliance on default encoding in org.apache.oodt.cas.workflow.util.CygwinScriptFile.writeScriptFile(String): new java.io.OutputStreamWriter(OutputStream) | I18N | DM_DEFAULT_ENCODING | 67 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.apache.oodt.cas.workflow.util.GenericWorkflowObjectFactory.LOG isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 52 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Found reliance on default encoding in org.apache.oodt.cas.workflow.util.ScriptFile.writeScriptFile(String): new java.io.OutputStreamWriter(OutputStream) | I18N | DM_DEFAULT_ENCODING | 116 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Boxing/unboxing to parse a primitive org.apache.oodt.cas.workflow.util.XmlRpcStructFactory.getWorkflowConditionFromXmlRpc(Map) | PERFORMANCE | DM_BOXED_PRIMITIVE_FOR_PARSING | 491 | High |
Boxing/unboxing to parse a primitive org.apache.oodt.cas.workflow.util.XmlRpcStructFactory.getWorkflowConditionFromXmlRpc(Map) | PERFORMANCE | DM_BOXED_PRIMITIVE_FOR_PARSING | 493 | High |
Boxing/unboxing to parse a primitive org.apache.oodt.cas.workflow.util.XmlRpcStructFactory.getWorkflowTaskFromXmlRpc(Map) | PERFORMANCE | DM_BOXED_PRIMITIVE_FOR_PARSING | 321 | High |
org.apache.oodt.cas.workflow.util.XmlRpcStructFactory.getWorkflowConditionConfigurationFromXmlRpc(Map) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 514 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Boxing/unboxing to parse a primitive org.apache.oodt.cas.workflow.util.XmlStructFactory.getWorkflowCondition(Node) | PERFORMANCE | DM_BOXED_PRIMITIVE_FOR_PARSING | 161 | High |