diff --git a/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/identifier/DBIdentifier.java b/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/identifier/DBIdentifier.java
index aa1f888..255784a 100644
--- a/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/identifier/DBIdentifier.java
+++ b/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/identifier/DBIdentifier.java
@@ -142,6 +142,7 @@
         if (DBIdentifierType.CONSTANT != getType() && DBIdentifierType.COLUMN_DEFINITION != getType()) {
             if (delimit) {
                 name = Normalizer.delimit(name, true);
+                setNameDelimited(true);
              } else {
                  name = Normalizer.normalizeString(name);
              }
@@ -325,6 +326,7 @@
         sName.setNameInternal(getNameInternal());
         sName.setType(getType());
         sName.setIgnoreCase(getIgnoreCase());
+        sName.setNameDelimited(isNameDelimited());
         return sName;
     }
 
@@ -859,7 +861,7 @@
      * @param name
      */
     public static DBIdentifier removeDelimiters(DBIdentifier name) {
-        if (DBIdentifier.isNull(name)) {
+        if (DBIdentifier.isNull(name) || !name.isDelimited()) {
             return name;
         }
         if (!name.isDelimited()) {
@@ -927,7 +929,7 @@
         if (DBIdentifier.isEmpty(this)) {
             return false;
         }
-        return Normalizer.isDelimited(getNameInternal());
+        return isNameDelimited() || Normalizer.isDelimited(getNameInternal());
     }
 
     /**
diff --git a/openjpa-lib/src/main/java/org/apache/openjpa/lib/identifier/IdentifierImpl.java b/openjpa-lib/src/main/java/org/apache/openjpa/lib/identifier/IdentifierImpl.java
index 3958cd3..99a636d 100644
--- a/openjpa-lib/src/main/java/org/apache/openjpa/lib/identifier/IdentifierImpl.java
+++ b/openjpa-lib/src/main/java/org/apache/openjpa/lib/identifier/IdentifierImpl.java
@@ -28,6 +28,7 @@
     
     private static final long serialVersionUID = 1L;
     private String _name = null;
+    private boolean nameDelimited = false;
 
     protected IdentifierImpl() {}
 
@@ -45,6 +46,14 @@
         return _name;
     }
 
+    public boolean isNameDelimited() {
+        return nameDelimited;
+    }
+
+    public void setNameDelimited(boolean nameDelimited) {
+        this.nameDelimited = nameDelimited;
+    }
+
     @Override
     public String toString() {
         return getName();
