You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
SELECT*FROM stock_6701t WHERE turnover =10000000::numericSELECT*FROM stock_6701t WHERE turnover <10000000::numericSELECT*FROM stock_6701t WHERE turnover >10000000::numericSELECT*FROM stock_6701t WHERE turnover <=10000000::numericSELECT*FROM stock_6701t WHERE turnover >=10000000::numeric
対象のテーブル
Table "public.stock_6701t"
Column | Type | Modifiers
----------+---------+-----------
date | date | not null
startp | money | not null
highp | money | not null
lowp | money | not null
endp | money | not null
turnover | numeric |
totalp | money |
Indexes:
"stock_6701t_pkey" PRIMARY KEY, btree (date)
エラーメッセージ ("="の場合)
ERROR: PG-Strom: OpenCL execution error (build program failure)
#ifndef PG_BYTEA_TYPE_DEFINED
STROMCL_VARLENA_TYPE_TEMPLATE(bytea)
#endif
#ifndef PG_BOOL_TYPE_DEFINED
STROMCL_SIMPLE_TYPE_TEMPLATE(bool,cl_bool)
#endif
#ifndef PG_NUMERIC_TYPE_DEFINED
STROMCL_VARLENA_TYPE_TEMPLATE(numeric)
#endif
#define KPARAM_0 pg_bytea_param(kparams,errcode,0)
#define KPARAM_1 pg_numeric_param(kparams,errcode,1)
#define KVAR_0 pg_numeric_vref(kcs,toast,errcode,0,kcs_index)
static pg_bool_t
gpuscan_qual_eval(__private cl_int *errcode,
__global kern_gpuscan *kgscan,
__global kern_column_store *kcs,
__global kern_toastbuf *toast,
size_t kcs_index)
{
__global kern_parambuf *kparams
= KERN_GPUSCAN_PARAMBUF(kgscan);
return pgfn_numeric_eq(errcode, KVAR_0, KPARAM_1);
}
DETAIL: Compilation started
5:1890:10: error: implicit declaration of function 'pgfn_numeric_eq' is invalid in OpenCL
5:1890:10: note: did you mean 'pg_numeric_vref'?
5:1873:1: note: 'pg_numeric_vref' declared here
5:918:2: note: expanded from macro 'STROMCL_VARLENA_TYPE_TEMPLATE'
5:884:2: note: expanded from macro 'STROMCL_VARLENA_VARREF_TEMPLATE'
<scratch space>:79:1: note: expanded from macro 'pg_'
5:1890:10: error: returning 'int' from a function with incompatible result type 'pg_bool_t'
Compilation failed
以下のSQL文では、正しい結果が表示されます。
SELECT*FROM stock_6701t WHERE turnover -10000000::numeric>0::numeric
The text was updated successfully, but these errors were encountered:
最新版のコードで、WHERE句にnumeric型のカラムに対する比較演算を記述すると、コンパイルエラーとなることがあります。
以下のSQL文では、正しい結果が表示されます。
The text was updated successfully, but these errors were encountered: