[jira] [Updated] (IGNITE-3608) QuerySqlFunction methods with Object type var args do not work
[ https://issues.apache.org/jira/browse/IGNITE-3608?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Edward Kaganovich updated IGNITE-3608: -- Description: We often use interactive sql consoles to query caches. Several field values as well as _key in caches are stored as objects. To support queries by these fields we have registered a generic UDF that should let us instantiate certain types: {code} @QuerySqlFunction public static Object t(String clz, Object... ctorArgs) throwsException { Class c = Class.forName(keyClz); Class[] argTypes = new Class[ctorArgs.length]; for (int i=0; i < ctorArgs.length; i++) { argTypes[i] = ctorArgs[i].getClass(); } Constructor ctor = c.getConstructor(argTypes); return ctor.newInstance(ctorArgs); } {code} Unfortunately Ignite fails to find and execute this function for the following SQL: {color:blue}select t('java.lang.String', 'key20'){color}{color:red} <- Fails{color} However, there is no problems with this function: {code} @QuerySqlFunction public static Object t1(String clz, String... ctorArgs) throws Exception { return t(clz, ctorArgs); } {code} {color:blue}select t1('java.lang.String', 'key20'){color}{color:green} <- Works as expected{color} was: We often use interactive sql consoles to query caches. Several field values as well as _key in caches are stored as objects. To support queries by these fields we have registered a generic UDF that should let us instantiate certain types: {code} @QuerySqlFunction Object t(String clz, Object... ctorArgs) throws Exception { Class c = Class.forName(keyClz); Class[] argTypes = new Class[ctorArgs.length]; for (int i=0; i < ctorArgs.length; i++) { argTypes[i] = ctorArgs[i].getClass(); } Constructor ctor = c.getConstructor(argTypes); return ctor.newInstance(ctorArgs); } {code} Unfortunately Ignite fails to find and execute this function for the following SQL: {color:blue}select t('java.lang.String', 'key20')){color}{color:red} <- Fails{color} However, there is no problems with this function: {code} @QuerySqlFunction public static Object t1(String clz, String... ctorArgs) throws Exception { return t(clz, ctorArgs); } {code} {color:blue}select t1('java.lang.String', 'key20')){color}{color:green} <- Works as expected{color} > QuerySqlFunction methods with Object type var args do not work > -- > > Key: IGNITE-3608 > URL: https://issues.apache.org/jira/browse/IGNITE-3608 > Project: Ignite > Issue Type: Bug > Components: cache, SQL >Affects Versions: 1.5.0.final, 1.6 >Reporter: Edward Kaganovich > Labels: SQL, UDF > > We often use interactive sql consoles to query caches. Several field values > as well as _key in caches are stored as objects. To support queries by these > fields we have registered a generic UDF that should let us instantiate > certain types: > {code} @QuerySqlFunction > public static Object t(String clz, Object... ctorArgs) throws > Exception { > Class c = Class.forName(keyClz); > Class[] argTypes = new Class[ctorArgs.length]; > for (int i=0; i < ctorArgs.length; i++) { > argTypes[i] = ctorArgs[i].getClass(); > } > Constructor ctor = c.getConstructor(argTypes); > return ctor.newInstance(ctorArgs); > } > {code} > Unfortunately Ignite fails to find and execute this function for the > following SQL: > {color:blue}select t('java.lang.String', 'key20'){color}{color:red} <- > Fails{color} > However, there is no problems with this function: > {code} @QuerySqlFunction > public static Object t1(String clz, String... ctorArgs) throws Exception > { > return t(clz, ctorArgs); > } > {code} > {color:blue}select t1('java.lang.String', 'key20'){color}{color:green} <- > Works as expected{color} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Created] (IGNITE-3608) QuerySqlFunction methods with Object type var args do not work
Edward Kaganovich created IGNITE-3608: - Summary: QuerySqlFunction methods with Object type var args do not work Key: IGNITE-3608 URL: https://issues.apache.org/jira/browse/IGNITE-3608 Project: Ignite Issue Type: Bug Components: cache, SQL Affects Versions: 1.6, 1.5.0.final Reporter: Edward Kaganovich We often use interactive sql consoles to query caches. Several field values as well as _key in caches are stored as objects. To support queries by these fields we have registered a generic UDF that should let us instantiate certain types: {code} @QuerySqlFunction Object t(String clz, Object... ctorArgs) throws Exception { Class c = Class.forName(keyClz); Class[] argTypes = new Class[ctorArgs.length]; for (int i=0; i < ctorArgs.length; i++) { argTypes[i] = ctorArgs[i].getClass(); } Constructor ctor = c.getConstructor(argTypes); return ctor.newInstance(ctorArgs); } {code} Unfortunately Ignite fails to find and execute this function for the following SQL: {color:blue}select t('java.lang.String', 'key20')){color}{color:red} <- Fails{color} However, there is no problems with this function: {code} @QuerySqlFunction public static Object t1(String clz, String... ctorArgs) throws Exception { return t(clz, ctorArgs); } {code} {color:blue}select t1('java.lang.String', 'key20')){color}{color:green} <- Works as expected{color} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Resolved] (IGNITE-3952) IgniteSpringBean.reentrantLock() method incorrectly flips create and fair flags when calling kernel delegate.
[ https://issues.apache.org/jira/browse/IGNITE-3952?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Edward Kaganovich resolved IGNITE-3952. --- Resolution: Duplicate duplicate submission - closing > IgniteSpringBean.reentrantLock() method incorrectly flips create and fair > flags when calling kernel delegate. > - > > Key: IGNITE-3952 > URL: https://issues.apache.org/jira/browse/IGNITE-3952 > Project: Ignite > Issue Type: Bug > Components: data structures >Affects Versions: 1.7 >Reporter: Edward Kaganovich > Labels: easyfix > > {code:title=IgniteSpringBean.java|borderStyle=solid}{code} > @Nullable @Override public IgniteLock reentrantLock(String name, > boolean failoverSafe,{color:green}boolean fair, boolean create > {color}) { >checkIgnite(); >return g.reentrantLock(name, failoverSafe, {color:red}create, > fair{color}); > } -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Created] (IGNITE-3952) IgniteSpringBean.reentrantLock() method incorrectly flips create and fair flags when calling kernel delegate.
Edward Kaganovich created IGNITE-3952: - Summary: IgniteSpringBean.reentrantLock() method incorrectly flips create and fair flags when calling kernel delegate. Key: IGNITE-3952 URL: https://issues.apache.org/jira/browse/IGNITE-3952 Project: Ignite Issue Type: Bug Components: data structures Affects Versions: 1.7 Reporter: Edward Kaganovich {code:title=IgniteSpringBean.java|borderStyle=solid}{code} @Nullable @Override public IgniteLock reentrantLock(String name, boolean failoverSafe,{color:green}boolean fair, boolean create {color}) { checkIgnite(); return g.reentrantLock(name, failoverSafe, {color:red}create, fair{color}); } -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Created] (IGNITE-3951) IgniteSpringBean.reentrantLock() method incorrectly flips create and fair flags when calling kernel delegate.
Edward Kaganovich created IGNITE-3951: - Summary: IgniteSpringBean.reentrantLock() method incorrectly flips create and fair flags when calling kernel delegate. Key: IGNITE-3951 URL: https://issues.apache.org/jira/browse/IGNITE-3951 Project: Ignite Issue Type: Bug Components: data structures Affects Versions: 1.7 Reporter: Edward Kaganovich {code:title=IgniteSpringBean.java|borderStyle=solid}{code} @Nullable @Override public IgniteLock reentrantLock(String name, boolean failoverSafe,{color:green}boolean fair, boolean create {color}) { checkIgnite(); return g.reentrantLock(name, failoverSafe, {color:red}create, fair{color}); } -- This message was sent by Atlassian JIRA (v6.3.4#6332)