Repository: incubator-hawq
Updated Branches:
  refs/heads/master 875067d63 -> ae38cfbd6


http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/src/backend/optimizer/util/pathnode.c
----------------------------------------------------------------------
diff --git a/src/backend/optimizer/util/pathnode.c 
b/src/backend/optimizer/util/pathnode.c
index bbb766c..2eca7ff 100644
--- a/src/backend/optimizer/util/pathnode.c
+++ b/src/backend/optimizer/util/pathnode.c
@@ -254,9 +254,6 @@ pathnode_walk_kids(Path            *path,
             case T_BitmapHeapScan:
                     v = pathnode_walk_node(((BitmapHeapPath 
*)path)->bitmapqual, walker, context);
                     break;
-                       case T_BitmapAppendOnlyScan:
-                                       v = 
pathnode_walk_node(((BitmapAppendOnlyPath *)path)->bitmapqual, walker, context);
-                                       break;
             case T_BitmapAnd:
                     v = pathnode_walk_list(((BitmapAndPath 
*)path)->bitmapquals, walker, context);
                     break;
@@ -1373,73 +1370,6 @@ create_bitmap_heap_path(PlannerInfo *root,
 }
 
 /*
- * create_bitmap_appendonly_path
- *       Creates a path node for a bitmap Append-Only row table scan.
- *
- * 'bitmapqual' is a tree of IndexPath, BitmapAndPath, and BitmapOrPath nodes.
- *
- * If this is a join inner indexscan path, 'outer_rel' is the outer relation,
- * and all the component IndexPaths should have been costed accordingly.
- *
- * NOTE: This is mostly the same as the create_bitmap_heap_path routine.
- */
-BitmapAppendOnlyPath *
-create_bitmap_appendonly_path(PlannerInfo *root,
-                                                         RelOptInfo *rel,
-                                                         Path *bitmapqual,
-                                                         RelOptInfo *outer_rel,
-                                                         bool isAORow)
-{
-       BitmapAppendOnlyPath *pathnode = makeNode(BitmapAppendOnlyPath);
-
-       pathnode->path.pathtype = T_BitmapAppendOnlyScan;
-       pathnode->path.parent = rel;
-       pathnode->path.pathkeys = NIL;          /* always unordered */
-
-    /* Distribution is same as the base table. */
-    pathnode->path.locus = cdbpathlocus_from_baserel(root, rel);
-    pathnode->path.motionHazard = false;
-    pathnode->path.rescannable = true;
-
-       pathnode->bitmapqual = bitmapqual;
-       pathnode->isjoininner = (outer_rel != NULL);
-       pathnode->isAORow = isAORow;
-
-       if (pathnode->isjoininner)
-       {
-               /*
-                * We must compute the estimated number of output rows for the
-                * indexscan.  This is less than rel->rows because of the 
additional
-                * selectivity of the join clauses.  We make use of the 
selectivity
-                * estimated for the bitmap to do this; this isn't really quite 
right
-                * since there may be restriction conditions not included in the
-                * bitmap ...
-                */
-               Cost            indexTotalCost;
-               Selectivity indexSelectivity;
-
-               cost_bitmap_tree_node(bitmapqual, &indexTotalCost, 
&indexSelectivity);
-               pathnode->rows = rel->tuples * indexSelectivity;
-               if (pathnode->rows > rel->rows)
-                       pathnode->rows = rel->rows;
-               /* Like costsize.c, force estimate to be at least one row */
-               pathnode->rows = clamp_row_est(pathnode->rows);
-       }
-       else
-       {
-               /*
-                * The number of rows is the same as the parent rel's estimate, 
since
-                * this isn't a join inner indexscan.
-                */
-               pathnode->rows = rel->rows;
-       }
-
-       cost_bitmap_appendonly_scan(&pathnode->path, root, rel, bitmapqual, 
outer_rel);
-
-       return pathnode;
-}
-
-/*
  * create_bitmap_and_path
  *       Creates a path node representing a BitmapAnd.
  */

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/src/backend/optimizer/util/walkers.c
----------------------------------------------------------------------
diff --git a/src/backend/optimizer/util/walkers.c 
b/src/backend/optimizer/util/walkers.c
index 90d58bc..6f1ee51 100644
--- a/src/backend/optimizer/util/walkers.c
+++ b/src/backend/optimizer/util/walkers.c
@@ -928,7 +928,6 @@ plan_tree_walker(Node *node,
                case T_DynamicTableScan:
                case T_ParquetScan:
                case T_BitmapHeapScan:
-               case T_BitmapAppendOnlyScan:
                case T_BitmapTableScan:
                case T_FunctionScan:
                case T_TableFunctionScan:

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/src/backend/tcop/utility.c
----------------------------------------------------------------------
diff --git a/src/backend/tcop/utility.c b/src/backend/tcop/utility.c
index ae42d6c..372d664 100644
--- a/src/backend/tcop/utility.c
+++ b/src/backend/tcop/utility.c
@@ -23,7 +23,6 @@
 #include "catalog/namespace.h"
 #include "catalog/toasting.h"
 #include "catalog/aoseg.h"
-#include "catalog/aoblkdir.h"
 #include "commands/alter.h"
 #include "commands/async.h"
 #include "commands/cluster.h"
@@ -944,13 +943,6 @@ ProcessUtility(Node *parsetree,
                                                        ((CreateStmt *) 
parsetree)->oidInfo.aosegIndexOid,
                                                        &(((CreateStmt *) 
parsetree)->oidInfo.aosegComptypeOid),
                                                        ((CreateStmt *) 
parsetree)->is_part_child);
-
-                                       if (((CreateStmt 
*)parsetree)->buildAoBlkdir)
-                                               
AlterTableCreateAoBlkdirTableWithOid(relOid,
-                                                       ((CreateStmt *) 
parsetree)->oidInfo.aoblkdirOid,
-                                                       ((CreateStmt *) 
parsetree)->oidInfo.aoblkdirIndexOid,
-                                                       &(((CreateStmt *) 
parsetree)->oidInfo.aoblkdirComptypeOid),
-                                                       ((CreateStmt 
*)parsetree)->is_part_child);
                                }
                                CommandCounterIncrement();
                                /*

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/src/backend/utils/misc/guc.c
----------------------------------------------------------------------
diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c
index cc3ece5..b75dcb0 100644
--- a/src/backend/utils/misc/guc.c
+++ b/src/backend/utils/misc/guc.c
@@ -100,7 +100,6 @@
 #include "cdb/cdbvars.h"
 #include "cdb/cdbdisp.h"
 #include "cdb/dispatcher.h"
-#include "cdb/cdbappendonlyblockdirectory.h"
 #include "cdb/cdbquerycontextdispatching.h"
 #include "cdb/memquota.h"
 #include "utils/vmem_tracker.h"
@@ -5971,27 +5970,6 @@ static struct config_int ConfigureNamesInt[] =
        },
 
        {
-               {"gp_blockdirectory_entry_min_range", PGC_USERSET, 
GP_ARRAY_TUNING,
-                gettext_noop("Minimal range in bytes one block directory entry 
covers."),
-                gettext_noop("Used to reduce the size of a block directory."),
-                GUC_NO_SHOW_ALL | GUC_NOT_IN_SAMPLE | GUC_GPDB_ADDOPT
-               },
-               &gp_blockdirectory_entry_min_range,
-               0, 0, INT_MAX, NULL, NULL
-       },
-
-       {
-               {"gp_blockdirectory_minipage_size", PGC_USERSET, 
GP_ARRAY_TUNING,
-                gettext_noop("Number of entries one row in a block directory 
table contains."),
-                gettext_noop("Use smaller value in non-bulk load cases."),
-                GUC_NO_SHOW_ALL | GUC_NOT_IN_SAMPLE | GUC_GPDB_ADDOPT
-               },
-               &gp_blockdirectory_minipage_size,
-               NUM_MINIPAGE_ENTRIES, 1, NUM_MINIPAGE_ENTRIES, NULL, NULL
-       },
-
-
-       {
                {"gp_segworker_relative_priority", PGC_POSTMASTER, 
RESOURCES_MGM,
                gettext_noop("Priority for the segworkers relative to the 
postmaster's priority."),
                NULL,

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/src/include/catalog/aoblkdir.h
----------------------------------------------------------------------
diff --git a/src/include/catalog/aoblkdir.h b/src/include/catalog/aoblkdir.h
deleted file mode 100644
index 84356e5..0000000
--- a/src/include/catalog/aoblkdir.h
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-/*-------------------------------------------------------------------------
- *
- * aoblkdir.h
- *
- *   This file contains some definitions to support creation of aoblkdir 
tables.
- *
- *-------------------------------------------------------------------------
- */
-#ifndef AOBLKDIR_H
-#define AOBLKDIR_H
-
-/*
- * Macros to the attribute number for each attribute
- * in the block directory relation.
- */
-#define Natts_pg_aoblkdir              4
-#define Anum_pg_aoblkdir_segno         1
-#define Anum_pg_aoblkdir_columngroupno 2
-#define Anum_pg_aoblkdir_firstrownum   3
-#define Anum_pg_aoblkdir_minipage      4
-
-extern void AlterTableCreateAoBlkdirTable(Oid relOid);
-extern void AlterTableCreateAoBlkdirTableWithOid(
-       Oid relOid, Oid newOid, Oid newIndexOid,
-       Oid * comptypeOid, bool is_part_child);
-
-#endif

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/src/include/catalog/calico.pl
----------------------------------------------------------------------
diff --git a/src/include/catalog/calico.pl b/src/include/catalog/calico.pl
index 61bc137..28612b0 100755
--- a/src/include/catalog/calico.pl
+++ b/src/include/catalog/calico.pl
@@ -3519,8 +3519,6 @@ sub more_header
 #include "catalog/gp_segment_config.h"
 #include "catalog/gp_san_config.h"
 
-#include "catalog/gp_fastsequence.h"
-
 #include "catalog/gp_master_mirroring.h"
 #include "catalog/gp_persistent.h"
 #include "catalog/gp_global_sequence.h"
@@ -5075,7 +5073,6 @@ sub get_builtin_object_check_case_str()
 {
        my $str = "";
        my @clist = ("GpPolicyRelationId, FormData_gp_policy *, localoid",
-                                "FastSequenceRelationId, Form_gp_fastsequence, 
objid",
                                 "AggregateRelationId, Form_pg_aggregate, 
aggfnoid",
                                 "AccessMethodOperatorRelationId, Form_pg_amop, 
amopclaid",
                                 "AccessMethodProcedureRelationId, 
Form_pg_amproc, amopclaid",

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/src/include/catalog/gp_fastsequence.h
----------------------------------------------------------------------
diff --git a/src/include/catalog/gp_fastsequence.h 
b/src/include/catalog/gp_fastsequence.h
deleted file mode 100644
index a4733cd..0000000
--- a/src/include/catalog/gp_fastsequence.h
+++ /dev/null
@@ -1,137 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-/*-------------------------------------------------------------------------
- *
- * gp_fastsequence.h
- *    a table maintaining a light-weight fast sequence number for a unique
- *    object.
- *
- * $Id: $
- * $Change: $
- * $DateTime: $
- * $Author: $
- *-------------------------------------------------------------------------
- */
-#ifndef GP_FASTSEQUENCE_H
-#define GP_FASTSEQUENCE_H
-
-#include "catalog/genbki.h"
-#include "storage/itemptr.h"
-
-/*
- * gp_fastsequence definition
- */
-
-/* TIDYCAT_BEGINFAKEDEF
-
-   CREATE TABLE gp_fastsequence
-   with (camelcase=FastSequence, oid=false, relid=5043, reltype_oid=6453, 
content=SEGMENT_LOCAL)
-   (
-   objid   oid,
-   objmod  bigint,
-   last_sequence bigint
-   contentid   integer
-   );
-
-   create unique index on gp_fastsequence(objid, objmod, contentid) with 
(indexid=6067);
-
-   alter table gp_fastsequence add fk objid on pg_class(oid);
-
-   TIDYCAT_ENDFAKEDEF
-*/
-#define FastSequenceRelationId 5043
-
-CATALOG(gp_fastsequence,5043) BKI_WITHOUT_OIDS
-{
-       Oid                             objid;                          /* 
object oid */
-       int8                    objmod;                         /* object 
modifier */
-       int8                    last_sequence;      /* the last sequence number 
used by the object */
-       int4                    contentid;                      /* content id */
-} FormData_gp_fastsequence;
-
-
-/* ----------------
-*              Form_gp_fastsequence corresponds to a pointer to a tuple with
-*              the format of gp_fastsequence relation.
-* ----------------
-*/
-typedef FormData_gp_fastsequence *Form_gp_fastsequence;
-
-#define Natts_gp_fastsequence                          4
-#define Anum_gp_fastsequence_objid                     1
-#define Anum_gp_fastsequence_objmod         2
-#define Anum_gp_fastsequence_last_sequence     3
-#define Anum_gp_fastsequence_contentid         4
-
-#define NUM_FAST_SEQUENCES                                      100
-
-/* No initial content */
-
-/*
- * Insert a new light-weight fast sequence entry for a given object.
- *
- * The tid for the new entry is returned.
- */
-extern void InsertFastSequenceEntry(Oid objid, int64 objmod, int64 
lastSequence,
-               ItemPointer tid);
-
-/*
- * GetFastSequences
- *
- * Get a list of consecutive sequence numbers. The starting sequence
- * number is the maximal value between 'lastsequence' + 1 and minSequence.
- * The length of the list is given.
- *
- * If there is not such an entry for objid in the table, create
- * one here.
- *
- * The existing entry for objid in the table is updated with a new
- * lastsequence value.
- *
- * The tuple id value for this entry is copied out to 'tid'.
- */
-extern int64 GetFastSequences(Oid objid, int64 objmod,
-                                                         int64 minSequence, 
int64 numSequences,
-                                                         ItemPointer tid);
-
-/*
- * GetFastSequencesByTid
- *
- * Same as GetFastSequences, except that the tuple tid is given, and the tuple 
id
- * is not valid.
- */
-extern int64 GetFastSequencesByTid(ItemPointer tid,
-                                                                  int64 
minSequence,
-                                                                  int64 
numSequences);
-
-/*
- * RemoveFastSequenceEntry
- *
- * Remove all entries associated with the given object id.
- *
- * If the given objid is an invalid OID, this function simply
- * returns.
- *
- * If the given valid objid does not have an entry in
- * gp_fastsequence, this function errors out.
- */
-extern void RemoveFastSequenceEntry(Oid objid);
-
-#endif

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/src/include/catalog/indexing.h
----------------------------------------------------------------------
diff --git a/src/include/catalog/indexing.h b/src/include/catalog/indexing.h
index 73a69d1..f0d33e7 100644
--- a/src/include/catalog/indexing.h
+++ b/src/include/catalog/indexing.h
@@ -209,9 +209,6 @@ DECLARE_UNIQUE_INDEX(gp_policy_localoid_index, 6103, on 
gp_distribution_policy u
 DECLARE_UNIQUE_INDEX(pg_appendonly_relid_index, 5007, on pg_appendonly using 
btree(relid oid_ops));
 #define AppendOnlyRelidIndexId  5007
 
-DECLARE_UNIQUE_INDEX(gp_fastsequence_objid_objmod_contentid_index, 6067, on 
gp_fastsequence using btree(objid oid_ops, objmod  int8_ops, contentid 
int4_ops));
-#define FastSequenceObjidObjmodContentidIndexId 6067
-
 DECLARE_UNIQUE_INDEX(pg_appendonly_alter_column_relid_index, 5031, on 
pg_appendonly_alter_column using btree(relid oid_ops, changenum int4_ops));
 #define AppendOnlyAlterColumnRelidIndexId  5031
 

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/src/include/catalog/pg_tidycat.h
----------------------------------------------------------------------
diff --git a/src/include/catalog/pg_tidycat.h b/src/include/catalog/pg_tidycat.h
index 9f969c8..7d96d0c 100644
--- a/src/include/catalog/pg_tidycat.h
+++ b/src/include/catalog/pg_tidycat.h
@@ -27,7 +27,6 @@
 
 
 #include "catalog/gp_configuration.h"
-#include "catalog/gp_fastsequence.h"
 #include "catalog/gp_global_sequence.h"
 #include "catalog/gp_id.h"
 #include "catalog/gp_master_mirroring.h"

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/src/include/catalog/pg_type.h
----------------------------------------------------------------------
diff --git a/src/include/catalog/pg_type.h b/src/include/catalog/pg_type.h
index c356f14..4960bdb 100644
--- a/src/include/catalog/pg_type.h
+++ b/src/include/catalog/pg_type.h
@@ -721,9 +721,6 @@ DATA(insert OID = 6444 ( gp_san_configuration           
PGNSP PGUID -1 f c t \054 5035
 /* relation id: 5039 - gp_fault_strategy 20101104 */
 DATA(insert OID = 6443 ( gp_fault_strategy         PGNSP PGUID -1 f c t \054 
5039 0 record_in record_out record_recv record_send - d x f 0 -1 0 _null_ 
_null_ ));      
 #define GP_FAULT_STRATEGY_RELTYPE_OID 6443
-/* relation id: 5043 - gp_fastsequence 20101104 */
-DATA(insert OID = 6453 ( gp_fastsequence           PGNSP PGUID -1 f c t \054 
5043 0 record_in record_out record_recv record_send - d x f 0 -1 0 _null_ 
_null_ ));      
-#define GP_FASTSEQUENCE_RELTYPE_OID 6453
 /* relation id: 5096 - gp_global_sequence 20101104 */
 DATA(insert OID = 6995 ( gp_global_sequence        PGNSP PGUID -1 f c t \054 
5096 0 record_in record_out record_recv record_send - d x f 0 -1 0 _null_ 
_null_ ));      
 #define GP_GLOBAL_SEQUENCE_RELTYPE_OID 6995

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/src/include/cdb/cdbappendonlyam.h
----------------------------------------------------------------------
diff --git a/src/include/cdb/cdbappendonlyam.h 
b/src/include/cdb/cdbappendonlyam.h
index 8b984f3..5a6129a 100644
--- a/src/include/cdb/cdbappendonlyam.h
+++ b/src/include/cdb/cdbappendonlyam.h
@@ -56,7 +56,6 @@
 #include "cdb/cdbappendonlystoragelayer.h"
 #include "cdb/cdbappendonlystorageread.h"
 #include "cdb/cdbappendonlystoragewrite.h"
-#include "cdb/cdbappendonlyblockdirectory.h"
 
 #include "cdb/cdbquerycontextdispatching.h"
 
@@ -85,14 +84,11 @@ typedef struct AppendOnlyInsertDescData
        float8                  insertCount;
        float8                  varblockCount;
        int64           rowCount; /* total row count before insert */
-       int64           numSequences; /* total number of available sequences */
-       int64           lastSequence; /* last used sequence */
        BlockNumber             cur_segno;
        AppendOnlyEntry *aoEntry;
        FileSegInfo     *fsInfo;
        VarBlockMaker   varBlockMaker;
        int64                   bufferCount;
-       int64                   blockFirstRowNum;
        bool                    shouldCompress;
        bool                    usingChecksum;
        bool                    useNoToast;
@@ -122,10 +118,6 @@ typedef struct AppendOnlyInsertDescData
 
        uint8                   *nonCompressedData;
 
-       /* The block directory for the appendonly relation. */
-       AppendOnlyBlockDirectory blockDirectory;
-
-
        QueryContextDispatchingSendBack sendback;
 
 } AppendOnlyInsertDescData;
@@ -214,15 +206,6 @@ typedef struct AppendOnlyScanDescData
 
        AppendOnlyEntry         *aoEntry;
        
-       /*
-        * The block directory info.
-        *
-        * For AO tables that are upgraded from pre-3.4 release, the block 
directory 
-        * built during the first index creation.
-        */
-       bool buildBlockDirectory; /* Indicate whether to build block directory 
while scanning */
-       AppendOnlyBlockDirectory *blockDirectory;
-
        List *splits;
 
        bool toCloseFile;
@@ -230,90 +213,6 @@ typedef struct AppendOnlyScanDescData
 
 typedef AppendOnlyScanDescData *AppendOnlyScanDesc;
 
-/*
- * Statistics on the latest fetch.
- */
-typedef struct AppendOnlyFetchDetail
-{
-       int64           rangeFileOffset;
-       int64           rangeFirstRowNum;
-       int64           rangeAfterFileOffset;
-       int64           rangeLastRowNum;
-                                       /*
-                                        * The range covered by the Block 
Directory.
-                                        */
-       
-       int64           skipBlockCount;
-                                       /*
-                                        * Number of blocks skipped since the 
previous block processed in
-                                        * the range.
-                                        */
-       
-       int64           blockFileOffset;
-       int32           blockOverallLen;
-       int64           blockFirstRowNum;
-       int64           blockLastRowNum;
-       bool            isCompressed;
-       bool            isLargeContent;
-                                       /*
-                                        * The last block processed.
-                                        */
-
-} AppendOnlyFetchDetail;
-
-
-/*
- * Used for fetch individual tuples from specified by TID of append only 
relations 
- * using the AO Block Directory, BufferedRead and VarBlocks
- */
-typedef struct AppendOnlyFetchDescData
-{
-       Relation                relation;
-       Snapshot                appendOnlyMetaDataSnapshot;
-
-       MemoryContext   initContext;
-
-       AppendOnlyStorageAttributes     storageAttributes;
-       AppendOnlyStorageRead           storageRead;
-
-       char                                            *title;
-                               /*
-                                * A phrase that better describes the purpose 
of the this open.
-                                *
-                                * We manage the storage for this.
-                                */
-
-
-       int                             totalSegfiles;
-       FileSegInfo     **segmentFileInfo;
-
-       AppendOnlyEntry *aoEntry;
-
-       char                    *segmentFileName;
-       int                             segmentFileNameMaxLen;
-
-       int32                   usableBlockSize;
-
-       AppendOnlyBlockDirectory        blockDirectory;
-
-       AppendOnlyExecutorReadBlock executorReadBlock;
-
-       CurrentSegmentFile currentSegmentFile;
-       
-       int64           scanNextFileOffset;
-       int64           scanNextRowNum;
-
-       int64           scanAfterFileOffset;
-       int64           scanLastRowNum;
-
-       CurrentBlock currentBlock;
-
-       int64   skipBlockCount;
-
-}      AppendOnlyFetchDescData;
-
-typedef AppendOnlyFetchDescData *AppendOnlyFetchDesc;
-
 /* ----------------
  *             function prototypes for appendonly access method
  * ----------------
@@ -328,17 +227,6 @@ extern void appendonly_endscan(AppendOnlyScanDesc scan);
 extern MemTuple appendonly_getnext(AppendOnlyScanDesc scan, 
                                                                        
ScanDirection direction,
                                                                        
TupleTableSlot *slot);
-extern AppendOnlyFetchDesc appendonly_fetch_init(
-       Relation        relation,
-       Snapshot        appendOnlyMetaDataSnapshot);
-extern bool appendonly_fetch(
-       AppendOnlyFetchDesc aoFetchDesc,
-       AOTupleId *aoTid,
-       TupleTableSlot *slot);
-extern void appendonly_fetch_detail(
-       AppendOnlyFetchDesc aoFetchDesc, 
-       AppendOnlyFetchDetail *aoFetchDetail);
-extern void appendonly_fetch_finish(AppendOnlyFetchDesc aoFetchDesc);
 extern AppendOnlyInsertDesc appendonly_insert_init(Relation rel, 
ResultRelSegFileInfo *segfileinfo);
 extern void appendonly_insert(
                AppendOnlyInsertDesc aoInsertDesc, 

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/src/include/cdb/cdbappendonlyblockdirectory.h
----------------------------------------------------------------------
diff --git a/src/include/cdb/cdbappendonlyblockdirectory.h 
b/src/include/cdb/cdbappendonlyblockdirectory.h
deleted file mode 100644
index c85488c..0000000
--- a/src/include/cdb/cdbappendonlyblockdirectory.h
+++ /dev/null
@@ -1,210 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *   http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-/*------------------------------------------------------------------------------
- *
- * cdbappendonlyblockdirectory.h
- *
- * $Id: $
- * $Change: $
- * $DateTime: $
- * $Author: $
- 
*------------------------------------------------------------------------------
- */
-#ifndef APPENDONLYBLOCKDIRECTORY_H
-#define APPENDONLYBLOCKDIRECTORY_H
-
-#include "access/aosegfiles.h"
-#include "access/appendonlytid.h"
-#include "access/skey.h"
-
-extern int gp_blockdirectory_entry_min_range;
-extern int gp_blockdirectory_minipage_size;
-
-typedef struct AppendOnlyBlockDirectoryEntry
-{
-       /*
-        * The range of blocks covered by the Block Directory entry.
-        */
-       struct range
-       {
-               int64           fileOffset;
-               int64           firstRowNum;
-
-               int64           afterFileOffset;
-               int64           lastRowNum;
-       } range;
-
-} AppendOnlyBlockDirectoryEntry;
-
-/*
- * The entry in the minipage.
- */
-typedef struct MinipageEntry
-{
-       int64 firstRowNum;
-       int64 fileOffset;
-       int64 rowCount;
-} MinipageEntry;
-
-/*
- * Define a varlena type for a minipage.
- */
-typedef struct Minipage
-{
-       /* Total length. Must be the first. */
-       int32 _len;
-       int32 version;
-       uint32 nEntry;
-       
-       /* Varlena array */
-       MinipageEntry entry[1];
-} Minipage;
-
-/*
- * Define the relevant info for a minipage for each
- * column group.
- */
-typedef struct MinipagePerColumnGroup
-{
-       Minipage *minipage;
-       uint32 numMinipageEntries;
-       ItemPointerData tupleTid;
-} MinipagePerColumnGroup;
-
-/*
- * I don't know the ideal value here. But let us put approximate
- * 8 minipages per heap page.
- */
-#define NUM_MINIPAGE_ENTRIES (((MaxTupleSize)/8 - sizeof(HeapTupleHeaderData) 
- 64 * 3)\
-                                                         / 
sizeof(MinipageEntry))
-
-/*
- * Define a structure for the append-only relation block directory.
- */
-typedef struct AppendOnlyBlockDirectory
-{
-       Relation aoRel;
-       Snapshot appendOnlyMetaDataSnapshot;
-       Relation blkdirRel;
-       Relation blkdirIdx;
-       int numColumnGroups;
-       
-       MemoryContext memoryContext;
-       
-       int                             totalSegfiles;
-       FileSegInfo     **segmentFileInfo;
-
-       /*
-        * Current segment file number.
-        */
-       int currentSegmentFileNum;
-       FileSegInfo *currentSegmentFileInfo;
-
-       /*
-        * Last minipage that contains an array of MinipageEntries.
-        */
-       MinipagePerColumnGroup *minipages;
-
-       /*
-        * Some temporary space to help form tuples to be inserted into
-        * the block directory, and to help the index scan.
-        */
-       Datum *values;
-       bool *nulls;
-       int numScanKeys;
-       ScanKey scanKeys;
-       StrategyNumber *strategyNumbers;
-
-}      AppendOnlyBlockDirectory;
-
-
-typedef struct CurrentBlock
-{
-       AppendOnlyBlockDirectoryEntry blockDirectoryEntry;
-
-       bool have;
-
-       int64 fileOffset;
-       
-       int32 overallBlockLen;
-       
-       int64 firstRowNum;
-       int64 lastRowNum;
-       
-       bool isCompressed;
-       bool isLargeContent;
-       
-       bool            gotContents;
-} CurrentBlock;
-
-typedef struct CurrentSegmentFile
-{
-       bool isOpen;
-       
-       int num;
-       
-       int64 logicalEof;
-} CurrentSegmentFile;
-
-extern void AppendOnlyBlockDirectoryEntry_GetBeginRange(
-       AppendOnlyBlockDirectoryEntry   *directoryEntry,
-       int64                                                   *fileOffset,
-       int64                                                   *firstRowNum);
-extern void AppendOnlyBlockDirectoryEntry_GetEndRange(
-       AppendOnlyBlockDirectoryEntry   *directoryEntry,
-       int64                                                   
*afterFileOffset,
-       int64                                                   *lastRowNum);
-extern bool AppendOnlyBlockDirectoryEntry_RangeHasRow(
-       AppendOnlyBlockDirectoryEntry   *directoryEntry,
-       int64                                                   checkRowNum);
-extern bool AppendOnlyBlockDirectory_GetEntry(
-       AppendOnlyBlockDirectory                *blockDirectory,
-       AOTupleId                                               *aoTupleId,
-       int                             columnGroupNo,
-       AppendOnlyBlockDirectoryEntry   *directoryEntry);
-extern void AppendOnlyBlockDirectory_Init_forInsert(
-       AppendOnlyBlockDirectory *blockDirectory,
-       AppendOnlyEntry *aoEntry,
-       Snapshot appendOnlyMetaDataSnapshot,
-       FileSegInfo *segmentFileInfo,
-       int64 lastSequence,
-       Relation aoRel,
-       int segno,
-       int numColumnGroups);
-extern void AppendOnlyBlockDirectory_Init_forSearch(
-       AppendOnlyBlockDirectory *blockDirectory,
-       AppendOnlyEntry *aoEntry,
-       Snapshot appendOnlyMetaDataSnapshot,
-       FileSegInfo **segmentFileInfo,
-       int totalSegfiles,
-       Relation aoRel,
-       int numColumnGroups);
-extern bool AppendOnlyBlockDirectory_InsertEntry(
-       AppendOnlyBlockDirectory *blockDirectory,
-       int columnGroupNo,
-       int64 firstRowNum,
-       int64 fileOffset,
-       int64 rowCount);
-extern void AppendOnlyBlockDirectory_End_forInsert(
-       AppendOnlyBlockDirectory *blockDirectory);
-extern void AppendOnlyBlockDirectory_End_forSearch(
-       AppendOnlyBlockDirectory *blockDirectory);
-
-#endif

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/src/include/cdb/cdbappendonlystoragewrite.h
----------------------------------------------------------------------
diff --git a/src/include/cdb/cdbappendonlystoragewrite.h 
b/src/include/cdb/cdbappendonlystoragewrite.h
index 7c2edd5..cc8e111 100644
--- a/src/include/cdb/cdbappendonlystoragewrite.h
+++ b/src/include/cdb/cdbappendonlystoragewrite.h
@@ -120,16 +120,6 @@ typedef struct AppendOnlyStorageWrite
                         * The number of blocks written since the beginning of 
the segment file.
                         */
 
-       bool    isFirstRowNumSet;
-                       /*
-                        * When true, the first row number for the next block 
has
-                        * been explicitly set and will be stored in the 
Append-Only
-                        * Storage Header.
-                        */
-
-       int64   firstRowNum;
-                       /* Explicitly set first row number for the next block. 
*/
-
        int64   lastWriteBeginPosition;
                        /* The beginning of the write buffer for the last 
write. */
 
@@ -510,16 +500,6 @@ extern void AppendOnlyStorageWrite_Content(
  * new overhead length.
  */
 
-
-/*
- * Set the first row value for the next Append-Only Storage
- * Block to be written.  Only applies to the next block.
- */
-extern void AppendOnlyStorageWrite_SetFirstRowNum(
-       AppendOnlyStorageWrite          *storageWrite,
-       int64                                           firstRowNum);
-
-
 extern char *AppendOnlyStorageWrite_ContextStr(
        AppendOnlyStorageWrite          *storageWrite);
 

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/src/include/cdb/cdbquerycontextdispatching.h
----------------------------------------------------------------------
diff --git a/src/include/cdb/cdbquerycontextdispatching.h 
b/src/include/cdb/cdbquerycontextdispatching.h
index 0760925..815f21f 100644
--- a/src/include/cdb/cdbquerycontextdispatching.h
+++ b/src/include/cdb/cdbquerycontextdispatching.h
@@ -90,8 +90,6 @@ struct QueryContextDispatchingSendBackData
        int32 numfiles;
        int64 *eof;
        int64 *uncompressed_eof;
-
-       int64 nextFastSequence;
 };
 typedef struct QueryContextDispatchingSendBackData * 
QueryContextDispatchingSendBack;
 

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/src/include/executor/executor.h
----------------------------------------------------------------------
diff --git a/src/include/executor/executor.h b/src/include/executor/executor.h
index f1ce5aa..a6ff148 100644
--- a/src/include/executor/executor.h
+++ b/src/include/executor/executor.h
@@ -366,22 +366,6 @@ extern void BitmapHeapScanEnd(ScanState *scanState);
 extern void BitmapHeapScanReScan(ScanState *scanState);
 
 /*
- * prototypes from functions in execBitmapAOScan.c
- */
-extern TupleTableSlot *BitmapAOScanNext(ScanState *scanState);
-extern void BitmapAOScanBegin(ScanState *scanState);
-extern void BitmapAOScanEnd(ScanState *scanState);
-extern void BitmapAOScanReScan(ScanState *scanState);
-
-/*
- * prototypes from functions in execBitmapParquetScan.c
- */
-extern TupleTableSlot *BitmapParquetScanNext(ScanState *scanState);
-extern void BitmapParquetScanBegin(ScanState *scanState);
-extern void BitmapParquetScanEnd(ScanState *scanState);
-extern void BitmapParquetScanReScan(ScanState *scanState);
-
-/*
  * prototypes from functions in execBitmapTableScan.c
  */
 extern void initGpmonPktForBitmapTableScan(Plan *planNode, gpmon_packet_t 
*gpmon_pkt, EState *estate);

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/src/include/executor/nodeBitmapAppendOnlyscan.h
----------------------------------------------------------------------
diff --git a/src/include/executor/nodeBitmapAppendOnlyscan.h 
b/src/include/executor/nodeBitmapAppendOnlyscan.h
deleted file mode 100755
index 76a10ff..0000000
--- a/src/include/executor/nodeBitmapAppendOnlyscan.h
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-/*-------------------------------------------------------------------------
- *
- * nodeBitmapAppendOnlyscan.h
- *
- *
- * Portions Copyright (c) 1996-2008, PostgreSQL Global Development Group
- * Portions Copyright (c) 1994, Regents of the University of California
- * Portions Copyright (c) 2008-2009, Greenplum Inc.
- *
- *
- *-------------------------------------------------------------------------
- */
-#ifndef NODEBITMAPAPPENDONLYSCAN_H
-#define NODEBITMAPAPPENDONLYSCAN_H
-
-#include "nodes/execnodes.h"
-
-extern int     ExecCountSlotsBitmapAppendOnlyScan(BitmapAppendOnlyScan *node);
-extern BitmapAppendOnlyScanState 
*ExecInitBitmapAppendOnlyScan(BitmapAppendOnlyScan *node, EState *estate, int 
eflags);
-extern TupleTableSlot *ExecBitmapAppendOnlyScan(BitmapAppendOnlyScanState 
*node);
-extern void ExecEndBitmapAppendOnlyScan(BitmapAppendOnlyScanState *node);
-extern void ExecBitmapAppendOnlyReScan(BitmapAppendOnlyScanState *node, 
ExprContext *exprCtxt);
-extern void ExecEagerFreeBitmapAppendOnlyScan(BitmapAppendOnlyScanState *node);
-
-enum
-{
-       GPMON_BITMAPAPPENDONLYSCAN_PAGE = GPMON_QEXEC_M_NODE_START, 
-       GPMON_BITMAPAPPENDONLYSCAN_RESCAN,
-       GPMON_BITMAPAPPENDONLYSCAN_TOTAL
-};
-
-static inline gpmon_packet_t * 
GpmonPktFromBitmapAppendOnlyScanState(BitmapAppendOnlyScanState *node)
-{
-       return &node->ss.ps.gpmon_pkt;
-}
-
-#endif   /* NODEBITMAPAPPENDONLYSCAN_H */
-

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/src/include/nodes/nodes.h
----------------------------------------------------------------------
diff --git a/src/include/nodes/nodes.h b/src/include/nodes/nodes.h
index a31be24..a01aaa6 100644
--- a/src/include/nodes/nodes.h
+++ b/src/include/nodes/nodes.h
@@ -90,7 +90,6 @@ typedef enum NodeTag
        T_DynamicIndexScan,
        T_BitmapIndexScan,
        T_BitmapHeapScan,
-       T_BitmapAppendOnlyScan,
        T_BitmapTableScan,
        T_TidScan,
        T_SubqueryScan,
@@ -148,7 +147,6 @@ typedef enum NodeTag
        T_DynamicIndexScanState,
        T_BitmapIndexScanState,
        T_BitmapHeapScanState,
-       T_BitmapAppendOnlyScanState,
        T_BitmapTableScanState,
        T_TidScanState,
        T_SubqueryScanState,

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/src/include/optimizer/pathnode.h
----------------------------------------------------------------------
diff --git a/src/include/optimizer/pathnode.h b/src/include/optimizer/pathnode.h
index fce497e..2684291 100644
--- a/src/include/optimizer/pathnode.h
+++ b/src/include/optimizer/pathnode.h
@@ -77,11 +77,6 @@ extern BitmapHeapPath *create_bitmap_heap_path(PlannerInfo 
*root,
                                                RelOptInfo *rel,
                                                Path *bitmapqual,
                                                RelOptInfo *outer_rel);
-extern BitmapAppendOnlyPath *create_bitmap_appendonly_path(PlannerInfo *root,
-                                                                               
                                   RelOptInfo *rel,
-                                                                               
                                   Path *bitmapqual,
-                                                                               
                                   RelOptInfo *outer_rel,
-                                                                               
                                   bool isAORow);
 extern BitmapTableScanPath *create_bitmap_table_scan_path(PlannerInfo *root,
                                                RelOptInfo *rel,
                                                Path *bitmapqual,

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/src/test/regress/expected/insert.out
----------------------------------------------------------------------
diff --git a/src/test/regress/expected/insert.out 
b/src/test/regress/expected/insert.out
index b29534a..d254596 100644
--- a/src/test/regress/expected/insert.out
+++ b/src/test/regress/expected/insert.out
@@ -88,8 +88,3 @@ NOTICE:  Table doesn't have 'DISTRIBUTED BY' clause -- Using 
column named 'a' as
 HINT:  The 'DISTRIBUTED BY' clause determines the distribution of data. Make 
sure column(s) chosen are the optimal data distribution key to minimize skew.
 INSERT INTO mpp14758 select * from generate_series(1,10);
 ABORT;
-SELECT * from gp_fastsequence where objid not in (select oid from pg_class);
- objid | objmod | last_sequence | contentid 
--------+--------+---------------+-----------
-(0 rows)
-

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/src/test/regress/expected/insert_optimizer.out
----------------------------------------------------------------------
diff --git a/src/test/regress/expected/insert_optimizer.out 
b/src/test/regress/expected/insert_optimizer.out
index 48bd94a..58121e5 100755
--- a/src/test/regress/expected/insert_optimizer.out
+++ b/src/test/regress/expected/insert_optimizer.out
@@ -90,8 +90,3 @@ NOTICE:  Table doesn't have 'DISTRIBUTED BY' clause -- Using 
column named 'a' as
 HINT:  The 'DISTRIBUTED BY' clause determines the distribution of data. Make 
sure column(s) chosen are the optimal data distribution key to minimize skew.
 INSERT INTO mpp14758 select * from generate_series(1,10);
 ABORT;
-SELECT * from gp_fastsequence where objid not in (select oid from pg_class);
- objid | objmod | last_sequence | contentid 
--------+--------+---------------+-----------
-(0 rows)
-

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/src/test/regress/sql/insert.sql
----------------------------------------------------------------------
diff --git a/src/test/regress/sql/insert.sql b/src/test/regress/sql/insert.sql
index 97d627e..7e40a20 100644
--- a/src/test/regress/sql/insert.sql
+++ b/src/test/regress/sql/insert.sql
@@ -71,4 +71,3 @@ BEGIN;
 CREATE TABLE mpp14758(a int) with (appendonly=true);
 INSERT INTO mpp14758 select * from generate_series(1,10);
 ABORT;
-SELECT * from gp_fastsequence where objid not in (select oid from pg_class);

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/src/test/unit/mock/mock_info.json
----------------------------------------------------------------------
diff --git a/src/test/unit/mock/mock_info.json 
b/src/test/unit/mock/mock_info.json
index 92669e6..90275e0 100644
--- a/src/test/unit/mock/mock_info.json
+++ b/src/test/unit/mock/mock_info.json
@@ -2833,28 +2833,6 @@
             "parameter": [], 
             "return": "Oid"
         }, 
-        "GetFastSequences": {
-            "filename": "src/backend/catalog/gp_fastsequence.c", 
-            "header filename": "src/include/catalog/gp_fastsequence.h", 
-            "parameter": [
-                "objid", 
-                "objmod", 
-                "minSequence", 
-                "numSequences", 
-                "tid"
-            ], 
-            "return": "int64"
-        }, 
-        "GetFastSequencesByTid": {
-            "filename": "src/backend/catalog/gp_fastsequence.c", 
-            "header filename": "src/include/catalog/gp_fastsequence.h", 
-            "parameter": [
-                "tid", 
-                "minSequence", 
-                "numSequences"
-            ], 
-            "return": "int64"
-        }, 
         "GetFreeIndexPage": {
             "filename": "src/backend/storage/freespace/freespace.c", 
             "header filename": "src/include/storage/freespace.h", 
@@ -3504,17 +3482,6 @@
             ], 
             "return": "void"
         }, 
-        "InsertFastSequenceEntry": {
-            "filename": "src/backend/catalog/gp_fastsequence.c", 
-            "header filename": "src/include/catalog/gp_fastsequence.h", 
-            "parameter": [
-                "objid", 
-                "objmod", 
-                "lastSequence", 
-                "tid"
-            ], 
-            "return": "void"
-        }, 
         "IsAbortInProgress": {
             "filename": "src/backend/access/transam/xact.c", 
             "header filename": "src/include/access/xact.h", 
@@ -7053,14 +7020,6 @@
             ], 
             "return": "void"
         }, 
-        "RemoveFastSequenceEntry": {
-            "filename": "src/backend/catalog/gp_fastsequence.c", 
-            "header filename": "src/include/catalog/gp_fastsequence.h", 
-            "parameter": [
-                "objid"
-            ], 
-            "return": "void"
-        }, 
         "RemoveRelationAttributeEncoding": {
             "filename": "src/backend/catalog/pg_attribute_encoding.c", 
             "header filename": "src/include/catalog/pg_attribute_encoding.h", 

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/ae38cfbd/tools/bin/gppylib/data/2.0.json
----------------------------------------------------------------------
diff --git a/tools/bin/gppylib/data/2.0.json b/tools/bin/gppylib/data/2.0.json
index bd69df2..af8bede 100644
--- a/tools/bin/gppylib/data/2.0.json
+++ b/tools/bin/gppylib/data/2.0.json
@@ -280,99 +280,6 @@
          "text" : "with (camelcase=GpPolicy, oid=false, relid=5002, 
content=MASTER_ONLY)"
       }
    },
