{"record":{"id":"09423219145a5979","repo":"OtterMind/Chat2DB","slug":"unsupported-oracle-description-value","errorCode":null,"errorMessage":"Unsupported Oracle ${description}: ${value}","messagePattern":"Unsupported Oracle (.+?): (.+?)","errorType":"validation","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"chat2db-community-server/chat2db-community-plugins/chat2db-community-oracle/src/main/java/ai/chat2db/plugin/oracle/OracleSqlGuards.java","lineNumber":101,"sourceCode":"            return null;\n        }\n        String candidate = value.startsWith(\"0x\") ? value.substring(2) : value;\n        if (isHex(candidate)) {\n            return candidate;\n        }\n        if (fallbackHex != null && isHex(fallbackHex)) {\n            return fallbackHex;\n        }\n        throw new IllegalArgumentException(\"Invalid Oracle RAW/BLOB hex value\");\n    }\n\n    public static String requireKeyword(String description, String value, String... allowedValues) {\n        for (String allowedValue : allowedValues) {\n            if (allowedValue.equalsIgnoreCase(StringUtils.trimToEmpty(value))) {\n                return allowedValue;\n            }\n        }\n        throw new IllegalArgumentException(\"Unsupported Oracle \" + description + \": \" + value);\n    }\n\n    private static void scanExpression(String expression, boolean typeExpression, String description) {\n        Deque<Character> delimiters = new ArrayDeque<>();\n        List<String> topLevelWords = new ArrayList<>();\n        boolean sawToken = false;\n\n        for (int i = 0; i < expression.length(); i++) {\n            char c = expression.charAt(i);\n            if (Character.isWhitespace(c)) {\n                continue;\n            }\n            sawToken = true;\n\n            if (isAlternativeQuoteStart(expression, i)) {\n                if (typeExpression) {\n                    throw invalid(description, expression);\n                }","sourceCodeStart":83,"sourceCodeEnd":119,"githubUrl":"https://github.com/OtterMind/Chat2DB/blob/5ee1e990e73fbcae1969dc554be254fedb3ab888/chat2db-community-server/chat2db-community-plugins/chat2db-community-oracle/src/main/java/ai/chat2db/plugin/oracle/OracleSqlGuards.java#L83-L119","documentation":"Error \"Unsupported Oracle ${description}: ${value}\" thrown in OtterMind/Chat2DB.","triggerScenarios":"The Oracle SQL guard rejected a value for a construct it does not support.","commonSituations":"See trigger scenarios.","solutions":["Replace the unsupported Oracle element noted in the message with a supported alternative.","Check the plugin documentation for the allowed values of this construct."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"5ee1e990e73fbcae1969dc554be254fedb3ab888","analyzedAt":"2026-08-14T07:05:03.077Z","schemaVersion":2},"datasetVersion":"2026-08-14T10:17:34.591Z"}