>From Michael Blow <[email protected]>:
Michael Blow has submitted this change. (
https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/21207?usp=email )
Change subject: Merge branch 'gerrit/neo' into 'gerrit/trinity'
......................................................................
Merge branch 'gerrit/neo' into 'gerrit/trinity'
* [NO ISSUE][*DB][EXT] Update Apache Hadoop -> 3.4.2 for CVE (MB-70644)
* [NO ISSUE][MISC] Update StringJsonParseEval for compat w/ Jackson 2.21[.3]
(MB-71736)
Ext-ref: MB-71736
Change-Id: I65e698c5127b978b26c548dfdedd94788dd295c0
---
M
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/evaluators/StringJsonParseEval.java
2 files changed, 9 insertions(+), 3 deletions(-)
Approvals:
Michael Blow: Looks good to me, approved; Verified
diff --git
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/evaluators/StringJsonParseEval.java
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/evaluators/StringJsonParseEval.java
index ad9cf0f..1f1c9a7 100644
---
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/evaluators/StringJsonParseEval.java
+++
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/evaluators/StringJsonParseEval.java
@@ -43,6 +43,7 @@
import org.apache.hyracks.data.std.util.ByteArrayAccessibleInputStream;
import org.apache.hyracks.dataflow.common.data.accessors.IFrameTupleReference;
import org.apache.hyracks.util.LogRedactionUtil;
+import org.apache.hyracks.util.annotations.AiProvenance;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@@ -58,7 +59,7 @@
private final ArrayBackedValueStorage resultStorage;
private final DataOutput out;
- //@AiProvenance(agent = AiProvenance.Agent.CLAUDE_SONNET_4_6, tool =
AiProvenance.Tool.GITHUB_COPILOT, contributionKind =
AiProvenance.ContributionKind.GENERATED, notes = "Three-outcome enum to
distinguish parse success, EOF, and error in tryParseAndSetResult")
+ @AiProvenance(agent = AiProvenance.Agent.CLAUDE_SONNET_4_6, tool =
AiProvenance.Tool.GITHUB_COPILOT, contributionKind =
AiProvenance.ContributionKind.GENERATED, notes = "Three-outcome enum to
distinguish parse success, EOF, and error in tryParseAndSetResult")
private enum ParseOutcome {
SUCCESS,
EOF,
@@ -129,7 +130,7 @@
* Returns {@link ParseOutcome#SUCCESS} and sets {@code result} on success,
* {@link ParseOutcome#EOF} if the input was empty, or {@link
ParseOutcome#ERROR} on a parse failure.
*/
- //@AiProvenance(agent = AiProvenance.Agent.CLAUDE_SONNET_4_6, tool =
AiProvenance.Tool.GITHUB_COPILOT, contributionKind =
AiProvenance.ContributionKind.GENERATED, notes = "Extracted to eliminate
duplicated try/catch parse blocks; returns ParseOutcome to preserve distinct
EOF vs error semantics")
+ @AiProvenance(agent = AiProvenance.Agent.CLAUDE_SONNET_4_6, tool =
AiProvenance.Tool.GITHUB_COPILOT, contributionKind =
AiProvenance.ContributionKind.GENERATED, notes = "Extracted to eliminate
duplicated try/catch parse blocks; returns ParseOutcome to preserve distinct
EOF vs error semantics")
private ParseOutcome tryParseAndSetResult(IPointable result) throws
HyracksDataException {
resultStorage.reset();
try {
@@ -157,7 +158,7 @@
* Such sequences are valid CESU-8 but invalid UTF-8, and are rejected by
Jackson 2.20+.
* Scanning for 0xED is cheap and covers the vast majority of inputs with
zero allocation.
*/
- //@AiProvenance(agent = AiProvenance.Agent.CLAUDE_SONNET_4_6, tool =
AiProvenance.Tool.GITHUB_COPILOT, contributionKind =
AiProvenance.ContributionKind.GENERATED, notes = "Fast pre-scan to detect
CESU-8 surrogates (0xED [0xA0-0xBF]) before triggering the more expensive
CESU-8 to UTF-8 re-encoding retry path")
+ @AiProvenance(agent = AiProvenance.Agent.CLAUDE_SONNET_4_6, tool =
AiProvenance.Tool.GITHUB_COPILOT, contributionKind =
AiProvenance.ContributionKind.GENERATED, notes = "Fast pre-scan to detect
CESU-8 surrogates (0xED [0xA0-0xBF]) before triggering the more expensive
CESU-8 to UTF-8 re-encoding retry path")
private static boolean containsCesu8Surrogate(byte[] bytes, int offset,
int length) {
int end = offset + length;
for (int i = offset; i < end - 1; i++) {
--
To view, visit https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/21207?usp=email
To unsubscribe, or for help writing mail filters, visit
https://asterix-gerrit.ics.uci.edu/settings?usp=email
Gerrit-MessageType: merged
Gerrit-Project: asterixdb
Gerrit-Branch: trinity
Gerrit-Change-Id: I65e698c5127b978b26c548dfdedd94788dd295c0
Gerrit-Change-Number: 21207
Gerrit-PatchSet: 2
Gerrit-Owner: Michael Blow <[email protected]>
Gerrit-Reviewer: Jenkins <[email protected]>
Gerrit-Reviewer: Michael Blow <[email protected]>
Gerrit-CC: Anon. E. Moose #1000171