This weakness takes an integer, two file names, and an integer "int file1 file2 int" as an input. The first integer is the size of the array to sort for timing in benign cases without FIFO files as inputs. The two files are used for thread "scheduling", if they are FIFO files in the order "fifo1 fifo2" with respect to the input script the weakness will occur, and if they are in reverse order the weakness will not occur. If the files are given as normal files, the weakness is dependent on the quicksort where a low quicksort value is nondeterministic and a larger value will increase the likelihood that the weakness will not occur. The final integer is the number of Fibonacci values to calculate and print. This weakness uses a singleton class to pass the Fibonacci values between the thread calculating them and the thread printing them. The method of instantiating a singleton used contains a race condition that can lead to multiple instances of the class being instantiated, leading to deadlock. jena.rdfcompare:arq.sparql:jena.rdfparse:jena.rdfcat:arq.wwwenc:jena.rdfcopy:arq.wwwdec:jena.schemagen:jena.turtle $SS_TC_ROOT/$SS_TC_INSTALL/*:$SS_TC_DEPS/java/stonesoup/lttng/lttng-stonesoup-0.1.jar UNSPECIFIED UNSPECIFIED java $SS_JAVA_OPTS -Djava.library.path=$SS_TC_DEPS/lib64/ -Xmx1024M -Dlog4j.configuration=file:$SS_TC_ROOT/$SS_TC_INSTALL/jena-log4j.properties -cp "$SS_JAVA_CLASSPATH" env ANT_HOME=$SS_TC_DEPS/ant ant $SS_ANT_OPTS -Dstonesoup.database.postgres.required=no -Dstonesoup.hibernate.postgres.required=no -Dstonesoup.hibernate.mysql.required=no -Dstonesoup.database.mysql.required=no -Dstonesoup.socket.required=no -lib $SS_TC_DEPS/java/stonesoup/lttng/lttng-stonesoup-0.1.jar -Dstonesoup.socket.lib.dir="$SS_TC_DEPS/java/stonesoup/socket" -Dstonesoup.hibernate.mysql.lib.dir="$SS_TC_DEPS/java/stonesoup/hibernate/mysql" -Dstonesoup.hibernate.postgres.lib.dir="$SS_TC_DEPS/java/stonesoup/hibernate/postgres" -Dstonesoup.database.mysql.lib.dir="$SS_TC_DEPS/java/stonesoup/database/mysql" -Dstonesoup.database.postgres.lib.dir="$SS_TC_DEPS/java/stonesoup/database/postgres" -Dbin.lib.dir="$SS_TC_ROOT/$SS_TC_INSTALL" -Ddependencies.dir="$SS_TC_DEPS/java/jena" -Dstonesoup.lttng.lib.dir="$SS_TC_DEPS/java/stonesoup/lttng" -Dstonesoup.lttng.dummy.lib.dir="$SS_TC_DEPS/java/stonesoup/lttng-dummy" jar Environment variable defining string value. NONE 5000000 /opt/stonesoup/workspace/testData/file1 /opt/stonesoup/workspace/testData/file2 50 None None $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-java.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so jena.rdfcompare $SS_TC_ROOT/testData/good-01/example.xml $SS_TC_ROOT/testData/good-01/example2.xml RDF/XML RDF/XML GOOD-01 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT good-01/output.txt DOES_NOT_RETURN CONTROLLED_EXIT Environment variable defining string value. NONE 42 /opt/stonesoup/workspace/testData/fifo2 /opt/stonesoup/workspace/testData/fifo1 42 $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-java.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so arq.sparql --data=$SS_TC_ROOT/testData/good-02/vc-db-1.rdf --query=$SS_TC_ROOT/testData/good-02/q1.rq GOOD-02 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT good-02/output.txt DOES_NOT_RETURN CONTROLLED_EXIT Environment variable defining string value. NONE 670000 /opt/stonesoup/workspace/testData/fifo2 /opt/stonesoup/workspace/testData/fifo1 50 $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-java.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so arq.sparql --data=$SS_TC_ROOT/testData/good-03/vc-db-1.rdf --query=$SS_TC_ROOT/testData/good-03/q-bp1.rq GOOD-03 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT good-03/output.txt DOES_NOT_RETURN CONTROLLED_EXIT Environment variable defining string value. NONE 5000000 /opt/stonesoup/workspace/testData/file1 /opt/stonesoup/workspace/testData/file2 50 None None $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-java.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so jena.rdfparse $SS_TC_ROOT/testData/good-04/example.xml GOOD-04 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT good-04/output.txt DOES_NOT_RETURN CONTROLLED_EXIT Environment variable defining string value. NONE 42 /opt/stonesoup/workspace/testData/fifo2 /opt/stonesoup/workspace/testData/fifo1 42 $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-java.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so jena.rdfcat -x $SS_TC_ROOT/testData/good-05/example.xml $SS_TC_ROOT/testData/good-05/example2.xml GOOD-01 AND GOOD-02 AND GOOD-03 AND GOOD-04 AND GOOD-05 GOOD-06 AND GOOD-07 AND GOOD-08 AND GOOD-09 AND GOOD-10 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT <rdf:Description rdf:about="http://somewhere/RebeccaSmith/"> <vcard:N rdf:parseType="Resource"> <vcard:Family>Smith</vcard:Family> <vcard:Given>Rebecca</vcard:Given> </vcard:N> <vcard:FN>Becky Smith</vcard:FN> <vcard:N rdf:parseType="Resource"> <vcard:Family>Smith</vcard:Family> <vcard:Given>Rebecca</vcard:Given> </rdf:Description> DOES_NOT_RETURN CONTROLLED_EXIT Environment variable defining string value. NONE 670000 /opt/stonesoup/workspace/testData/fifo2 /opt/stonesoup/workspace/testData/fifo1 50 $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-java.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so jena.turtle --check --strict good-06/example1.ttl GOOD-06-01 AND GOOD-06-02 AND GOOD-06-03 AND GOOD-06-04 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT good-06/output1.txt good-06/output2.txt good-06/output3.txt good-06/output4.txt DOES_NOT_RETURN CONTROLLED_EXIT Environment variable defining string value. NONE 5000000 /opt/stonesoup/workspace/testData/file1 /opt/stonesoup/workspace/testData/file2 50 None None $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-java.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so jena.schemagen --includeSource --noheader -i good-07/example1.ttl GOOD-07 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT good-07/output.txt DOES_NOT_RETURN CONTROLLED_EXIT Environment variable defining string value. NONE 42 /opt/stonesoup/workspace/testData/fifo2 /opt/stonesoup/workspace/testData/fifo1 42 $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-java.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so arq.rset --in XML --results text --file $SS_TC_ROOT/testData/good-08/results.xml GOOD-08 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT good-08/output.txt DOES_NOT_RETURN CONTROLLED_EXIT Environment variable defining string value. NONE 670000 /opt/stonesoup/workspace/testData/fifo2 /opt/stonesoup/workspace/testData/fifo1 50 $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-java.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so jena.rdfcopy good-09/example1.ttl TURTLE RDF/XML GOOD-09-01 AND GOOD-09-02 AND GOOD-09-03 AND GOOD-09-04 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT good-09/output1.txt good-09/output2.txt good-09/output3.txt good-09/output4.txt DOES_NOT_RETURN CONTROLLED_EXIT Environment variable defining string value. NONE 5000000 /opt/stonesoup/workspace/testData/file1 /opt/stonesoup/workspace/testData/file2 50 None None $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-java.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so arq.qexpr '5 != 20' GOOD-10 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT good-10/output.txt DOES_NOT_RETURN CONTROLLED_EXIT Environment variable defining string value. UNEXPECTED_STATE DOS_BLOCKING 500000 /opt/stonesoup/workspace/testData/fifo1 /opt/stonesoup/workspace/testData/fifo2 50 $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-java.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so arq.rset --in XML --results text --file $SS_TC_ROOT/testData/good-08/results.xml weakness_started_PO7BQ9RzeHVLeQV8pw0W AND ((NOT PERFORMER AND (timeout_hrMYgWbt9M OR (NOT finished_vWGnry4cyi AND NOT (controlled_exit_SzfaXL9aXp OR continued_execution_63d00f9USJ)))) or (PERFORMER AND NOT ((timeout_hrMYgWbt9M OR (NOT finished_vWGnry4cyi AND NOT (controlled_exit_SzfaXL9aXp OR continued_execution_63d00f9USJ)))))) (NOT PERFORMER AND (timeout_hrMYgWbt9M OR (NOT finished_vWGnry4cyi AND NOT (controlled_exit_SzfaXL9aXp OR continued_execution_63d00f9USJ)))) or (PERFORMER AND NOT ((timeout_hrMYgWbt9M OR (NOT finished_vWGnry4cyi AND NOT (controlled_exit_SzfaXL9aXp OR continued_execution_63d00f9USJ))))) DOES_NOT_RETURN CONTROLLED_EXIT CONTINUED_EXECUTION if (( $(/bin/grep "Info: Threads ended" "logfile.txt" | wc -l) > 0 )); then true; else false; fi; None stonesoup_trace:weakness_start Environment variable defining string value. UNEXPECTED_STATE DOS_BLOCKING 50 /opt/stonesoup/workspace/testData/fifo1 /opt/stonesoup/workspace/testData/fifo2 500 $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-java.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so jena.rdfcat -x $SS_TC_ROOT/testData/good-05/example.xml $SS_TC_ROOT/testData/good-05/example2.xml weakness_started_1PsWeJ9XHp8e6q4m13iN AND ((NOT PERFORMER AND (timeout_uEMyw4dteP OR (NOT finished_mgwUW2lf3I AND NOT (controlled_exit_3szjW6cJh0 OR continued_execution_bfBjYOUdlS)))) or (PERFORMER AND NOT ((timeout_uEMyw4dteP OR (NOT finished_mgwUW2lf3I AND NOT (controlled_exit_3szjW6cJh0 OR continued_execution_bfBjYOUdlS)))))) (NOT PERFORMER AND (timeout_uEMyw4dteP OR (NOT finished_mgwUW2lf3I AND NOT (controlled_exit_3szjW6cJh0 OR continued_execution_bfBjYOUdlS)))) or (PERFORMER AND NOT ((timeout_uEMyw4dteP OR (NOT finished_mgwUW2lf3I AND NOT (controlled_exit_3szjW6cJh0 OR continued_execution_bfBjYOUdlS))))) DOES_NOT_RETURN CONTROLLED_EXIT CONTINUED_EXECUTION if (( $(/bin/grep "Info: Threads ended" "logfile.txt" | wc -l) > 0 )); then true; else false; fi; None stonesoup_trace:weakness_start