Buggy code:
public int flushQuery = 0 ; public int lockTimeout = - 1 ; public int queryTimeout = - 1 ; public int lockScope = LOCKSCOPE_NORMAL ; public int readLockLevel = LOCK_NONE ; public int writeLockLevel = LOCK_NONE ; public Set < String > fetchGroups = null ; public Set < String > fields = null ; public Set < Class < ? > > rootClasses ; public Set < Object > rootInstances ; public Map < String , Object > hints = null ; public boolean fetchGroupContainsDefault = false ; public boolean fetchGroupContainsAll = false ; public boolean extendedPathLookup = false ; public DataCacheRetrieveMode cacheRetrieveMode ; public DataCacheStoreMode cacheStoreMode ; } private final FetchConfigurationImpl . ConfigurationState _state ; private FetchConfigurationImpl _parent ; private String _fromField ; private Class < ? > _fromType ; private String _directRelationOwner ; private boolean _load = true ; private int _availableRecursion ; private int _availableDepth ; private FetchConfigurationHintHandler _hintHandler ; public FetchConfigurationImpl ( ) { } protected FetchConfigurationImpl ( FetchConfigurationImpl . ConfigurationState state ) { } public StoreContext getContext ( ) { } public void setContext ( StoreContext ctx ) { } public Object clone ( ) { } protected FetchConfigurationImpl newInstance ( FetchConfigurationImpl . ConfigurationState state ) { } public void copy ( FetchConfiguration fetch ) { } void copyHints ( FetchConfiguration fetch ) { } public int getFetchBatchSize ( ) { } public FetchConfiguration setFetchBatchSize ( int fetchBatchSize ) { } public int getMaxFetchDepth ( ) { } public FetchConfiguration setMaxFetchDepth ( int depth ) { } public boolean getQueryCacheEnabled ( ) { } public FetchConfiguration setQueryCacheEnabled ( boolean cache ) { } public int getFlushBeforeQueries ( ) { } public boolean getExtendedPathLookup ( ) { } public FetchConfiguration setExtendedPathLookup ( boolean flag ) { } public FetchConfiguration setFlushBeforeQueries ( int flush ) { } public Set < String > getFetchGroups ( ) { } public boolean hasFetchGroup ( String group ) { } public boolean hasFetchGroupDefault ( ) { } public boolean hasFetchGroupAll ( ) { } public FetchConfiguration addFetchGroup ( String name ) { } public FetchConfiguration addFetchGroups ( Collection < String > groups ) { } public FetchConfiguration removeFetchGroup ( String group ) { } public FetchConfiguration removeFetchGroups ( Collection < String > groups ) { } public FetchConfiguration clearFetchGroups ( ) { } public FetchConfiguration resetFetchGroups ( ) { } public Set < String > getFields ( ) { } public boolean hasField ( String field ) { } public FetchConfiguration addField ( String field ) { } public FetchConfiguration addFields ( Collection < String > fields ) { } public FetchConfiguration removeField ( String field ) { } public FetchConfiguration removeFields ( Collection < String > fields ) { } public FetchConfiguration clearFields ( ) { } public DataCacheRetrieveMode getCacheRetrieveMode ( ) { } public DataCacheStoreMode getCacheStoreMode ( ) { } public void setCacheRetrieveMode ( DataCacheRetrieveMode mode ) { } public void setCacheStoreMode ( DataCacheStoreMode mode ) { } public int getLockTimeout ( ) { } public FetchConfiguration setLockTimeout ( int timeout ) { } public int getQueryTimeout ( ) { } public FetchConfiguration setQueryTimeout ( int timeout ) { } public int getLockScope ( ) { } public FetchConfiguration setLockScope ( int scope ) { } public int getReadLockLevel ( ) { } public FetchConfiguration setReadLockLevel ( int level ) { } public int getWriteLockLevel ( ) { } public FetchConfiguration setWriteLockLevel ( int level ) { } public ResultList < ? > newResultList ( ResultObjectProvider rop ) { } private void assertActiveTransaction ( ) { } private boolean isActiveTransaction ( ) { } public void setHint ( String name , Object value ) { } public void setHint ( String name , Object value , boolean validThrowException ) { } public void addHint ( String name , Object value ) { } public Object getHint ( String name ) { } public Object removeHint ( String name ) { } public Map < String , Object > getHints ( ) { } public Set < Class < ? > > getRootClasses ( ) { } public FetchConfiguration setRootClasses ( Collection < Class < ? > > classes ) { } public Set < Object > getRootInstances ( ) { } public FetchConfiguration setRootInstances ( Collection < ? > instances ) { } public void lock ( ) { } public void unlock ( ) { } public int requiresFetch ( FieldMetaData fm ) { } public boolean requiresLoad ( ) { } public FetchConfiguration traverse ( FieldMetaData fm ) { } private boolean includes ( FieldMetaData fmd ) { } private boolean hasExtendedLookupPath ( FieldMetaData fmd ) { } private int getAvailableRecursionDepth ( FieldMetaData fm , Class < ? > type , String fromField , boolean traverse ) { } private static Class < ? > getRelationType ( FieldMetaData fm ) { } private static int reduce ( int d ) { } FetchConfiguration getParent ( ) { } boolean isRoot ( ) { } FetchConfiguration getRoot ( ) { } int getAvailableFetchDepth ( ) { } int getAvailableRecursionDepth ( ) { } String getTraversedFromField ( ) { } Class < ? > getTraversedFromType ( ) { } List < FetchConfigurationImpl > getPath ( ) { } List < FetchConfigurationImpl > trackPath ( List < FetchConfigurationImpl > path ) { } public String toString ( ) { } private String getPathString ( ) { List < FetchConfigurationImpl > path = getPath ( ) ; if ( path . isEmpty ( ) ) return "" ; <START_BUG> StringBuffer buf = new StringBuffer ( ) . append ( ":<seq2seq4repair_space>" ) ; <END_BUG> for ( Iterator < FetchConfigurationImpl > itr = path . iterator ( ) ; itr . hasNext ( ) ; ) { buf . append ( itr . next ( ) . getTraversedFromField ( ) ) ; if ( itr . hasNext ( ) ) buf . append ( "->" ) ; } return buf . toString ( ) ; } }

Fix:
StringBuilder buf = new StringBuilder ( ) . append ( ":<seq2seq4repair_space>" ) ;