Buggy code:
public abstract class AbstractEntityManager implements EntityManager { private transient final boolean isTraceEnabled = ROOT_LOGGER . isTraceEnabled ( ) ; protected abstract EntityManager getEntityManager ( ) { } protected abstract boolean isExtendedPersistenceContext ( ) { } protected abstract boolean isInTx ( ) { } public abstract SynchronizationType getSynchronizationType ( ) { } public < T > T unwrap ( Class < T > cls ) { } public < T > TypedQuery < T > createNamedQuery ( String name , Class < T > resultClass ) { } public < T > TypedQuery < T > createQuery ( CriteriaQuery < T > criteriaQuery ) { } public < T > TypedQuery < T > createQuery ( String qlString , Class < T > resultClass ) { } public void detach ( Object entity ) { } public < T > T find ( Class < T > entityClass , Object primaryKey , Map < String , Object > properties ) { } public < T > T find ( Class < T > entityClass , Object primaryKey , LockModeType lockMode ) { } public < T > T find ( Class < T > entityClass , Object primaryKey , LockModeType lockMode , Map < String , Object > properties ) { } public < T > T find ( Class < T > entityClass , Object primaryKey ) { } public CriteriaBuilder getCriteriaBuilder ( ) { } public EntityManagerFactory getEntityManagerFactory ( ) { } public LockModeType getLockMode ( Object entity ) { } public Metamodel getMetamodel ( ) { } public Map < String , Object > getProperties ( ) { } public void lock ( Object entity , LockModeType lockMode , Map < String , Object > properties ) { } public void setProperty ( String propertyName , Object value ) { } public void clear ( ) { } public void close ( ) { } public boolean contains ( Object entity ) { } public Query createNamedQuery ( String name ) { } @ SuppressWarnings ( "unchecked" ) public Query createNativeQuery ( String sqlString , Class resultClass ) { } public Query createNativeQuery ( String sqlString , String resultSetMapping ) { } public Query createNativeQuery ( String sqlString ) { } public Query createQuery ( String ejbqlString ) { } public void flush ( ) { } public Object getDelegate ( ) { } public FlushModeType getFlushMode ( ) { } public < T > T getReference ( Class < T > entityClass , Object primaryKey ) { } public EntityTransaction getTransaction ( ) { } public boolean isOpen ( ) { } public void joinTransaction ( ) { } public void lock ( Object entity , LockModeType lockMode ) { } public < T > T merge ( T entity ) { } public void persist ( Object entity ) { } public void refresh ( Object entity ) { } public void refresh ( Object entity , Map < String , Object > properties ) { } public void refresh ( Object entity , LockModeType lockMode ) { } public void refresh ( Object entity , LockModeType lockMode , Map < String , Object > properties ) { } public void remove ( Object entity ) { } public void setFlushMode ( FlushModeType flushMode ) { } public Query createQuery ( CriteriaUpdate criteriaUpdate ) { } public Query createQuery ( CriteriaDelete criteriaDelete ) { } public StoredProcedureQuery createNamedStoredProcedureQuery ( String name ) { } public StoredProcedureQuery createStoredProcedureQuery ( String procedureName ) { } public StoredProcedureQuery createStoredProcedureQuery ( String procedureName , Class ... resultClasses ) { } public StoredProcedureQuery createStoredProcedureQuery ( String procedureName , String ... resultSetMappings ) { } public < T > EntityGraph < T > createEntityGraph ( Class < T > tClass ) { } public EntityGraph < ? > createEntityGraph ( String s ) { } <START_BUG> public < T > EntityGraph < T > getEntityGraph ( String s ) { <END_BUG> long start = 0 ; if ( isTraceEnabled ) start = System . currentTimeMillis ( ) ; try { return getEntityManager ( ) . getEntityGraph ( s ) ; } finally { if ( isTraceEnabled ) { long elapsed = ( System . currentTimeMillis ( ) ) - start ; ROOT_LOGGER . tracef ( "getEntityGraph<seq2seq4repair_space>%s<seq2seq4repair_space>took<seq2seq4repair_space>%dms" , s , elapsed ) ; } } } public < T > List < EntityGraph < ? super T > > getEntityGraphs ( Class < T > tClass ) { } public boolean isJoinedToTransaction ( ) { } protected void detachNonTxInvocation ( EntityManager underlyingEntityManager ) { } protected Query detachQueryNonTxInvocation ( EntityManager underlyingEntityManager , Query underLyingQuery ) { } protected TypedQuery detachTypedQueryNonTxInvocation ( EntityManager underlyingEntityManager , TypedQuery underLyingQuery ) { } private void transactionIsRequired ( ) { } private static String getLockModeAsString ( LockModeType lockMode ) { } }

Fix:
public EntityGraph < ? > getEntityGraph ( String s ) {