Хранимая хранимая процедура, возвращающая одно и то же значение для нескольких вызовов - PullRequest
0 голосов
/ 14 ноября 2011

У меня есть хранимая процедура, которая возвращает мне более одного набора результатов. Выходные данные различаются для разных входов хранимой процедуры.

Когда я вызываю хранимую процедуру отдельно (2 запуска) с разными входами, она возвращается, как и ожидалось.

Когда я вызываю их дважды с помощью одного и того же метода, он возвращает одно и то же значение.

@NamedNativeQuery(
              name = "getFees",
              query = "call SCHEMA1.RES_FEES(:id,:type,:orig,:dest)",
              resultClass = Fees.class)

Например: id = 1, type = "R", orig = "Vegas" dest = "London", возвращается 100 долларов для id = 2, type = "V", orig = "London" dest = "Vegas" возвращается $ 90

Когда я выполняю SP с ip1 отдельно, он возвращает $ 100 Когда я выполняю SP с ip2 отдельно, он возвращает $ 90

Но когда я выполняю SP дважды, используя один и тот же метод в JAVA с разными наборами ввода, он возвращает $ 100 дважды.

В чем может быть проблема?

1 Ответ

0 голосов
/ 14 ноября 2011

Странная проблема.Вот несколько предложений и тестов, которые вы можете сделать для устранения проблемы.

  1. Включите журнал запросов в режиме гибернации и посмотрите, есть ли какие-то ненормальные вещи.
  2. Проверьте, используете ли вы кеширование второго уровня в своем приложении.Если да, отключите его и снова запустите тест, чтобы увидеть, есть ли проблемы с кэшированием.
...