⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gdk_relop.c

📁 这个是内存数据库中的一个管理工具
💻 C
📖 第 1 页 / 共 5 页
字号:
	Tlngput(bn, BUNtloc(bn, dst));#line 566 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"		dst += zz;	}	ret = bn;      goto bunins_failed;      bunins_failed:	bn->batBuns->free = dst - bn->batBuns->base;	BATsetcount(bn,bn->batBuns->free/zz);	if (!ret)		BBPreclaim(bn);	return ret;}static BAT *defaultfetchjoin_chr_lng(BAT *bn, BAT *l, BAT *r){	BUN l_cur, l_end, r_cur, dst;	ssize_t offset;	size_t xx, yy, base, end;	int zz;	BAT *ret = NULL;	zz = BUNsize(bn);	dst = BUNfirst(bn);	base = BUNindex(r, BUNfirst(r));	offset = (ssize_t) (base - r->hseqbase);	end = base + BATcount(r);	BATmmap_pin(r);	ALGODEBUG THRprintf(GDKout, "#BATfetchjoin: defaultfetchjoin(chr,lng);\n");	BATloopFast(l, l_cur, l_end, xx) {		yy = offset + *(oid *) BUNtail(l, l_cur);		if (yy < base || yy >= end) {			continue;		}		r_cur = BUNptr(r, yy);		#line 510 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"	Hchrput(bn, BUNhloc(bn, dst));	Tlngput(bn, BUNtloc(bn, dst));#line 604 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"		dst += zz;	}	BATmmap_unpin(r);	ret = bn;      goto bunins_failed;      bunins_failed:	BATmmap_unpin(r);	bn->batBuns->free = dst - bn->batBuns->base;	BATsetcount(bn,bn->batBuns->free/zz);	if (!ret)		BBPreclaim(bn);	return ret;}#line 624 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"	#line 514 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"static BAT *densefetchjoin_chr_VATOM(BAT *bn, BAT *l, BAT *r){	BUN l_cur, l_end, r_cur, dst;	ssize_t offset;	size_t base, xx;	int yy, zz;	BAT *ret = NULL;	zz = BUNsize(bn);	yy = BUNsize(r);	dst = BUNfirst(bn);	base = BUNindex(r, BUNfirst(r));	offset = (ssize_t) (base - r->hseqbase);	r_cur = BUNptr(r, offset + *(oid *) BUNtail(l, BUNfirst(l)));	ALGODEBUG THRprintf(GDKout, "#BATfetchjoin: densefetchjoin(chr,VATOM);\n");	BATloopFast(l, l_cur, l_end, xx) {		#line 510 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"	Hchrput(bn, BUNhloc(bn, dst));	TVATOMput(bn, BUNtloc(bn, dst));#line 533 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"		r_cur += yy;		dst += zz;	}	ret = bn;      goto bunins_failed;      bunins_failed: 	bn->batBuns->free = dst - bn->batBuns->base;	BATsetcount(bn,bn->batBuns->free/zz);	if (!ret)		BBPreclaim(bn);	return ret;}static BAT *orderedfetchjoin_chr_VATOM(BAT *bn, BAT *l, BAT *r){	BUN l_cur, l_end, r_cur, dst;	ssize_t offset;	size_t base, xx, yy;	int zz;	BAT *ret = NULL;	zz = BUNsize(bn);	dst = BUNfirst(bn);	base = BUNindex(r, BUNfirst(r));	offset = (ssize_t) (base - r->hseqbase);	ALGODEBUG THRprintf(GDKout, "#BATfetchjoin: orderedfetchjoin(chr,VATOM);\n");	BATloopFast(l, l_cur, l_end, xx) {		yy = offset + *(oid *) BUNtail(l, l_cur);		r_cur = BUNptr(r, yy);		#line 510 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"	Hchrput(bn, BUNhloc(bn, dst));	TVATOMput(bn, BUNtloc(bn, dst));#line 566 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"		dst += zz;	}	ret = bn;      goto bunins_failed;      bunins_failed:	bn->batBuns->free = dst - bn->batBuns->base;	BATsetcount(bn,bn->batBuns->free/zz);	if (!ret)		BBPreclaim(bn);	return ret;}static BAT *defaultfetchjoin_chr_VATOM(BAT *bn, BAT *l, BAT *r){	BUN l_cur, l_end, r_cur, dst;	ssize_t offset;	size_t xx, yy, base, end;	int zz;	BAT *ret = NULL;	zz = BUNsize(bn);	dst = BUNfirst(bn);	base = BUNindex(r, BUNfirst(r));	offset = (ssize_t) (base - r->hseqbase);	end = base + BATcount(r);	BATmmap_pin(r);	ALGODEBUG THRprintf(GDKout, "#BATfetchjoin: defaultfetchjoin(chr,VATOM);\n");	BATloopFast(l, l_cur, l_end, xx) {		yy = offset + *(oid *) BUNtail(l, l_cur);		if (yy < base || yy >= end) {			continue;		}		r_cur = BUNptr(r, yy);		#line 510 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"	Hchrput(bn, BUNhloc(bn, dst));	TVATOMput(bn, BUNtloc(bn, dst));#line 604 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"		dst += zz;	}	BATmmap_unpin(r);	ret = bn;      goto bunins_failed;      bunins_failed:	BATmmap_unpin(r);	bn->batBuns->free = dst - bn->batBuns->base;	BATsetcount(bn,bn->batBuns->free/zz);	if (!ret)		BBPreclaim(bn);	return ret;}#line 625 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"	#line 514 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"static BAT *densefetchjoin_chr_LATOM(BAT *bn, BAT *l, BAT *r){	BUN l_cur, l_end, r_cur, dst;	ssize_t offset;	size_t base, xx;	int yy, zz;	BAT *ret = NULL;	zz = BUNsize(bn);	yy = BUNsize(r);	dst = BUNfirst(bn);	base = BUNindex(r, BUNfirst(r));	offset = (ssize_t) (base - r->hseqbase);	r_cur = BUNptr(r, offset + *(oid *) BUNtail(l, BUNfirst(l)));	ALGODEBUG THRprintf(GDKout, "#BATfetchjoin: densefetchjoin(chr,LATOM);\n");	BATloopFast(l, l_cur, l_end, xx) {		#line 510 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"	Hchrput(bn, BUNhloc(bn, dst));	TLATOMput(bn, BUNtloc(bn, dst));#line 533 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"		r_cur += yy;		dst += zz;	}	ret = bn;      goto bunins_failed;      bunins_failed: 	bn->batBuns->free = dst - bn->batBuns->base;	BATsetcount(bn,bn->batBuns->free/zz);	if (!ret)		BBPreclaim(bn);	return ret;}static BAT *orderedfetchjoin_chr_LATOM(BAT *bn, BAT *l, BAT *r){	BUN l_cur, l_end, r_cur, dst;	ssize_t offset;	size_t base, xx, yy;	int zz;	BAT *ret = NULL;	zz = BUNsize(bn);	dst = BUNfirst(bn);	base = BUNindex(r, BUNfirst(r));	offset = (ssize_t) (base - r->hseqbase);	ALGODEBUG THRprintf(GDKout, "#BATfetchjoin: orderedfetchjoin(chr,LATOM);\n");	BATloopFast(l, l_cur, l_end, xx) {		yy = offset + *(oid *) BUNtail(l, l_cur);		r_cur = BUNptr(r, yy);		#line 510 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"	Hchrput(bn, BUNhloc(bn, dst));	TLATOMput(bn, BUNtloc(bn, dst));#line 566 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"		dst += zz;	}	ret = bn;      goto bunins_failed;      bunins_failed:	bn->batBuns->free = dst - bn->batBuns->base;	BATsetcount(bn,bn->batBuns->free/zz);	if (!ret)		BBPreclaim(bn);	return ret;}static BAT *defaultfetchjoin_chr_LATOM(BAT *bn, BAT *l, BAT *r){	BUN l_cur, l_end, r_cur, dst;	ssize_t offset;	size_t xx, yy, base, end;	int zz;	BAT *ret = NULL;	zz = BUNsize(bn);	dst = BUNfirst(bn);	base = BUNindex(r, BUNfirst(r));	offset = (ssize_t) (base - r->hseqbase);	end = base + BATcount(r);	BATmmap_pin(r);	ALGODEBUG THRprintf(GDKout, "#BATfetchjoin: defaultfetchjoin(chr,LATOM);\n");	BATloopFast(l, l_cur, l_end, xx) {		yy = offset + *(oid *) BUNtail(l, l_cur);		if (yy < base || yy >= end) {			continue;		}		r_cur = BUNptr(r, yy);		#line 510 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"	Hchrput(bn, BUNhloc(bn, dst));	TLATOMput(bn, BUNtloc(bn, dst));#line 604 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"		dst += zz;	}	BATmmap_unpin(r);	ret = bn;      goto bunins_failed;      bunins_failed:	BATmmap_unpin(r);	bn->batBuns->free = dst - bn->batBuns->base;	BATsetcount(bn,bn->batBuns->free/zz);	if (!ret)		BBPreclaim(bn);	return ret;}#line 626 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"#line 628 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"#line 620 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"	#line 514 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"static BAT *densefetchjoin_bte_chr(BAT *bn, BAT *l, BAT *r){	BUN l_cur, l_end, r_cur, dst;	ssize_t offset;	size_t base, xx;	int yy, zz;	BAT *ret = NULL;	zz = BUNsize(bn);	yy = BUNsize(r);	dst = BUNfirst(bn);	base = BUNindex(r, BUNfirst(r));	offset = (ssize_t) (base - r->hseqbase);	r_cur = BUNptr(r, offset + *(oid *) BUNtail(l, BUNfirst(l)));	ALGODEBUG THRprintf(GDKout, "#BATfetchjoin: densefetchjoin(bte,chr);\n");	BATloopFast(l, l_cur, l_end, xx) {		#line 510 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"	Hbteput(bn, BUNhloc(bn, dst));	Tchrput(bn, BUNtloc(bn, dst));#line 533 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"		r_cur += yy;		dst += zz;	}	ret = bn;      goto bunins_failed;      bunins_failed: 	bn->batBuns->free = dst - bn->batBuns->base;	BATsetcount(bn,bn->batBuns->free/zz);	if (!ret)		BBPreclaim(bn);	return ret;}static BAT *orderedfetchjoin_bte_chr(BAT *bn, BAT *l, BAT *r){	BUN l_cur, l_end, r_cur, dst;	ssize_t offset;	size_t base, xx, yy;	int zz;	BAT *ret = NULL;	zz = BUNsize(bn);	dst = BUNfirst(bn);	base = BUNindex(r, BUNfirst(r));	offset = (ssize_t) (base - r->hseqbase);	ALGODEBUG THRprintf(GDKout, "#BATfetchjoin: orderedfetchjoin(bte,chr);\n");	BATloopFast(l, l_cur, l_end, xx) {		yy = offset + *(oid *) BUNtail(l, l_cur);		r_cur = BUNptr(r, yy);		#line 510 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"	Hbteput(bn, BUNhloc(bn, dst));	Tchrput(bn, BUNtloc(bn, dst));#line 566 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"		dst += zz;	}	ret = bn;      goto bunins_failed;      bunins_failed:	bn->batBuns->free = dst - bn->batBuns->base;	BATsetcount(bn,bn->batBuns->free/zz);	if (!ret)		BBPreclaim(bn);	return ret;}static BAT *defaultfetchjoin_bte_chr(BAT *bn, BAT *l, BAT *r){	BUN l_cur, l_end, r_cur, dst;	ssize_t offset;	size_t xx, yy, base, end;	int zz;	BAT *ret = NULL;	zz = BUNsize(bn);	dst = BUNfirst(bn);	base = BUNindex(r, BUNfirst(r));	offset = (ssize_t) (base - r->hseqbase);	end = base + BATcount(r);	BATmmap_pin(r);	ALGODEBUG THRprintf(GDKout, "#BATfetchjoin: defaultfetchjoin(bte,chr);\n");	BATloopFast(l, l_cur, l_end, xx) {		yy = offset + *(oid *) BUNtail(l, l_cur);		if (yy < base || yy >= end) {			continue;		}		r_cur = BUNptr(r, yy);		#line 510 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"	Hbteput(bn, BUNhloc(bn, dst));	Tchrput(bn, BUNtloc(bn, dst));#line 604 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"		dst += zz;	}	BATmmap_unpin(r);	ret = bn;      goto bunins_failed;      bunins_failed:	BATmmap_unpin(r);	bn->batBuns->free = dst - bn->batBuns->base;	BATsetcount(bn,bn->batBuns->free/zz);	if (!ret)		BBPreclaim(bn);	return ret;}#line 620 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"	#line 514 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"static BAT *densefetchjoin_bte_bte(BAT *bn, BAT *l, BAT *r){	BUN l_cur, l_end, r_cur, dst;	ssize_t offset;	size_t base, xx;	int yy, zz;	BAT *ret = NULL;	zz = BUNsize(bn);	yy = BUNsize(r);	dst = BUNfirst(bn);	base = BUNindex(r, BUNfirst(r));	offset = (ssize_t) (base - r->hseqbase);	r_cur = BUNptr(r, offset + *(oid *) BUNtail(l, BUNfirst(l)));	ALGODEBUG THRprintf(GDKout, "#BATfetchjoin: densefetchjoin(bte,bte);\n");	BATloopFast(l, l_cur, l_end, xx) {		#line 510 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB/src/gdk/gdk_relop.mx"	Hbteput(bn, BUNhloc(bn, dst));	Tbteput(bn, BUNtloc(bn, dst));#line 533 "/export/scratch0

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -