xlab-uiuc / IDoCT

Illinois Dataset of Configuration Tests
3 stars 23 forks source link

Add interesting CTest parameters for various Hadoop tests #19

Closed NK-Nikunj closed 1 year ago

NK-Nikunj commented 1 year ago
  1. Test Name: org.apache.hadoop.io.compress.TestCodec#testDeflateCodec 1.1 Test Parameter: io.file.buffer.size
    • Bad and Failing Parameter: 0 (Illegal Argument)
    • Good and Passing Parameter: 128 (Can fit in a single page; Need not be a multiple of page size)
    • Good and Failing Parameter: 2147483648 (2GB is a multiple of page size, 4096, but also exceeds Integer limits. It still is a Good value as 2GB buffer size is a reasonable value)
  2. Test Name: org.apache.hadoop.service.launcher.TestServiceConf#testRunService 2.1 Test Parameter: hadoop.service.shutdown.timeout
    • Bad and Failing Parameter: 10.5s (Parsing error to Long)
    • Bad and Passing Parameter: 0s (Minimum duration of the timeout is 1 second)
    • Bad and Passing Parameter: -1s (Timeout value can't be negative)
    • Good and Passing Parameter: 100s (Expected parameter for timeout)
    • NOTE: Other CTests such as org.apache.hadoop.service.launcher.TestServiceConf#testConfPropagation and org.apache.hadoop.service.launcher.TestServiceConf#testConfPropagationOverInitBindings have the same behavior as above
  3. Test Name: org.apache.hadoop.crypto.TestCryptoStreamsWithJceAesCtrCryptoCodec#testSecureRandomAlgorithmConfiguration 3.1 Test Parameter: hadoop.security.java.secure.random.algorithm
    • Good and Passing: NativePRNG
    • Good and Passing: SHA1PRNG
    • Good and Passing: NativePRNGBlocking
    • Good and Passing: NativePRNGNonBlocking
    • Bad and Failing: RandomPRNG (Does not exist under secure random algorithm in JAVA)
  4. Test Name: org.apache.hadoop.security.TestGroupsCaching#testBackgroundRefreshCounters 4.1 Test Parameter: hadoop.user.group.static.mapping.overrides
    • Bad and Failing: user=group=user (Format is user=group)
    • Good and Passing: dr.who= (default value) 4.2 Test Parameter: hadoop.security.groups.negative-cache.secs
    • Bad and Failing: foobar (Integer required)
    • Good and Passing: 30 4.3 Test Parameter: hadoop.security.groups.cache.warn.after.ms
    • Bad and Failing: abc (Integer required)
    • Good and Passing: 50
    • Bad and Passing: -50 (warning logs timer should take positive values) 4.4 Test Parameter: hadoop.security.groups.shell.command.timeout
    • Bad and Failing: 5abc (Not a time format)
    • Bad and Failing: 5.5s (Integer intervals required)
    • Bad and Passing: -1s (Timeout should be positive)
    • Good and Passing: 5s
  5. Test Name: org.apache.hadoop.security.TestGroupFallback#testGroupWithFallback 4.1 Test Parameter: hadoop.security.groups.cache.background.reload.threads
    • Not tested: This parameter requires another parameter to be enabled. Since the details can't be logged into ctest_metadata.csv, I omit testing parameters. 4.2 Test Parameter: hadoop.security.groups.cache.secs
    • Bad and Failing: 0 (Needs positive integer)
    • Good and Passing: 100 4.3 Test Parameter: hadoop.user.group.static.mapping.overrides
    • Bad and Failing: group=user=group (Invalid syntax)
    • Good and Passing: dr.who= (default value) 4.4 Test Parameter: hadoop.security.groups.cache.background.reload
    • Good and Passing: True
    • Good and Passing: False
    • NOTE: This parameter defaults to False for any other value parsed (I tried values like "abc" "-1.45" etc. to validate this) 4.5 Test Parameter: hadoop.security.groups.negative-cache.secs
    • Bad and Failing: abc (Integer required)
    • Good and Passing: 100 4.6 Test Parameter: hadoop.security.groups.cache.warn.after.ms
    • Good and Passing: 100
    • Bad and Failing: abc (Integer required)

Total CTests added: 10 Total unique CTests parameters tested: 10

NK-Nikunj commented 1 year ago

@Alex-Lian could you review the PR to see if it passes as the single credit requirement?

xylian86 commented 1 year ago

@NK-Nikunj Ok, I am running the script to check which may take some time.

xylian86 commented 1 year ago

This PR looks good to me.