nikunjagarwal321 commented on code in PR #5527:
URL: https://github.com/apache/hive/pull/5527#discussion_r1835444541
##########
serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/ObjectInspectorUtils.java:
##########
@@ -1652,4 +1654,20 @@ public static boolean
hasAllFieldsSettable(ObjectInspector oi,
private ObjectInspectorUtils() {
// prevent instantiation
}
+
+ /**
+ * Returns slot value used for ordering the fields to make it deterministic
+ * @param field : field of a given class
+ * @return
+ */
+ private static int getSlotValue(Field field) {
+ try {
+ Field slotField = Field.class.getDeclaredField("slot");
+ slotField.setAccessible(true);
Review Comment:
Hey, the slotField is only used within the getSlotValue method, so the
accessibility change is limited to this local instance and should ideally have
no lasting or global impact. Since each call to getSlotValue uses a separate
instance, there should be no repercussions.
Still, to ensure security, I have added the code to revert the slot field
accessible value back to its original value. Please let me know if this looks
good.
--
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]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]