This is an automated email from the ASF dual-hosted git repository.

chenjinbao1989 pushed a commit to branch cbdb-postgres-merge
in repository https://gitbox.apache.org/repos/asf/cloudberry.git


The following commit(s) were added to refs/heads/cbdb-postgres-merge by this 
push:
     new a8f45426ece Add copy function and equal function for Bitmapset
a8f45426ece is described below

commit a8f45426ece44c1e49891d35d014f85ee4732102
Author: Jinbao Chen <[email protected]>
AuthorDate: Tue Oct 28 23:31:48 2025 +0800

    Add copy function and equal function for Bitmapset
---
 src/backend/nodes/copyfuncs.c         | 9 +++++++++
 src/backend/nodes/equalfuncs.c        | 9 +++++++++
 src/test/regress/expected/numeric.out | 3 ---
 src/test/regress/sql/numeric.sql      | 3 ---
 4 files changed, 18 insertions(+), 6 deletions(-)

diff --git a/src/backend/nodes/copyfuncs.c b/src/backend/nodes/copyfuncs.c
index a978e5d36db..51b07da90e1 100644
--- a/src/backend/nodes/copyfuncs.c
+++ b/src/backend/nodes/copyfuncs.c
@@ -6434,6 +6434,12 @@ _copyRTEPermissionInfo(const RTEPermissionInfo *from)
        return newnode;
 }
 
+static Bitmapset *
+_copyBitmapset(const Bitmapset *from)
+{
+       return bms_copy(from);
+}
+
 /*
  * copyObjectImpl -- implementation of copyObject(); see nodes/nodes.h
  *
@@ -7626,6 +7632,9 @@ copyObjectImpl(const void *from)
                case T_RTEPermissionInfo:
                        retval = _copyRTEPermissionInfo(from);
                        break;
+               case T_Bitmapset:
+                       retval = _copyBitmapset(from);
+                       break;
                default:
                        elog(ERROR, "unrecognized node type: %d", (int) 
nodeTag(from));
                        retval = 0;                     /* keep compiler quiet 
*/
diff --git a/src/backend/nodes/equalfuncs.c b/src/backend/nodes/equalfuncs.c
index 80cf44578c9..dbf23707d7f 100644
--- a/src/backend/nodes/equalfuncs.c
+++ b/src/backend/nodes/equalfuncs.c
@@ -3653,6 +3653,12 @@ _equalRTEPermissionInfo(const RTEPermissionInfo *a, 
const RTEPermissionInfo *b)
        return true;
 }
 
+static bool
+_equalBitmapset(const Bitmapset *a, const Bitmapset *b)
+{
+       return bms_equal(a, b);
+}
+
 /*
  * equal
  *       returns whether two nodes are equal
@@ -4544,6 +4550,9 @@ equal(const void *a, const void *b)
                case T_RTEPermissionInfo:
                        retval = _equalRTEPermissionInfo(a, b);
                        break;
+               case T_Bitmapset:
+                       retval = _equalBitmapset(a, b);
+                       break;
 
                default:
                        elog(ERROR, "unrecognized node type: %d",
diff --git a/src/test/regress/expected/numeric.out 
b/src/test/regress/expected/numeric.out
index a3b3c361a02..f30ac236f52 100644
--- a/src/test/regress/expected/numeric.out
+++ b/src/test/regress/expected/numeric.out
@@ -2854,8 +2854,6 @@ select (-1.0) ^ 1000000000000001;
  -1.0000000000000000
 (1 row)
 
-<<<<<<< HEAD
-=======
 -- integer powers of 10
 select n, 10.0 ^ n as "10^n", (10.0 ^ n) * (10.0 ^ (-n)) = 1 as ok
 from generate_series(-20, 20) n;
@@ -2904,7 +2902,6 @@ from generate_series(-20, 20) n;
   20 |                100000000000000000000.0 | t
 (41 rows)
 
->>>>>>> REL_16_9
 --
 -- Tests for raising to non-integer powers
 --
diff --git a/src/test/regress/sql/numeric.sql b/src/test/regress/sql/numeric.sql
index c91e8861c09..c86395209ab 100644
--- a/src/test/regress/sql/numeric.sql
+++ b/src/test/regress/sql/numeric.sql
@@ -1253,13 +1253,10 @@ select (-1.0) ^ 2147483647;
 select (-1.0) ^ 2147483648;
 select (-1.0) ^ 1000000000000000;
 select (-1.0) ^ 1000000000000001;
-<<<<<<< HEAD
-=======
 
 -- integer powers of 10
 select n, 10.0 ^ n as "10^n", (10.0 ^ n) * (10.0 ^ (-n)) = 1 as ok
 from generate_series(-20, 20) n;
->>>>>>> REL_16_9
 
 --
 -- Tests for raising to non-integer powers


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to