클래스를 고려하십시오. {id, name, age} 세 개의 속성이있는 Person id는 이름 || age로 구성됩니다. 나오는 get 쿼리는 repository.findByNameAndAge("abc", "23")
반환의 원인이 다른 트랜잭션 통화에서하지만 그 기록은 그렇지 않은 생성되고있는 동일한 트랜잭션에서동일한 트랜잭션 내의 Id 열에 대해서만 쿼리를 수행하십시오.
@Transactional
public void test(String id,String id2) {
personService.save(new Person("abc","123"));
Person person = repository.findByNameAndAge("abc", "23"); //doesn't work in same transaction
//however find by Id column works in same transaction works
repository.findOne("abc||23")
}
(레코드가 작성된 동일한 트랜잭션에서) 아이디 만하고있다 결과를 반환하십시오.
여기 저장소는이 알려진 문제,
public interface PersonRepository extends GemfireRepository<RecordRevision, String> {
List<Person> findByNameAndAge(String name, String age);
지역은 REPLICATE_PERSISTENT하고 내가 호출도 동일한 트랜잭션에서 작동합니다 PDX 직렬화 을 사용하고있다?