greenplumn gp_id 源码
greenplumn gp_id 代码
文件路径:/src/include/catalog/gp_id.h
/*-------------------------------------------------------------------------
*
* gp_id.h
* definition of the system "database identifier" relation (gp_dbid)
* along with the relation's initial contents.
*
* Portions Copyright (c) 2009-2010, Greenplum inc
* Portions Copyright (c) 2012-Present VMware, Inc. or its affiliates.
*
*
* IDENTIFICATION
* src/include/catalog/gp_id.h
*
* NOTES
* Historically this table was used to supply every segment with its
* identification information. However in the 4.0 release when the file
* replication feature was added it could no longer serve this purpose
* because it became a requirement for all tables to have the same physical
* contents on both the primary and mirror segments. To resolve this the
* information is now passed to each segment on startup based on the
* gp_segment_configuration (stored on the master only), and each segment
* has a file in its datadirectory (gp_dbid) that uniquely identifies the
* segment.
*
* The contents of the table are now irrelevant, with the exception that
* several tools began relying on this table for use as a method of remote
* function invocation via gp_dist_random('gp_id') due to the fact that this
* table was guaranteed of having exactly one row on every segment. The
* contents of the row have no defined meaning, but this property is still
* relied upon.
*/
#ifndef _GP_ID_H_
#define _GP_ID_H_
#include "catalog/genbki.h"
#include "catalog/gp_id_d.h"
/*
* Defines for gp_id table
*/
CATALOG(gp_id,5101,GpIdRelationId) BKI_SHARED_RELATION
{
NameData gpname;
int16 numsegments;
int16 dbid;
int16 content;
} FormData_gp_id;
/* no foreign keys */
/*
* The contract of the gp_id table is that it must have exactly one row on
* every segment. The contents of the row do not matter.
*/
#endif /*_GP_ID_H_*/
相关信息
相关文章
0
赞
热门推荐
-
2、 - 优质文章
-
3、 gate.io
-
8、 golang
-
9、 openharmony
-
10、 Vue中input框自动聚焦