fallintoplace opened a new pull request, #18364:
URL: https://github.com/apache/dolphinscheduler/pull/18364

   ## Purpose
   
   Switch conditions are evaluated through the shared Nashorn sandbox. The 
sandbox already supports CPU and memory guards, but the current utility does 
not configure them, so a malformed condition can keep evaluation busy 
indefinitely.
   
   ## Changes
   
   - Configure the Switch condition sandbox with CPU and memory limits.
   - Run sandbox evaluation through a daemon executor required by the Nashorn 
sandbox monitor.
   - Serialize access to the shared sandbox instance.
   - Add regression coverage for infinite and very expensive condition 
expressions.
   
   ## Validation
   
   - `JAVA_HOME=/opt/homebrew/opt/openjdk@11/libexec/openjdk.jdk/Contents/Home 
./mvnw -q -pl dolphinscheduler-master -am -Dtest=SwitchTaskUtilsTest 
-DfailIfNoTests=false -Dsurefire.failIfNoSpecifiedTests=false 
-Dspotless.skip=true -Dcheckstyle.skip=true -Djacoco.skip=true 
-Dmaven.javadoc.skip=true -Drat.skip=true -Dlicense.skip=true test`
   - `git diff --check -- 
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/utils/SwitchTaskUtils.java
 
dolphinscheduler-master/src/test/java/org/apache/dolphinscheduler/server/master/utils/SwitchTaskUtilsTest.java`


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to