diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/serde/AObjectSerializerDeserializer.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/serde/AObjectSerializerDeserializer.java
index ca2557a..b2cb477 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/serde/AObjectSerializerDeserializer.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/serde/AObjectSerializerDeserializer.java
@@ -210,6 +210,7 @@
             }
             case BINARY: {
                 aBinarySerDer.serialize((ABinary) instance, out);
+                break;
             }
             case DATE: {
                 ADateSerializerDeserializer.INSTANCE.serialize((ADate) instance, out);
@@ -261,12 +262,15 @@
             }
             case ORDEREDLIST: {
                 AOrderedListSerializerDeserializer.SCHEMALESS_INSTANCE.serialize((AOrderedList) instance, out);
+                break;
             }
             case UNORDEREDLIST: {
                 AUnorderedListSerializerDeserializer.SCHEMALESS_INSTANCE.serialize((AUnorderedList) instance, out);
+                break;
             }
             case TYPE: {
                 ATypeSerializerDeserializer.INSTANCE.serialize((IAType) instance, out);
+                break;
             }
             default: {
                 throw new NotImplementedException("No serializer/deserializer implemented for type " + t.getTypeTag()
diff --git a/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/CodePointToStringDescriptor.java b/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/CodePointToStringDescriptor.java
index 42c5c49..3b89eba 100644
--- a/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/CodePointToStringDescriptor.java
+++ b/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/CodePointToStringDescriptor.java
@@ -48,10 +48,6 @@
         }
     };
 
-    private final static byte[] currentUTF8 = new byte[6];
-    private final static byte[] tempStoreForLength = new byte[5];
-    private final byte stringTypeTag = ATypeTag.STRING.serialize();
-
     @Override
     public ICopyEvaluatorFactory createEvaluatorFactory(final ICopyEvaluatorFactory[] args) {
         return new ICopyEvaluatorFactory() {
@@ -67,6 +63,10 @@
                     private ArrayBackedValueStorage outInputList = new ArrayBackedValueStorage();
                     private ICopyEvaluator evalList = listEvalFactory.createEvaluator(outInputList);
 
+                    private final byte[] currentUTF8 = new byte[6];
+                    private final byte[] tempStoreForLength = new byte[5];
+                    private final byte stringTypeTag = ATypeTag.STRING.serialize();
+
                     @Override
                     public void evaluate(IFrameTupleReference tuple) throws AlgebricksException {
                         try {
