[ https://issues.apache.org/jira/browse/CASSANDRA-9954?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Robert Stupp updated CASSANDRA-9954: ------------------------------------ Description: CASSANDRA-9402 introduced a sandbox using a thread-pool to enforce security constraints and to detect "amok UDFs" - i.e. UDFs that essentially never return (e.g. {{while (true)}}. Currently the safest way to react on such an "amok UDF" is to _fail-fast_ - to stop the C* daemon since stopping a thread (in Java) is just no solution. CASSANDRA-9890 introduced further protection by inspecting the byte-code. The same mechanism can also be used to manipulate the Java-UDF byte-code. By manipulating the byte-code I mean to add regular "is-amok-UDF" checks in the compiled code. EDIT: These "is-amok-UDF" checks would also work for _UNFENCED_ Java-UDFs. was: CASSANDRA-9402 introduced a sandbox using a thread-pool to enforce security constraints and to detect "amok UDFs" - i.e. UDFs that essentially never return (e.g. {{while (true)}}. Currently the safest way to react on such an "amok UDF" is to _fail-fast_ - to stop the C* daemon since stopping a thread (in Java) is just no solution. CASSANDRA-9890 introduced further protection by inspecting the byte-code. The same mechanism can also be used to manipulate the Java-UDF byte-code. By manipulating the byte-code I mean to add regular "is-amok-UDF" checks in the compiled code. > Improve Java-UDF timeout detection > ---------------------------------- > > Key: CASSANDRA-9954 > URL: https://issues.apache.org/jira/browse/CASSANDRA-9954 > Project: Cassandra > Issue Type: Improvement > Reporter: Robert Stupp > Assignee: Robert Stupp > Fix For: 3.x > > > CASSANDRA-9402 introduced a sandbox using a thread-pool to enforce security > constraints and to detect "amok UDFs" - i.e. UDFs that essentially never > return (e.g. {{while (true)}}. > Currently the safest way to react on such an "amok UDF" is to _fail-fast_ - > to stop the C* daemon since stopping a thread (in Java) is just no solution. > CASSANDRA-9890 introduced further protection by inspecting the byte-code. The > same mechanism can also be used to manipulate the Java-UDF byte-code. > By manipulating the byte-code I mean to add regular "is-amok-UDF" checks in > the compiled code. > EDIT: These "is-amok-UDF" checks would also work for _UNFENCED_ Java-UDFs. -- This message was sent by Atlassian JIRA (v6.3.4#6332)