-   "gp_fastsequence" : {
-      "CamelCaseRelationId" : "FastSequenceRelationId",
-      "UppercaseReltypeOid" : "GP_FASTSEQUENCE_RELTYPE_OID",
-      "colh" : {
-         "contentid" : "int4",
-         "last_sequence" : "bigint",
-         "objid" : "Oid",
-         "objmod" : "bigint"
-      },
-      "cols" : [
-         {
-            "colname" : "objid",
-            "ctype" : "Oid",
-            "precomment" : "\n**TK_BLANK_LINE**",
-            "sqltype" : "oid"
-         },
-         {
-            "colname" : "objmod",
-            "ctype" : "bigint",
-            "sqltype" : "bigint"
-         },
-         {
-            "colname" : "last_sequence",
-            "ctype" : "bigint",
-            "sqltype" : "bigint"
-         },
-         {
-            "colname" : "contentid",
-            "ctype" : "int4",
-            "sqltype" : "integer"
-         }
-      ],
-      "filename" : "gp_fastsequence.h",
-      "fk_list" : [
-         {
-            "fkcols" : [
-               "objid"
-            ],
-            "pkcols" : [
-               "oid"
-            ],
-            "pktable" : "pg_class",
-            "type" : "scalar"
-         }
-      ],
-      "foreign_keys" : [
-         [
-            [
-               "objid"
-            ],
-            "pg_class",
-            [
-               "oid"
-            ]
-         ]
-      ],
-      "indexes" : [
-         {
-            "CamelCaseIndexId" : "FastSequenceObjidObjmodContentidIndexId",
-            "cols" : [
-               [
-                  "objid",
-                  "oid_ops"
-               ],
-               [
-                  "objmod",
-                  "bigint_ops"
-               ],
-               [
-                  "contentid",
-                  "int4_ops"
-               ]
-            ],
-            "indexid" : "6067",
-            "unique" : "1",
-            "with" : {
-               "indexid" : "6067"
-            }
-         }
-      ],
-      "relid_comment_tag" : "/* relation id: 5043 - gp_fastsequence */\n",
-      "tabdef_text" : "\n   CREATE TABLE gp_fastsequence\n   with 
(camelcase=FastSequence, oid=false, relid=5043, reltype_oid=6453, 
content=SEGMENT_LOCAL)\n   (\n   objid   oid,\n   objmod  bigint,\n   
last_sequence bigint\n   contentid\tinteger\n   )",
-      "with" : {
-         "bootstrap" : 0,
-         "camelcase" : "FastSequence",
-         "content" : "SEGMENT_LOCAL",
-         "oid" : "",
-         "relid" : "5043",
-         "reltype_oid" : "6453",
-         "shared" : 0,
-         "text" : "with (camelcase=FastSequence, oid=false, relid=5043, 
reltype_oid=6453, content=SEGMENT_LOCAL)"
-      }
-   },
    "gp_fault_strategy" : {
       "CamelCaseRelationId" : "GpFaultStrategyRelationId",
       "UppercaseReltypeOid" : "GP_FAULT_STRATEGY_RELTYPE_OID",


Reply via email to