Groovy SQL nekontroluje časový limit, to je na vašem ovladači (ve vašem případě Oracle). Pokud chcete u dotazu nastavit časový limit, podívejte se na tuto odpověď .
Pokud chcete nastavení úrovně připojení (abyste mohli znovu použít objekt Sql pro více dotazů s časovým limitem aplikovaným na každý), musíte nastavit své vlastní připojení a předat jej fasádě Sql společnosti Groovy. Takhle
def dev_env = [
url:"jdbc:oracle:thin:@//aguat:1521/orcl",
user:"ricky",
password:"ricky",
driver:"oracle.jdbc.OracleDriver"
]
Class.forName(dev_env['driver'])
def conn = DriverManager.getConnection(dev_env['url'], dev_env['user'],dev_env['password'])
conn.setNetworkTimeout(null, 10000)
def sql = new Sql(conn)
Všimněte si setNetworkTimeout()
metoda byla přidána v Javě 7. Pokud používáte starší verzi Javy, podívejte se na tento odpověď
(můžete použít "oracle.jdbc.OracleDriver"
místo OracleConnection.CONNECTION_PROPERTY_THIN_NET_CONNECT_TIMEOUT
pole, které odpověď uvádí, zda se chcete vyhnout závislosti na kompilaci na jarech Oracle).
Opět, protože Groovy's Sql nemění ani neřídí žádná nastavení připojení, výchozí časový limit bude stejný jako výchozí pro ovladač Oracle.