FindBugs Bug Detector Report
The following document contains the results of FindBugs
FindBugs Version is 3.0.0
Threshold is medium
Effort is min
Summary
Classes |
Bugs |
Errors |
Missing Classes |
1264 |
41 |
0 |
0 |
org.apache.giraph.benchmark.RandomMessageBenchmark$RandomMessageBenchmarkWorkerContext
Bug |
Category |
Details |
Line |
Priority |
org.apache.giraph.benchmark.RandomMessageBenchmark$RandomMessageBenchmarkWorkerContext.getMessageBytes() may expose internal representation by returning RandomMessageBenchmark$RandomMessageBenchmarkWorkerContext.messageBytes |
MALICIOUS_CODE |
EI_EXPOSE_REP |
210 |
Medium |
org.apache.giraph.comm.flow_control.CreditBasedFlowControl
Bug |
Category |
Details |
Line |
Priority |
Synchronization performed on java.util.concurrent.atomic.AtomicInteger in org.apache.giraph.comm.flow_control.CreditBasedFlowControl.waitAllRequests() |
MT_CORRECTNESS |
JLM_JSR166_UTILCONCURRENT_MONITORENTER |
465 |
Medium |
org.apache.giraph.comm.flow_control.CreditBasedFlowControl$2
Bug |
Category |
Details |
Line |
Priority |
Synchronization performed on java.util.concurrent.atomic.AtomicInteger in org.apache.giraph.comm.flow_control.CreditBasedFlowControl$2.run() |
MT_CORRECTNESS |
JLM_JSR166_UTILCONCURRENT_MONITORENTER |
252 |
Medium |
org.apache.giraph.comm.netty.NettyClient
Bug |
Category |
Details |
Line |
Priority |
Synchronization performed on java.util.concurrent.ConcurrentMap in org.apache.giraph.comm.netty.NettyClient.messageReceived(int, long, int, boolean) |
MT_CORRECTNESS |
JLM_JSR166_UTILCONCURRENT_MONITORENTER |
930 |
Medium |
Synchronization performed on java.util.concurrent.ConcurrentMap in org.apache.giraph.comm.netty.NettyClient.messageReceived(int, long, int, boolean) |
MT_CORRECTNESS |
JLM_JSR166_UTILCONCURRENT_MONITORENTER |
904 |
Medium |
Synchronization performed on java.util.concurrent.ConcurrentMap in org.apache.giraph.comm.netty.NettyClient.waitAllRequests() |
MT_CORRECTNESS |
JLM_JSR166_UTILCONCURRENT_MONITORENTER |
946 |
Medium |
org.apache.giraph.comm.requests.ByteArrayRequest
Bug |
Category |
Details |
Line |
Priority |
org.apache.giraph.comm.requests.ByteArrayRequest.getData() may expose internal representation by returning ByteArrayRequest.data |
MALICIOUS_CODE |
EI_EXPOSE_REP |
57 |
Medium |
org.apache.giraph.comm.requests.ReplyWithInputSplitRequest
Bug |
Category |
Details |
Line |
Priority |
new org.apache.giraph.comm.requests.ReplyWithInputSplitRequest(InputType, byte[]) may expose internal representation by storing an externally mutable object into ReplyWithInputSplitRequest.serializedInputSplit |
MALICIOUS_CODE |
EI_EXPOSE_REP2 |
47 |
Medium |
org.apache.giraph.comm.requests.SaslTokenMessageRequest
Bug |
Category |
Details |
Line |
Priority |
org.apache.giraph.comm.requests.SaslTokenMessageRequest.getSaslToken() may expose internal representation by returning SaslTokenMessageRequest.token |
MALICIOUS_CODE |
EI_EXPOSE_REP |
58 |
Medium |
new org.apache.giraph.comm.requests.SaslTokenMessageRequest(byte[]) may expose internal representation by storing an externally mutable object into SaslTokenMessageRequest.token |
MALICIOUS_CODE |
EI_EXPOSE_REP2 |
49 |
Medium |
org.apache.giraph.comm.requests.SaslTokenMessageRequest.setSaslToken(byte[]) may expose internal representation by storing an externally mutable object into SaslTokenMessageRequest.token |
MALICIOUS_CODE |
EI_EXPOSE_REP2 |
67 |
Medium |
org.apache.giraph.conf.AllOptions
Bug |
Category |
Details |
Line |
Priority |
Found reliance on default encoding in org.apache.giraph.conf.AllOptions.main(String[]): new java.io.FileWriter(String) |
I18N |
DM_DEFAULT_ENCODING |
154 |
High |
org.apache.giraph.factories.DefaultEdgeValueFactory
Bug |
Category |
Details |
Line |
Priority |
Class org.apache.giraph.factories.DefaultEdgeValueFactory defines non-transient non-serializable instance field conf |
BAD_PRACTICE |
SE_BAD_FIELD |
Not available |
Medium |
org.apache.giraph.factories.DefaultInputOutEdgesFactory
Bug |
Category |
Details |
Line |
Priority |
Class org.apache.giraph.factories.DefaultInputOutEdgesFactory defines non-transient non-serializable instance field conf |
BAD_PRACTICE |
SE_BAD_FIELD |
Not available |
Medium |
org.apache.giraph.factories.DefaultMessageValueFactory
Bug |
Category |
Details |
Line |
Priority |
Class org.apache.giraph.factories.DefaultMessageValueFactory defines non-transient non-serializable instance field conf |
BAD_PRACTICE |
SE_BAD_FIELD |
Not available |
Medium |
org.apache.giraph.factories.DefaultOutEdgesFactory
Bug |
Category |
Details |
Line |
Priority |
Class org.apache.giraph.factories.DefaultOutEdgesFactory defines non-transient non-serializable instance field conf |
BAD_PRACTICE |
SE_BAD_FIELD |
Not available |
Medium |
org.apache.giraph.factories.DefaultVertexIdFactory
Bug |
Category |
Details |
Line |
Priority |
Class org.apache.giraph.factories.DefaultVertexIdFactory defines non-transient non-serializable instance field conf |
BAD_PRACTICE |
SE_BAD_FIELD |
Not available |
Medium |
org.apache.giraph.factories.DefaultVertexValueFactory
Bug |
Category |
Details |
Line |
Priority |
Class org.apache.giraph.factories.DefaultVertexValueFactory defines non-transient non-serializable instance field conf |
BAD_PRACTICE |
SE_BAD_FIELD |
Not available |
Medium |
org.apache.giraph.function.primitive.PrimitiveRefs$DoubleRef
org.apache.giraph.function.primitive.PrimitiveRefs$FloatRef
org.apache.giraph.function.primitive.PrimitiveRefs$IntRef
org.apache.giraph.function.primitive.PrimitiveRefs$ObjRef
org.apache.giraph.function.primitive.PrimitiveRefs$ShortRef
org.apache.giraph.graph.GraphTaskManager$OverrideExceptionHandler
Bug |
Category |
Details |
Line |
Priority |
org.apache.giraph.graph.GraphTaskManager$OverrideExceptionHandler.uncaughtException(Thread, Throwable) invokes System.exit(...), which shuts down the entire virtual machine |
BAD_PRACTICE |
DM_EXIT |
1124 |
Medium |
org.apache.giraph.io.formats.PseudoRandomLocalEdgesHelper
Bug |
Category |
Details |
Line |
Priority |
Bad attempt to compute absolute value of signed random integer in org.apache.giraph.io.formats.PseudoRandomLocalEdgesHelper.generateDestVertex(long, Random) |
CORRECTNESS |
RV_ABSOLUTE_VALUE_OF_RANDOM_INT |
85 |
High |
org.apache.giraph.jython.wrappers.JythonWrapperBase
Bug |
Category |
Details |
Line |
Priority |
org.apache.giraph.jython.wrappers.JythonWrapperBase overrides equals in org.python.core.PyObject and may not be symmetric |
CORRECTNESS |
EQ_OVERRIDING_EQUALS_NOT_SYMMETRIC |
62-72 |
Medium |
org.apache.giraph.jython.wrappers.JythonWritableWrapper
Bug |
Category |
Details |
Line |
Priority |
org.apache.giraph.jython.wrappers.JythonWritableWrapper overrides equals in JythonWrapperBase and may not be symmetric |
CORRECTNESS |
EQ_OVERRIDING_EQUALS_NOT_SYMMETRIC |
96-105 |
Medium |
org.apache.giraph.partition.PartitionBalancer$PartitionOwnerComparator
Bug |
Category |
Details |
Line |
Priority |
org.apache.giraph.partition.PartitionBalancer$PartitionOwnerComparator implements Comparator but not Serializable |
BAD_PRACTICE |
SE_COMPARATOR_SHOULD_BE_SERIALIZABLE |
97-122 |
Medium |
org.apache.giraph.utils.ArrayWritable
Bug |
Category |
Details |
Line |
Priority |
org.apache.giraph.utils.ArrayWritable.get() may expose internal representation by returning ArrayWritable.values |
MALICIOUS_CODE |
EI_EXPOSE_REP |
76 |
Medium |
new org.apache.giraph.utils.ArrayWritable(Class, Writable[]) may expose internal representation by storing an externally mutable object into ArrayWritable.values |
MALICIOUS_CODE |
EI_EXPOSE_REP2 |
55 |
Medium |
org.apache.giraph.utils.ArrayWritable.set(Writable[]) may expose internal representation by storing an externally mutable object into ArrayWritable.values |
MALICIOUS_CODE |
EI_EXPOSE_REP2 |
70 |
Medium |
org.apache.giraph.utils.ExtendedByteArrayDataOutput
Bug |
Category |
Details |
Line |
Priority |
org.apache.giraph.utils.ExtendedByteArrayDataOutput.getByteArray() may expose internal representation by returning ExtendedByteArrayDataOutput.buf |
MALICIOUS_CODE |
EI_EXPOSE_REP |
179 |
Medium |
new org.apache.giraph.utils.ExtendedByteArrayDataOutput(byte[]) may expose internal representation by storing an externally mutable object into ExtendedByteArrayDataOutput.buf |
MALICIOUS_CODE |
EI_EXPOSE_REP2 |
47 |
Medium |
org.apache.giraph.utils.UnsafeArrayReads
Bug |
Category |
Details |
Line |
Priority |
new org.apache.giraph.utils.UnsafeArrayReads(byte[]) may expose internal representation by storing an externally mutable object into UnsafeArrayReads.buffer |
MALICIOUS_CODE |
EI_EXPOSE_REP2 |
66 |
Medium |
new org.apache.giraph.utils.UnsafeArrayReads(byte[], int, int) may expose internal representation by storing an externally mutable object into UnsafeArrayReads.buffer |
MALICIOUS_CODE |
EI_EXPOSE_REP2 |
78 |
Medium |
org.apache.giraph.utils.UnsafeByteArrayOutputStream
Bug |
Category |
Details |
Line |
Priority |
org.apache.giraph.utils.UnsafeByteArrayOutputStream.getByteArray() may expose internal representation by returning UnsafeByteArrayOutputStream.buffer |
MALICIOUS_CODE |
EI_EXPOSE_REP |
134 |
Medium |
new org.apache.giraph.utils.UnsafeByteArrayOutputStream(byte[]) may expose internal representation by storing an externally mutable object into UnsafeByteArrayOutputStream.buffer |
MALICIOUS_CODE |
EI_EXPOSE_REP2 |
98 |
Medium |
org.apache.giraph.utils.UnsafeReusableByteArrayInput
Bug |
Category |
Details |
Line |
Priority |
org.apache.giraph.utils.UnsafeReusableByteArrayInput.initialize(byte[], int, int) may expose internal representation by storing an externally mutable object into UnsafeReusableByteArrayInput.buffer |
MALICIOUS_CODE |
EI_EXPOSE_REP2 |
42 |
Medium |
org.apache.giraph.worker.BspServiceWorker
Bug |
Category |
Details |
Line |
Priority |
org.apache.giraph.worker.BspServiceWorker.processEvent(WatchedEvent) invokes System.exit(...), which shuts down the entire virtual machine |
BAD_PRACTICE |
DM_EXIT |
1830 |
Medium |
org.apache.giraph.worker.BspServiceWorker.getWorkerObservers() may expose internal representation by returning BspServiceWorker.observers |
MALICIOUS_CODE |
EI_EXPOSE_REP |
288 |
Medium |
org.apache.giraph.writable.kryo.serializers.ReusableFieldSerializer
Bug |
Category |
Details |
Line |
Priority |
org.apache.giraph.writable.kryo.serializers.ReusableFieldSerializer implements Comparator but not Serializable |
BAD_PRACTICE |
SE_COMPARATOR_SHOULD_BE_SERIALIZABLE |
42-55 |
Medium |